Module coinbase

Source
Expand description

Coinbase exchange implementation Coinbase exchange integration for the rusty-ems system.

This module provides comprehensive integration with the Coinbase Advanced Trading API, including WebSocket trading, REST API client, and zero-allocation optimizations.

§Key Components

  • WebSocket Trading: Real-time order management and market data streaming
  • REST Client: HTTP-based API interactions for orders and account data
  • Unified Client: Combined interface for both WebSocket and REST operations
  • Zero-Allocation: High-performance, memory-efficient data structures
  • Models: Data structures for Coinbase API responses and requests

§Authentication

All clients support Coinbase Advanced Trading API authentication using API keys, secrets, and passphrase-based signing.

§Performance Optimizations

The module includes several performance optimizations:

  • Zero-copy parsing for market data
  • SmallString usage for reduced allocations
  • SIMD-optimized JSON parsing via simd-json
  • Lock-free data structures where applicable

Re-exports§

pub use rest_client::CoinbaseOrderRequest;
pub use rest_client::CoinbaseRestClient;
pub use unified_client::CoinbaseProtocol;
pub use unified_client::CoinbaseUnifiedClient;
pub use unified_client::UnifiedClientConfig;
pub use websocket_trading::CoinbaseWebsocketTrading as CoinbaseWebSocketTrader;

Modules§

models
Data models for Coinbase Advanced Trading API responses.
rest_client
Coinbase Advanced Trade REST API Client
unified_client
Unified Coinbase Trading Client
websocket_trading
Coinbase WebSocket Trading Implementation
zero_alloc_coinbase
Zero-allocation message processing for Coinbase WebSocket