What it does
NautilusTrader is an open-source, Rust-based trading engine with Python interfaces for historical simulation and trading-system development. Developers define market data, venues and strategies, then analyze simulated results. The same core supports live adapters, with separate setup and execution considerations.
NautilusTrader can run a strategy against historical quotes, trades, bars or order-book data within one event-driven engine. It is intended for developers who want control over the simulation, including venue balances, fees, data loading and strategy behavior. The project uses the GNU Lesser General Public License version 3.
Build a reproducible test
The low-level BacktestEngine route starts with an engine configuration. Add a venue, instrument, strategy and historical data, then call run() to produce results and performance metrics. The higher-level BacktestNode route uses configuration objects and a data catalog, including chunked loading for larger datasets. Venue fee models must be set explicitly, even for a zero-fee baseline.
Match the venue's order-book setting to the supplied data. Bars cannot recreate market depth or the order of prices within each bar. In a depth-based venue, quotes and bars do not update the matching book, so an unsuitable data choice can leave simulated orders unfilled. Even recorded order-book data cannot show how a hypothetical order would have changed the market.
Match the documentation to the installed version
The current installation guide distinguishes stable 1.x from the 2.x release candidate used by the latest documentation. Stable 1.x cannot run the latest examples unchanged. The project advises against using release candidates for live trading with real capital. Check the selected version's Python and operating-system requirements before installation.
The open-source engine can be installed without a hosted-service account. Live adapters require the relevant venue setup, and external market data or brokerage services may have their own costs. The product site lists a Pro waitlist and a Cloud offering in development, so those should not be treated as generally available hosted access.
Strengths
- Supports historical data from bars through detailed order-book records
- Provides direct engine control and configuration-based catalog runs
- Shares core components between simulation and live trading adapters
Watch out for
- Requires development work and careful matching of data with venue settings
- Latest documentation examples differ from the stable 1.x API
- Release candidates are not recommended by the project for live capital
Best for
- Developers building event-driven quantitative research systems
- Trading teams that need explicit simulation and execution models
Sources
- NautilusTrader open-source and commercial offerings (Oct 27, 2026)
- NautilusTrader official engine repository (Oct 27, 2026)
- NautilusTrader GNU LGPL version 3 license (Oct 27, 2026)
- NautilusTrader installation and version compatibility (Oct 27, 2026)
- NautilusTrader backtesting architecture and results (Oct 27, 2026)
- NautilusTrader backtest APIs and configured runs (Oct 27, 2026)
- NautilusTrader backtest data and venue matching (Oct 27, 2026)
