Expand description
Core foundational types and utilities for PoseiTrader.
The core crate is designed to be lightweight, efficient, and to provide zero-cost abstractions wherever possible. It supplies the essential building blocks used across the PoseiTrader ecosystem, including:
- Time handling and atomic clock functionality.
- UUID generation and management.
- Mathematical functions and interpolation utilities.
- Correctness validation functions.
- Serialization traits and helpers.
- Cross-platform environment utilities.
- Abstractions over common collections.
§Platform
PoseiTrader 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.
PoseiTrader’s design, architecture, and implementation philosophy prioritizes software correctness and safety at the highest level, with the aim of supporting mission-critical, trading system backtesting and live deployment workloads.
§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 posei_trader Python package, or as part of a Rust only build.
Re-exports§
pub use crate::nanos::UnixNanos;
pub use crate::time::AtomicTime;
pub use crate::uuid::UUID4;
Modules§
- collections
- Abstraction layer over common hash-based containers.
- consts
- Core constants.
- correctness
- Functions for correctness checks similar to the design by contract philosophy.
- datetime
- Common data and time functions.
- env
- Cross-platform environment variable utilities.
- ffi
- C foreign function interface (FFI) from cbindgen.
- math
- Mathematical functions and interpolation utilities.
- message
- Common message types.
- nanos
- A
UnixNanos
type for working with timestamps in nanoseconds since the UNIX epoch. - parsing
- Core parsing functions.
- paths
- Utility functions for resolving project and workspace directory paths.
- python
- Python bindings and interoperability helpers built on top of
PyO3
. - serialization
- Common serialization traits and functions.
- time
- The core
AtomicTime
for real-time and static clocks. - uuid
- A
UUID4
Universally Unique Identifier (UUID) version 4 (RFC 4122).