Repolode
nautechsystems

nautechsystems/nautilus_trader

Rust-native, event-driven trading engine with Python control plane for backtesting and live trading across crypto, FX, equities, futures, options and betting venues.

Stars
30,340
Forks
4,069
Open issues
123
Last commit
23 hours ago

What is it?

NautilusTrader is an open-source trading engine whose core is written in Rust, with Python used for strategy logic, configuration and orchestration. It runs research, deterministic backtesting and live execution inside one event-driven architecture, so the same strategy code can be used in both backtests and live trading. Live runs still involve venue, network and timing behavior that simulations may not reproduce.

The project is asset-class agnostic. Modular adapters connect venues that offer a REST API or WebSocket feed, covering crypto exchanges (CEX and DEX), FX, equities, futures, options, prediction markets and betting exchanges. Backtests can run multiple venues, instruments and strategies at once using quote, trade, bar, order book and custom data at nanosecond resolution.

The engine supports a range of order types and time-in-force options, contingency orders such as OCO and OTO, and optional Redis-backed state persistence for the cache and message bus. Python wheels are available on PyPI for Linux, macOS and Windows, and Rust crates can be used directly.

Key features

  • 01Rust core with Python bindings for strategy development
  • 02Same strategy code runs in backtest and live trading
  • 03Backtesting across multiple venues and instruments at nanosecond resolution
  • 04Modular adapters for crypto, FX, equities, futures, options and betting venues
  • 05Advanced order types, time-in-force options and contingency orders like OCO and OTO
  • 06Optional Redis backend for cache and message bus persistence

Use cases

  • Backtesting a multi-venue or cross-exchange strategy before going live
  • Running market-making or arbitrage strategies across several crypto exchanges
  • Building a quant trading system in Python with a Rust execution core
  • Trading on traditional brokers such as Interactive Brokers through a unified API

Quick start

  1. 1

    Install prebuilt wheels from the docs (no Rust toolchain needed)

  2. 2

    Read the docs and follow the quick start guide

Things to know

  • Licensed under LGPL-3.0, a weak copyleft license that may carry obligations for derivative works.
  • Live execution can behave differently from backtests due to venue, transport, timing, and reconciliation effects.
  • The v1 branch receives only critical security backports during the v2 transition, so migration may be needed.
  • Some integrations are still in beta or building, and not all listed venues are stable.

Topics

FAQ

What is nautilus_trader?
Rust-native, event-driven trading engine with Python control plane for backtesting and live trading across crypto, FX, equities, futures, options and betting venues. NautilusTrader is an open-source trading engine whose core is written in Rust, with Python used for strategy logic, configuration and orchestration. It runs research, deterministic backtesting and live execution inside one event-driven architecture, so the same strategy code can be used in both backtests and live trading. Live runs still involve venue, network and timing behavior that simulations may not reproduce.
Is nautilus_trader free to use? What license does it have?
nautilus_trader is open source under the LGPL-3.0 license. Check the license terms before using it in commercial products.
Is nautilus_trader still maintained?
Actively maintained. The last commit to nautilus_trader was on Oct 19, 2026.
What can I use nautilus_trader for?
Backtesting a multi-venue or cross-exchange strategy before going live Running market-making or arbitrage strategies across several crypto exchanges Building a quant trading system in Python with a Rust execution core Trading on traditional brokers such as Interactive Brokers through a unified API
How do I install nautilus_trader?
Install prebuilt wheels from the docs (no Rust toolchain needed) Read the docs and follow the quick start guide
Where can I get nautilus_trader?
The source code and installation instructions are on GitHub: https://github.com/nautechsystems/nautilus_trader

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects