NautilusTrader 1.175.0 Beta
Released on 16th July 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
OrderBook
into platform - Integrated core Rust
OrderBookDelta
data type - Added core Rust
HttpClient
based onhyper
, thanks @twitu - Added core Rust
WebSocketClient
based ontokio-tungstenite
, thanks @twitu - Added core Rust
SocketClient
based ontokio
TcpStream
, thanks @twitu - Added
quote_quantity
parameter to determine if order quantity is denominated in quote currency - Added
trigger_instrument_id
parameter to trigger emulated orders from alternative instrument prices - Added
use_random_ids
toadd_venue(...)
method, controls whether venue order, position and trade IDs will be random UUID4s (no change to current behaviour) - Added
ExecEngineConfig.filter_unclaimed_external_orders
options, if unclaimed order events with anEXTERNAL
strategy ID should be filtered/dropped - Changed
BinanceHttpClient
to 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
pandas
to v2 - Removed
OrderBookSnapshot
(redundant as can be represented as an initial CLEAR followed by deltas) - Removed
OrderBookData
(redundant) - Renamed
Actor.handle_order_book_delta
tohandle_order_book_deltas
(to more clearly reflect theOrderBookDeltas
data type) - Renamed
Actor.on_order_book_delta
toon_order_book_deltas
(to more clearly reflect theOrderBookDeltas
data type) - Renamed
inverse_as_quote
touse_quote_for_inverse
(ambiguous name, only applicable for notional calcs on inverse instruments) - Changed
Data
contract (custom data), see docs - Renamed core
LogMessage
toLogEvent
to more clearly distinguish between themessage
field and the event struct itself (aligns with vector language) - Renamed core
LogEvent.timestamp_ns
toLogEvent.timestamp
(affects field name for JSON format) - Renamed core
LogEvent.msg
toLogEvent.message
(affects field name for JSON format)
Fixes
- Updated
BinanceAccountType
enum members and associated docs - Fixed
BinanceCommonExecutionClient
iteration ofOrderList
orders - Fixed heartbeats for
BinanceWebSocketClient
(new Rust client now responds withpong
frames) - Fixed Binance adapter typing for
orderId
,fromId
,startTime
andendTime
(all are ints), thanks for reporting @davidsblom - Fixed
Currency
equality to be based on thecode
field (avoiding equality issues over FFI), thanks for reporting @Otlk - Fixed
BinanceInstrumentProvider
parsing of initial and maintenance margin values