Expand description
NautilusTrader adapter for the dYdX decentralized derivatives exchange.
The nautilus-dydx crate provides client bindings (HTTP, WebSocket & gRPC), data
models, and helper utilities that wrap the official dYdX v4 API.
§Official Documentation
| Resource | Reference |
|---|---|
| Main documentation | https://docs.dydx.xyz |
| Indexer HTTP API | https://docs.dydx.xyz/api_integration-indexer/indexer_api |
| Indexer WebSocket API | https://docs.dydx.xyz/api_integration-indexer/indexer_websocket |
| Order types | https://docs.dydx.xyz/concepts/trading/orders |
| Permissioned keys | https://docs.dydx.xyz/concepts/trading/authenticators |
| Validator client (gRPC) | https://docs.dydx.xyz/api_integration-clients/validator_client |
§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.
python: Enables Python bindings from PyO3.extension-module: Builds as a Python extension module.
High-precision mode (128-bit value types) is enabled by default.
Re-exports§
pub use crate::common::enums::DydxCandleResolution;pub use crate::common::enums::DydxMarketStatus;pub use crate::common::enums::DydxOrderSide;pub use crate::common::enums::DydxOrderStatus;pub use crate::common::enums::DydxOrderType;pub use crate::common::enums::DydxTickerType;pub use crate::common::enums::DydxTimeInForce;pub use crate::common::models::DydxAccount;pub use crate::data::DydxDataClient;pub use crate::error::DydxError;pub use crate::factories::DydxDataClientFactory;pub use crate::factories::DydxExecutionClientFactory;pub use crate::http::client::DydxHttpClient;pub use crate::http::error::DydxHttpError;pub use crate::http::models::MarketsResponse;pub use crate::http::models::PerpetualMarket;pub use crate::types::DydxOraclePrice;pub use crate::websocket::client::DydxWebSocketClient;pub use crate::websocket::enums::DydxWsChannel;pub use crate::websocket::enums::DydxWsOperation;pub use crate::websocket::error::DydxWsError;
Modules§
- common
- Common functionality shared across the dYdX adapter.
- config
- Configuration structures for the dYdX adapter.
- data
- Live market data client implementation for the dYdX adapter.
- error
- Error handling for the dYdX adapter.
- execution
- Live execution client implementation for the dYdX adapter.
- factories
- Factory functions for creating dYdX clients and components.
- grpc
- gRPC client implementation for the dYdX v4 protocol.
- http
- HTTP/REST client implementation for the dYdX v4 Indexer API.
- proto
- Protocol Buffer definitions for dYdX v4.
- python
- Python bindings from
pyo3. - types
- Custom data types specific to the dYdX adapter.
- websocket
- WebSocket client implementation for the dYdX v4 API.