nautechsystems/nautilus_trader
A Rust-based trading engine that lets the same code run in backtests and in live markets
NautilusTrader is an open-source engine for building automated trading systems across stocks, crypto, forex and other assets. Its core is written in Rust for speed and safety, while Python handles strategy logic and configuration as a control layer. The same code runs identically whether you're testing against historical data or trading live with real money.
What it does
- Normally, trading strategies get sketched out in Python during research, then rebuilt separately for production — this project tries to eliminate that duplicate work
- A Rust core provides a deterministic event-driven runtime, meaning it reacts to events like price ticks or order fills in a consistent, repeatable order, while Python serves as the control plane for strategy logic and configuration
- It connects to many exchanges and data providers through modular adapters, including Binance, Bybit, OKX, Coinbase, Kraken, dYdX, Interactive Brokers, and Databento
- It uses the mimalloc memory allocator and tokio for asynchronous networking to boost speed, and supports advanced order types like IOC/FOK/GTC time-in-force rules and contingency orders like OCO/OTO
- The engine is described as fast enough to train AI trading agents using reinforcement learning (RL) or evolution strategies (ES)
Why it matters
For quant traders and individual developers, it reduces the risk and hassle of rewriting a backtested strategy from scratch before deploying it live. Combining Rust's performance with Python's flexibility offers a concrete reference design for anyone building a low-latency automated trading system.
Terms in this repo
- event-driven architecture · a design where the system reacts to events (like a trade or a price update) as they happen, in defined steps
- deterministic · given the same input, the system always produces the same order of operations and results
- adapter · a module that translates each exchange's unique API into one common interface
- PyO3 · a binding tool that lets Rust code be called directly from Python
- backtesting · simulating how a trading strategy would have performed using historical market data
Repository description (English)
Production-grade Rust-native trading engine with deterministic event-driven architecture
Open on GitHubTrending repos
- vorssaint/vorssaint-utilsOne free menu bar app replaces a dozen paid Mac utilities
- Alishahryar1/free-claude-codeA local proxy that lets coding AI agents run on 49 free or cheap model providers instead of one paid service
- freestylefly/awesome-gpt-image-2A library of 532 reverse-engineered prompts that turn GPT-Image2 into a predictable image-making tool
- block/buzzAn open-source workspace where humans and AI agents chat, code, and review in the same rooms
- NousResearch/hermes-agentNous Research's Hermes is an AI agent that gets smarter the more you use it
- virgiliojr94/book-to-skillA tool that turns technical book PDFs into on-demand reference skills for AI coding agents
- VoltAgent/awesome-agent-skillsA single hub collecting over 1000 'how-to' manuals that make AI coding assistants act like experts
- anthropics/claude-plugins-communityA shared shelf where anyone's Claude add-ons get listed for install