$ show nautechsystems/nautilus_trader
Nautilus Trader is a production-grade, Rust-native trading engine designed for multi-asset, multi-venue trading systems. It features a deterministic event-driven architecture that enables research-to-live parity, allowing strategies to be developed, backtested, and deployed live with consistent behavior. The system comprises a core Rust engine with Python bindings for strategy development, modular adapters for over 20 exchanges (including Binance, Coinbase, Kraken, and DeFi platforms), and infrastructure for backtesting, live trading, risk management, and analysis. Key components include a CLI tool for system management, a LiveNode for production trading, and a BacktestNode for historical strategy evaluation. The architecture emphasizes modularity, with separate crates for model, core, execution, trading, risk, analysis, persistence, serialization, and exchange-specific adapters, all communicating via an actor-based message bus.
The LLM identified 4 files worth highlighting for reuse:
Provides a deterministic simulation testing seam (DST) that replaces the Tokio runtime with a simulator for predictable asynchronous testing. This isolated component enables reliable testing of time-dependent and concurrent code by controlling task scheduling, demonstrating non-obvious skill in async Rust testing patterns.
Implements a self-contained actor model for concurrent message processing using lightweight actors and a thread-safe message bus. The component is decoupled from specific business logic, allowing extraction into other projects requiring safe concurrency, and showcases craftsmanship in handling actor lifecycle, supervision, and distributed messaging patterns.
Defines FFI-safe types and conversion functions for Rust/Python interoperability with strict panic safety at the boundary. This isolated module prevents Rust panics from crossing into Python, ensuring stable interop, and exemplifies non-obvious skill in managing FFI risks through careful type design and error handling.
Provides a reusable fuzz testing harness integrated with cargo-fuzz for property-based testing of cryptographic and execution logic. The component isolates fuzz target setup, corpus management, and crash reproduction, demonstrating skill in security-focused testing practices that can be applied to other Rust projects requiring robust input validation.