Commit Graph

2 Commits

Author SHA1 Message Date
JosueNina 0854ab82da Default option filter now includes weeklies to prevent empty chains (#9162)
* Return weekly contracts if no standard contracts exist

* Fix unit and regression tests

* Centralize default expiration type flags

* Add ExcludeWeeklys() method

* Mark IncludeWeeklys() as obsolete since weeklies are now default
2025-12-31 10:11:46 -03:00
Ryan Crowley b27e9e67dd ProcessSplitSymbols crashes during live/paper trading warmup with InvalidOperationException #9029 (#9030)
API Tests / build (push) Has been cancelled
Benchmarks / build (push) Has been cancelled
Build & Test Lean / build (push) Has been cancelled
Regression Tests / build (push) Has been cancelled
Report Generator Tests / build (push) Has been cancelled
Research Regression Tests / build (push) Has been cancelled
Syntax Tests / build (push) Has been cancelled
Python Virtual Environments / build (push) Has been cancelled
* Fix ProcessSplitSymbols crash during live mode warmup

Fixes InvalidOperationException when CancelOpenOrders is called during warmup in live/paper trading mode.

When historical splits are replayed during live mode warmup, ProcessSplitSymbols attempts to cancel open orders for option contracts, but CancelOpenOrders throws an exception during warmup.

The fix adds an early return when algorithm.LiveMode && algorithm.IsWarmingUp. This is safe because in live/paper trading, current positions already reflect historical splits.

Includes unit tests validating the fix.

* Some improvements and more tests

- Ignore splits during warmup for backtesting and live trading. Adding a
  regression algorithm reproducing issue

* Minor fix

---------

Co-authored-by: Martin Molinero <martin.molinero1@gmail.com>
2025-10-13 13:21:09 -03:00