[
  {
    "name": "hold_until_payment", "initial_shares": "1", "initial_cash": "0", "previous_close": "100", "fee_rate": "0",
    "days": [
      {"date": "2026-01-05", "open": "98", "close": "98", "dividend": "2", "cash_available": "2026-01-07"},
      {"date": "2026-01-06", "open": "107.80", "close": "107.80"},
      {"date": "2026-01-07", "open": "107.80", "close": "107.80"}
    ]
  },
  {
    "name": "sell_on_ex_date", "initial_shares": "1", "initial_cash": "0", "previous_close": "100", "fee_rate": "0",
    "days": [
      {"date": "2026-01-05", "open": "98", "close": "108", "dividend": "2", "cash_available": "2026-01-07", "action": "sell_all"},
      {"date": "2026-01-07", "open": "108", "close": "108"}
    ]
  },
  {
    "name": "buy_on_ex_date", "initial_shares": "0", "initial_cash": "98", "previous_close": "100", "fee_rate": "0",
    "days": [
      {"date": "2026-01-05", "open": "98", "close": "98", "dividend": "2", "cash_available": "2026-01-07", "action": "buy_cash"},
      {"date": "2026-01-07", "open": "98", "close": "98"}
    ]
  },
  {
    "name": "wait_for_available_cash", "initial_shares": "1", "initial_cash": "0", "previous_close": "100", "fee_rate": "0",
    "days": [
      {"date": "2026-01-05", "open": "98", "close": "98", "dividend": "2", "cash_available": "2026-01-07", "action": "sell_all"},
      {"date": "2026-01-06", "open": "100", "close": "100", "action": "buy_notional", "notional": "100"},
      {"date": "2026-01-07", "open": "100", "close": "100", "action": "buy_notional", "notional": "100"}
    ]
  },
  {
    "name": "fund_purchase_fee", "initial_shares": "0", "initial_cash": "100", "previous_close": "100", "fee_rate": "0.01",
    "days": [{"date": "2026-01-05", "open": "100", "close": "100", "action": "buy_cash"}]
  },
  {
    "name": "split_after_entitlement", "initial_shares": "1", "initial_cash": "0", "previous_close": "100", "fee_rate": "0",
    "days": [
      {"date": "2026-01-05", "open": "98", "close": "98", "dividend": "2", "cash_available": "2026-01-07"},
      {"date": "2026-01-06", "open": "49", "close": "49", "split": "2"},
      {"date": "2026-01-07", "open": "49", "close": "49"}
    ]
  },
  {
    "name": "split_on_ex_date", "initial_shares": "1", "initial_cash": "0", "previous_close": "100", "fee_rate": "0",
    "days": [{"date": "2026-01-05", "open": "49", "close": "49", "split": "2", "dividend": "1", "cash_available": "2026-01-07"}]
  }
]
