NautilusTrader Python API¶
NautilusTrader is an open-source, production-grade, Rust-native engine for multi-asset, multi-venue trading systems.
The system spans research, deterministic simulation, and live execution within a single event-driven architecture, with Python serving as the control plane for strategy logic, configuration, and orchestration.
This separation provides the performance and safety of a compiled trading engine with the flexibility of Python for system composition and strategy development. Trading systems can also be written entirely in Rust for mission-critical workloads.
The same execution semantics and deterministic time model operate in both research and live systems. Strategies deploy from research to production with no code changes, providing research-to-live parity and reducing the divergence that typically introduces deployment risk.
NautilusTrader is asset-class-agnostic. Any venue with a REST API or WebSocket feed can be integrated through modular adapters. Current integrations span crypto exchanges (CEX and DEX), traditional markets (FX, equities, futures, options), and betting exchanges.
This reference covers every public module, class, method, and function in the Python framework.
Modules¶
Module |
Description |
|---|---|
Account management and balance tracking |
|
Exchange and broker integrations |
|
Performance analysis and statistics |
|
Historical backtesting engine |
|
In-memory data and state caching |
|
Shared components, clocks, loggers, and factories |
|
Configuration objects for system components |
|
Core primitives, datetime utilities, and UUID types |
|
Data engine, clients, and aggregation |
|
Execution engine, clients, and algorithms |
|
Technical analysis indicators |
|
Live trading engine and execution |
|
Domain model: instruments, orders, events, and data |
|
Data persistence and catalog |
|
Portfolio management |
|
Risk engine and management |
|
Message serialization |
|
System kernel and process management |
|
Trading strategies and controllers |