NautilusTrader 1.181.0 Beta
Released on 2nd December (UTC).
This release adds support for Python 3.12.
Enhancements
- Rewrote Interactive Brokers integration documentation, many thanks @benjaminsingleton
- Added Interactive Brokers adapter support for crypto instruments with cash quantity, thanks @benjaminsingleton
- Added
HistoricInteractiveBrokerClient, thanks @benjaminsingleton and @limx0 - Added
DataEngineConfig.time_bars_interval_type(determines the type of interval used for time aggregationleft-openorright-open) - Added
LoggingConfig.log_colorsto optionally use ANSI codes to produce colored logs (default true to retain current behavior) - Added
QuoteTickDataWrangler.process_bar_dataoptions foroffset_interval_msandtimestamp_is_close - Added identifier generators in Rust, thanks @filipmacek
- Added
OrderFactoryin Rust, thanks @filipmacek - Added
WilderMovingAveragein Rust, thanks @ayush-sb - Added
HullMovingAveragein Rust, thanks @ayush-sb - Added all common identifier generators in Rust, thanks @filipmacek
- Added generic SQL database support with
sqlxin Rust, thanks @filipmacek
Breaking Changes
- Consolidated all
datasubmodules into onedatamodule (reduce binary wheel size) - Moved
OrderBookfrommodel.orderbook.booktomodel.book(subpackage only had this single module) - Moved
Currencyfrommodel.currencytomodel.objects(consolidating modules to reduce binary wheel size) - Moved
MessageBusfromcommon.msgbustocommon.component(consolidating modules to reduce binary wheel size) - Moved
MsgSpecSerializerfromserialization.msgpack.serializertoserialization.serializer - Moved
CacheConfigsnapshot_orders,snapshot_positions,snapshot_positions_intervaltoNautilusKernelConfig(logical applicability) - Renamed
MsgPackSerializertoMsgSpecSeralizer(now handles both JSON and MsgPack formats)
Fixes
- Fixed missing
trader_idinPositiondictionary representation, thanks @filipmacek - Fixed conversion of fixed precision integers to floats (should be dividing to avoid rounding errors), thanks for reporting @filipmacek
- Fixed daily timestamp parsing for Interactive Brokers, thanks @benjaminsingleton
- Fixed live reconciliation trade processing for partially filled then canceled orders
- Fixed
RiskEnginecumulative notional risk check forCurrencyPairSELL orders on multi-currency cash accounts