Skip to content

NautilusTrader 1.214.0 Beta

Compare
Choose a tag to compare
@github-actions github-actions released this 28 Mar 13:10

NautilusTrader 1.214.0 Beta

Released on 28th March 2025 (UTC).

Enhancements

  • Added Coinbase International Exchange initial integration adapter
  • Added time_in_force parameter for Strategy.close_position(...)
  • Added time_in_force parameter for Strategy.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) to add_mark_price(self, MarkPriceUpdate mark_price)

Internal Improvements

  • Improved WebSocketClient and SocketClient 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 for BacktestEngine in Rust (#2457), thanks @filipmacek
  • Ported add_instrument for BacktestEngine in Rust (#2469), thanks @filipmacek
  • Upgraded redis crate to v0.29.2

Fixes

  • Fixed race condition on multiple reconnect attempts for WebSocketClient and SocketClient
  • Fixed position state snapshot ts_snapshot value, which was always ts_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

  • Improved custom data documentation (#2470), thanks @faysou

Deprecations

None