Crate nautilus_common

source ·
Expand description

NautilusTrader is an open-source, high-performance, production-grade algorithmic trading platform, providing quantitative traders with the ability to backtest portfolios of automated trading strategies on historical data with an event-driven engine, and also deploy those same strategies live, with no code changes.

§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 main nautilus_trader Python package, or as part of a Rust only build.

  • ffi: Enables the C foreign function interface (FFI) from cbindgen
  • python: Enables Python bindings from pyo3
  • stubs: Enables type stubs for use in testing scenarios

Modules§

  • A common in-memory Cache for market and execution related data.
  • Real-time and static test Clock implementations.
  • Enumerations for common components.
  • Factories for constructing domain objects such as orders.
  • C foreign function interface (FFI) from cbindgen.
  • Provides generation of identifiers such as ClientOrderId and PositionId.
  • Common message handlers.
  • The logging framework for Nautilus systems.
  • A common in-memory MessageBus for loosely coupled message passing patterns.
  • Python bindings from pyo3.
  • The centralized Tokio runtime for a running Nautilus system.
  • Common test related helper functions.
  • Real-time and test timers for use with Clock implementations.
  • Exchange rate calculations between currencies.