NautilusTrader 1.189.0 Beta
NautilusTrader 1.189.0 Beta
Released on 15th March 2024 (UTC).
Enhancements
- Implemented Binance order book snapshot rebuilds on websocket reconnect (see integration guide)
- Added additional validations for
OrderMatchingEngine
(will now raise aRuntimeError
when a price or size precision forOrderFilled
does not match the instruments precisions) - Added
LoggingConfig.use_pyo3
option for pyo3 based logging initialization (worse performance but allows visibility into logs originating from Rust) - Added
exchange
field toFuturesContract
,FuturesSpread
,OptionsContract
andOptionsSpread
(optional)
Breaking Changes
- Changed Arrow schema adding
exchange
field forFuturesContract
,FuturesSpread
,OptionsContract
andOptionsSpread
Fixes
- Fixed
MessageBus
handling of subscriptions after a topic has been published on (was previously dropping messages for these late subscribers) - Fixed
MessageBus
handling of subscriptions under certain edge cases (subscriptions list could be resized on iteration causing aRuntimeError
) - Fixed
Throttler
handling of sending messages after messages have been dropped, thanks @davidsblom - Fixed
OrderBookDelta.to_pyo3_list
using zero precision from clear delta - Fixed
DataTransformer.pyo3_order_book_deltas_to_record_batch_bytes
using zero precision from clear delta - Fixed
OrderBookMbo
andOrderBookMbp
integrity check when crossed book - Fixed
OrderBookMbp
error when attempting to add to a L1_MBP book type (now raisesRuntimeError
rather than panicking) - Fixed Interactive Brokers connection error logging (#1524), thanks @benjaminsingleton
- Fixed
SimulationModuleConfig
location and missing re-export fromconfig
subpackage - Fixed logging
StdoutWriter
from also writing error logs (writers were duplicating error logs) - Fixed
BinanceWebSocketClient
to new specification which requires responding to pings with a pong containing the pings payload - Fixed Binance Futures
AccountBalance
calculations based on wallet and available balance - Fixed
ExecAlgorithm
circular import issue for installed wheels (importing fromexecution.algorithm
was a circular import)