Expand description
Live system node for NautilusTrader.
The nautilus-live crate provides high-level abstractions and infrastructure for running live trading
systems, including data streaming, execution management, and system lifecycle handling.
It builds on top of the system kernel to provide simplified interfaces for live deployment:
LiveNodeHigh-level abstraction for live system nodes.LiveNodeConfigConfiguration for live node deployment.AsyncRunnerfor managing system real-time data flow.
§NautilusTrader
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, providing research-to-live semantic parity.
§Feature Flags
This crate provides feature flags to control source code inclusion during compilation, depending on the intended use case, i.e. whether to provide Python bindings for the nautilus_trader Python package, or as part of a Rust only build.
node(default): Enables the full live node, builder, config, and execution manager.plugin(default): Keeps compatibility stubs for plug-in config validation.ffi: Enables the C foreign function interface (FFI) from cbindgen.streaming: Enablespersistencedependency for streaming configuration (requiresnode).python: Enables Python bindings from PyO3 (auto-enablesnodeandstreaming).defi: Enables DeFi (Decentralized Finance) support.extension-module: Builds the crate as a Python extension module.
§Lean adapter builds
Adapters and other consumers that only need the async event emitter, runner, and
ExecutionClientCore re-export can opt out of the full kernel by disabling the
node feature:
nautilus-live = { workspace = true, default-features = false }With node disabled, this crate exposes only emitter and runner, and skips
the transitive dependencies on nautilus-system, nautilus-trading,
nautilus-portfolio, nautilus-risk, and nautilus-data.
§Plug-in support
The open-source live crate does not host dynamic plug-ins directly.
nautilus-plugin is the public guest ABI crate, while host-side loading,
vtables, bridge adapters, and server policy belong to the host-side plug-in
integration.
A non-empty LiveNodeConfig.plugins list is rejected unless an application
provides that host-side integration.
nautilus-live = { workspace = true, default-features = false, features = ["node"] }With plugin disabled, the compatibility plugin module is removed. A
non-empty LiveNodeConfig.plugins list is rejected under this configuration
as well.
Re-exports§
pub use execution::emitter;pub use execution::emitter::ExecutionEventEmitter;pub use execution::manager;pub use node::plugin;pub use node::builder;pub use node::config;
Modules§
- execution
- node
- Live trading node built on a single-threaded tokio event loop.
- python
- Python bindings from PyO3.
- runner
- Async event loop runner for live and sandbox trading nodes.
Structs§
- Execution
Client Core - Base implementation for execution clients providing identity and connection state.
- Order
Event Factory - Factory for generating order and account events.