v1.230.0
VectifyAI/PageIndexv1.230.0Jun 29, 2026by github-actions[bot]
AI Summary
This beta release introduces V2 Python visualization, new data source integrations, and enhanced security fixes. It includes breaking changes to the event store and Throttler API, alongside fixes for trading strategy and order management issues.
Key Highlights
- V2 Python visualization (tearsheet) support
- New data integrations (Betfair cricket, Bybit, OKX)
- Security fix for unbounded HTTP response buffering
- Breaking changes to event store format
Breaking Changes
- Changed `event_store` format; beta v1.227-v1.229 stores must be regenerated
- Changed `Throttler` rate limit fields to non-zero accessors instead of public fields
- Renamed Bybit data config `instrument_status_poll_secs` to `instrument_poll_interval_secs`
New Features
- V2 Python visualization (tearsheet) with compounding option
- Spread quote vega-pricing fallback controls
- Unix SIGTERM handling for v2 `LiveNode`
- `with_clock_factory` for Rust live and sandbox nodes
- Betfair cricket match stream data subscriptions
- Bybit instrument subscription support
- OKX region support (global, EEA, US)
- Security fix for unbounded HTTP response buffering
- Removed direct `bincode` use from `event_store`
Full Release Notes
# NautilusTrader 1.230.0 Beta Released on 29th June 2026 (UTC). ### Enhancements - Added v2 Python visualization (tearsheet) support with a `visualization` extra - Added non-compounding returns option for monthly and yearly tearsheet charts via `compounding` - Added spread quote vega-pricing fallback controls for missing greeks (#4328), thanks @faysou - Added Unix SIGTERM handling to the v2 `LiveNode` shutdown path (Rust) - Added `with_clock_factory` for Rust live and sandbox nodes (#4331), thanks @folknor - Added Betfair cricket match stream data subscriptions (Rust and Python) - Added Bybit instrument subscription support via instrument-info polling (#4305), thanks @dxwil - Added OKX region support for global, EEA, and US endpoints (#4318), thanks @dxwil ### Breaking Changes - Changed `event_store` format; beta v1.227-v1.229 stores must be regenerated (#4330), thanks @folknor - Changed `Throttler` rate limit fields to non-zero accessors instead of public fields (Rust) - Renamed Bybit data config `instrument_status_poll_secs` to `instrument_poll_interval_secs` ### Security - Fixed unbounded HTTP response buffering that could exhaust memory (#4332), thanks @AlaeddineMessadi - Removed direct `bincode` use from `event_store` on-disk envelopes (#4330), thanks @folknor ### Fixes - Fixed `LiveTimer` tasks leaking after clock drop or component teardown (#4322), thanks @filipmacek - Fixed Strategy order-list cache visibility for live handlers (Rust) - Fixed Rust strategy `oms_type` registration for custom HEDGING position IDs (#4327), thanks for reporting @dxwil - Fixed duplicate realized PnLs in post-run analysis (#4344), thanks for reporting @a1zb2yc3z - Fixed `RateOfChange` period window and log calculation (#4326), thanks @Martingale42 - Fixed `VerticalHorizontalFilter` and `OnBalanceVolume` period windows (#4333), thanks @Martingale42 - Fixed Architect AX execution reconciliation for open positions and fills - Fixed Architect AX to deny unsupported order types and times in force locally - Fixed Architect AX to report unfilled IOC/FOK orders as canceled and flag post-only rejections - Fixed Architect AX market data for null ticker prices and order book snapshot requests - Fixed Databento adapter historical request edge cases and live state cleanup (Rust and Python) - Fixed Binance Futures `TRADING_HALT` contract status handling (Rust and Python) (#4320), thanks @YeeTsai - Fixed Bybit submit rejection classification and batch amend/cancel request builders (Rust) - Fixed Databento OPRA option expirations stamped at midnight UTC (#4321), thanks for reporting @pjlegato - Fixed Hyperliquid fill report decoding for new venue fill directions (#4325), thanks for reporting @magnified103 - Fixed Interactive Brokers stock contract resolution for non-USD and cross-listed symbols (#4337), thanks @dfjmax - Fixed Interactive Brokers crypto quote-quantity SELL order sizing (#4309), thanks @bebop23 - Fixed Lighter stop-market and market-if-touched order modification rejected for a missing price - Fixed Polymarket reconciliation producing out-of-range fill prices - Fixed Polymarket RTDS duplicate snapshot replay and incremental batching (#4319), thanks @graceyangfan ### Internal Improvements - Expanded API facade surface coverage for Cache, Clock, Order, and Portfolio reads (Rust) - Hardened plugin ABI surface to reject manifest ABI mismatches (Rust) - Hardened CI release provenance checks with provenance refetch and transient 404 retries - Improved default Rust builds to avoid abandoned `proc-macro-error2` (#4315), thanks for reporting @folknor - Standardized data subscription logging with a single canonical confirmation and reduced adapter log noise (Rust) - Optimized `OrderMatchingEngine` post-match actions to avoid cloning resting orders (Rust) - Optimized `OrderMatchingEngine` no-match GTD and trailing-order paths (Rust) - Optimized Databento adapter decode and loader paths (Rust) - Optimized `Throttler` hot paths and added Criterion benches (Rust) - Upgraded Cython to v3.2.6 ### Documentation Updates - Added a Lighter Rust quickstart and get-started guide - Standardized the `request_bars` callback pattern for live bar warmup (#4311), thanks @dfjmax - Refined Databento dataset configuration docs for schema limits and symbology inference - Refined event sourcing marker sidecar docs to match the shipped markers module - Refined Polymarket integration guide for Rust config fields and order behavior <!-- release-checksums:start --> ## Artifact checksums SHA256 checksums are attached as `SHA256SUMS`, per-asset `.sha256` files, and `dist-manifest.json`. | Artifact | SHA256 | | --- | --- | | [nautilus_trader-1.230.0-cp312-cp312-macosx_15_0_arm64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp312-cp312-macosx_15_0_arm64.whl) | 033f6207d1c52095d64a7644f43b90cab939c2038044db70a4165f2acef3d079 | | [nautilus_trader-1.230.0-cp312-cp312-manylinux_2_35_aarch64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp312-cp312-manylinux_2_35_aarch64.whl) | de69df04918ad52095dca2e462f2e1e7755a53e74df13f35de9631ef71513beb | | [nautilus_trader-1.230.0-cp312-cp312-manylinux_2_35_x86_64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp312-cp312-manylinux_2_35_x86_64.whl) | 8f4ff2e8af10e93ed643496eb62999b00558085f0e0bff17fc76e08809ba91b9 | | [nautilus_trader-1.230.0-cp312-cp312-win_amd64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp312-cp312-win_amd64.whl) | 9420b151e92a504841b7fc768ba937dc7f3bffe387096215f39b83c6fcda27e8 | | [nautilus_trader-1.230.0-cp313-cp313-macosx_15_0_arm64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp313-cp313-macosx_15_0_arm64.whl) | af8a83f7cabb91460dcf5b966259eab1f4edee7f5bba965119e70c06a876e997 | | [nautilus_trader-1.230.0-cp313-cp313-manylinux_2_35_aarch64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp313-cp313-manylinux_2_35_aarch64.whl) | 8143907c667fda91bb6466c02ff2ec9f6389aa2fcc35fb0843e75a2ab4e4bfa8 | | [nautilus_trader-1.230.0-cp313-cp313-manylinux_2_35_x86_64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp313-cp313-manylinux_2_35_x86_64.whl) | b5755ae5057b260827404aef23c3051969107d6724dd8c525f17301c9c5b24c0 | | [nautilus_trader-1.230.0-cp313-cp313-win_amd64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp313-cp313-win_amd64.whl) | 8817c46dc34e0aafc606948aacf1dd0fbbe1a31273c8a2f20983cf4ab2ddeef1 | | [nautilus_trader-1.230.0-cp314-cp314-macosx_15_0_arm64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp314-cp314-macosx_15_0_arm64.whl) | 4163833dc3b930d3f8a6f769eb2e7d6422c144d0db748d63ac0e5fdb1f4842b5 | | [nautilus_trader-1.230.0-cp314-cp314-manylinux_2_35_aarch64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp314-cp314-manylinux_2_35_aarch64.whl) | 94b0e9180a4e023f80c3e000f2039976d346387fff40987cb3525e6c11873e3f | | [nautilus_trader-1.230.0-cp314-cp314-manylinux_2_35_x86_64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp314-cp314-manylinux_2_35_x86_64.whl) | 2178899b700050f931d94ab11a23bcbc4d506b200b387827431e7d6eb0cd1e44 | | [nautilus_trader-1.230.0-cp314-cp314-win_amd64.whl](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0-cp314-cp314-win_amd64.whl) | 57f814d13947169538f8cedc881db72e7dc4320626c5a3f37b9ce36ed5527720 | | [nautilus_trader-1.230.0.tar.gz](https://github.com/nautechsystems/nautilus_trader/releases/download/v1.230.0/nautilus_trader-1.230.0.tar.gz) | cc7eaa247e640e46588094fcca44f34f4b6330eeec41e9247068f2500921757d | ### Verify provenance After downloading an artifact, verify its GitHub artifact attestation: ```bash gh attestation verify <artifact> \ --repo nautechsystems/nautilus_trader \ --cert-identity "https://github.com/nautechsystems/nautilus_trader/.github/workflows/build.yml@refs/heads/master" \ --cert-oidc-issuer https://token.actions.githubusercontent.com ``` <!-- release-checksums:end -->