NautilusTrader 1.214.0 Beta
NautilusTrader 1.214.0 Beta
Released on 28th March 2025 (UTC).
Enhancements
- Added Coinbase International Exchange initial integration adapter
- Added
time_in_force
parameter forStrategy.close_position(...)
- Added
time_in_force
parameter forStrategy.close_all_positions(...)
- Added
MarkPriceUpdate
data type - Added
IndexPriceUpdate
data type - Added
Actor.subscribe_mark_prices(...)
- Added
Actor.subscribe_index_prices(...)
- Added
Actor.unsubscribe_mark_prices(...)
- Added
Actor.unsubscribe_index_prices(...)
- Added
Actor.on_mark_price(...)
- Added
Actor.on_index_price(...)
- Added
Cache.mark_price(...)
- Added
Cache.index_price(...)
- Added
Cache.mark_prices(...)
- Added
Cache.index_prices(...)
- Added
Cache.mark_price_count(...)
- Added
Cache.index_price_count(...)
- Added
Cache.has_mark_prices(...)
- Added
Cache.has_index_prices(...)
- Added
UnixNanos.to_rfc3339()
for ISO 8601 (RFC 3339) strings - Added
recv_window_ms
config for Bybit WebSocket order client (#2466), thanks @sunlei - Enhanced
UnixNanos
string parsing to support YYYY-MM-DD date format (interpreted as midnight UTC)
Breaking Changes
- Changed
Cache.add_mark_price(self, InstrumentId instrument_id, Price price)
toadd_mark_price(self, MarkPriceUpdate mark_price)
Internal Improvements
- Improved
WebSocketClient
andSocketClient
design with dedicated writer task and message channel - Completed global message bus design in Rust (#2460), thanks @filipmacek
- Refactored enum dispatch (#2461), thanks @filipmacek
- Refactored data interfaces to messages in Rust
- Refined catalog file operations in Rust (#2454), thanks @faysou
- Refined quote ticks and klines for Bybit (#2465), thanks @davidsblom
- Standardized use of
anyhow::bail
(#2459), thanks @faysou - Ported
add_venue
forBacktestEngine
in Rust (#2457), thanks @filipmacek - Ported
add_instrument
forBacktestEngine
in Rust (#2469), thanks @filipmacek - Upgraded
redis
crate to v0.29.2
Fixes
- Fixed race condition on multiple reconnect attempts for
WebSocketClient
andSocketClient
- Fixed position state snapshot
ts_snapshot
value, which was alwaysts_last
instead of timestamp when the snapshot was taken - Fixed instrument parsing for Tardis, now correctly applies changes and filters by
effective
- Fixed
OrderStatusReport
for conditional orders of dYdX (#2467), thanks @davidsblom - Fixed submitting stop market orders for dYdX (#2471), thanks @davidsblom
- Fixed retrying HTTP calls on
DecodeError
for dYdX (#2472), thanks @davidsblom - Fixed
LIMIT_IF_TOUCHED
order type enum parsing for Bybit - Fixed
MARKET
order type enum parsing for Bybit - Fixed quote ticks for Polymarket to only emit new quote ticks when the top-of-book changes
- Fixed error on cancel order for IB (#2475), thanks @FGU1
Documentation Updates
Deprecations
None