NautilusTrader 1.175.0 Beta
Released on 16th June 2023 (UTC).
The Betfair adapter is broken for this release pending integration with the new Rust order book.
We recommend you do not upgrade to this version if you're using the Betfair adapter.
Enhancements
- Integrated Interactive Brokers adapter v2 into platform, thanks @rsmb7z
- Integrated core Rust
OrderBookinto platform - Integrated core Rust
OrderBookDeltadata type - Added core Rust
HttpClientbased onhyper, thanks @twitu - Added core Rust
WebSocketClientbased ontokio-tungstenite, thanks @twitu - Added core Rust
SocketClientbased ontokioTcpStream, thanks @twitu - Added
quote_quantityparameter to determine if order quantity is denominated in quote currency - Added
trigger_instrument_idparameter to trigger emulated orders from alternative instrument prices - Added
use_random_idstoadd_venue(...)method, controls whether venue order, position and trade IDs will be random UUID4s (no change to current behaviour) - Added
ExecEngineConfig.filter_unclaimed_external_ordersoptions, if unclaimed order events with anEXTERNALstrategy ID should be filtered/dropped - Changed
BinanceHttpClientto use new core HTTP client - Defined public API for data, can now import directly from
nautilus_trader.model.data(denest namespace) - Defined public API for events, can now import directly from
nautilus_trader.model.events(denest namespace)
Breaking changes
- Upgraded
pandasto v2 - Removed
OrderBookSnapshot(redundant as can be represented as an initial CLEAR followed by deltas) - Removed
OrderBookData(redundant) - Renamed
Actor.handle_order_book_deltatohandle_order_book_deltas(to more clearly reflect theOrderBookDeltasdata type) - Renamed
Actor.on_order_book_deltatoon_order_book_deltas(to more clearly reflect theOrderBookDeltasdata type) - Renamed
inverse_as_quotetouse_quote_for_inverse(ambiguous name, only applicable for notional calcs on inverse instruments) - Changed
Datacontract (custom data), see docs - Renamed core
LogMessagetoLogEventto more clearly distinguish between themessagefield and the event struct itself (aligns with vector language) - Renamed core
LogEvent.timestamp_nstoLogEvent.timestamp(affects field name for JSON format) - Renamed core
LogEvent.msgtoLogEvent.message(affects field name for JSON format)
Fixes
- Updated
BinanceAccountTypeenum members and associated docs - Fixed
BinanceCommonExecutionClientiteration ofOrderListorders - Fixed heartbeats for
BinanceWebSocketClient(new Rust client now responds withpongframes) - Fixed Binance adapter typing for
orderId,fromId,startTimeandendTime(all are ints), thanks for reporting @davidsblom - Fixed
Currencyequality to be based on thecodefield (avoiding equality issues over FFI), thanks for reporting @Otlk - Fixed
BinanceInstrumentProviderparsing of initial and maintenance margin values