🐚 NautilusTrader Guide
A step-by-step guide to the design, architecture, and real-world use of a high-performance quantitative trading framework.
19 modules • 5 phases • covering the end-to-end learning path
Last updated: 2026-04-29
⚠️ Disclaimer:
This guide is not official documentation. The content was generated and compiled with AI assistance and may
contain errors, omissions, or outdated technical specifications. Quantitative trading carries substantial risk;
please rigorously backtest and validate all code before deployment in live trading environments.
Any corrections are welcome.
Contact us:
Telegram
·
Discord
🚀 Phase 0: Getting Started
Set up your environment and run your first backtest.
📚 Phase 1: Global Understanding
Build a clear mental model of what NautilusTrader is, why it was designed this way, and how the system fits together.
Why NautilusTrader
Common trading workflow problems, the platform’s main strengths, supported asset classes and venues, and why NautilusTrader uses both Rust and Python.
Phase 1Architecture Overview
Layered architecture, the six core components, runtime environments, end-to-end data and execution flow, and codebase layout.
Phase 1Design Philosophy & Quality Attributes
Domain-driven design, event-driven architecture, fail-fast behavior, crash-only principles, state machines, and the threading model.
🔧 Phase 2: Core Components
Learn what each core component does, how the pieces interact, and why the design matters in practice.
Domain Model — The Language of Trading
Prices, quantities, instruments, orders, positions, accounts, and enums that model the trading domain.
Phase 2MessageBus – Event Routing Layer
Publish/subscribe messaging, commands and events, topic routing, cross-thread communication, and Redis-backed persistence.
Phase 2Data Management and Persistence
Data wrangling, DataCatalog Parquet storage, custom bar aggregation, and serialization formats.
Phase 2Cache System – Shared Runtime State
Stored data types, read and write APIs, Redis integration, and common strategy query patterns.
Phase 2DataEngine – Market Data Ingestion
Market data types, bar aggregation, subscriptions, DataClient design, custom data, and persistence.
Phase 2Execution Engine — Lifecycle of an Order
Order commands, event flow, execution algorithms, conditional orders, and the differences between simulated and live execution.
Phase 2RiskEngine – Pre-Trade Controls
Pre-trade risk checks, position monitoring, risk rules, order throttling, and fail-safe controls.
Phase 2Portfolio – Accounts, Positions, and PnL
Account state, position aggregation, mark-to-market PnL, performance analysis, and reporting.
🚀 Phase 3: Practical Application
Build strategies, run backtests, and move into live trading workflows.
Strategy Development
Strategy base classes, Actor versus Strategy, signal generation, OrderFactory patterns, indicators, and reference implementations.
Phase 3Backtesting Engine and Live Deployment
BacktestEngine, fill and fee models, tearsheets, TradingNode, and the path from backtesting to live deployment.
🔌 Phase 4: Advanced Extensions
Extend the platform with new adapters, custom components, and more advanced live-trading capabilities.
Adapters and Custom Components
Official integrations in the audited snapshot, hexagonal architecture, and extension points such as custom Actors, indicators, and clients.
Phase 4Configuration System
TradingNodeConfig, cache and logging configuration, and the live-trading timeout settings that matter most.
Phase 4Advanced Live Deployment
State reconciliation, retry logic, controllers, and guardrails for live deployment.
Phase 4Accounting & Risk
Margin models, fee schedules, multi-currency portfolios, and strategy-level risk management.
Phase 4Advanced Topics
Serialization with Apache Arrow and MessagePack, kernel initialization, options pricing and Greeks, and tick size schemes.
🧪 Phase 5: Hands-on Labs
From Zero to Backtest
Project structure, market data ingestion from CSV to Parquet, EMA crossover implementation, and backtest execution.
Phase 5Connect to Binance Sandbox
Testnet API keys, environment variables, sandbox connectivity, and paper-trading execution.
Phase 5Custom Indicators & Strategies
Build a Z-score indicator from SMA and standard deviation, then use it in a mean-reversion strategy.
📎 Appendices
Trading Dictionary
A concise dictionary of core quantitative trading concepts and NautilusTrader-specific terminology.
API Reference Cheat Sheet
A quick reference to the functions and object methods you will use most often when building strategies.
Design Patterns Cheat Sheet
Reusable code patterns for common trading workflows.