NautilusTrader 1.199.0 Beta
Released on 19th August 2024 (UTC).
Enhancements
- Added
LiveExecEngineConfig.generate_missing_ordersreconciliation config option to align internal and external position states - Added
LogLevel::TRACE(only available in Rust for debug/development builds) - Added
Actor.subscribe_signal(...)method andData.is_signal(...)class method (#1853), thanks @faysou - Added Binance Futures support for
HEDGEmode (#1846), thanks @DevRoss - Overhauled and refined error modeling and handling in Rust (#1849, #1858), thanks @twitu
- Improved
BinanceExecutionClientposition report requests (can now filter by instrument and includes reporting for flat positions) - Improved
BybitExecutionClientposition report requests (can now filter by instrument and includes reporting for flat positions) - Improved
LiveExecutionEnginereconciliation robustness and recovery when internal positions do not match external positions - Improved
@customdataclassdecorator constructor to allow more positional arguments (#1850), thanks @faysou - Improved
@customdataclassdocumentation (#1854), thanks @faysou - Upgraded
datafusioncrate to v41.0.0 - Upgraded
tokiocrate to v1.39.3 - Upgraded
uvloopto v0.20.0 (upgrades libuv to v1.48.0)
Breaking Changes
- Changed
VolumeWeightedAveragePricecalculation formula to use each bars "typical" price (#1842), thanks @evgenii-prusov - Changed
OptionsContractconstructor parameter ordering and Arrow schema (consistently group option kind and strike price) - Renamed
snapshot_positions_intervaltosnapshot_positions_interval_secs(more explicitly indicates time units) - Moved
snapshot_ordersconfig setting toExecEngineConfig(can now be used for all environment contexts) - Moved
snapshot_positionsconfig setting toExecEngineConfig(can now be used for all environment contexts) - Moved
snapshot_positions_interval_secsconfig setting toExecEngineConfig(can now be used for all environment contexts)
Fixes
- Fixed
Positionexception type on duplicate fill (should beKeyErrorto align with the same error forOrder) - Fixed Bybit position report parsing when position is flat (
BybitPositionSidenow correctly handles the empty string)