rusty_ems/exchanges/
mod.rs

1pub use crate::execution_engine::Exchange;
2
3/// Binance exchange implementation
4pub mod binance;
5/// Binance REST API client
6pub mod binance_rest;
7/// Binance WebSocket market data client
8pub mod binance_websocket;
9/// Binance WebSocket trading client
10pub mod binance_websocket_trading;
11/// Common WebSocket utilities and helpers
12pub mod websocket_common;
13pub mod websocket_unified;
14
15// Re-export individual clients for direct high-performance usage
16pub use binance_rest::BinanceRestClient;
17pub use binance_websocket::BinanceWebSocketClient;
18pub use binance_websocket_trading::BinanceWebSocketTrader;
19pub use bithumb_rest_client::BithumbRestClient;
20pub use bybit_rest::BybitRestClient;
21pub use upbit_rest_client::UpbitRestClient;
22pub mod bithumb;
23pub mod bithumb_config;
24pub mod bithumb_errors;
25pub mod bithumb_rest_client;
26pub mod bithumb_websocket_trading;
27/// Bybit exchange implementation
28pub mod bybit;
29pub mod bybit_rest;
30pub mod bybit_websocket_trading;
31/// Coinbase exchange implementation
32pub mod coinbase;
33/// Test exchange for development and testing
34pub mod test;
35/// Optimized test exchange for performance testing
36pub mod test_optimized;
37/// Upbit exchange implementation
38pub mod upbit;
39pub mod upbit_rest_client;
40pub mod upbit_websocket_trading;
41
42// Use exchange implementations from rusty-oms
43pub use rusty_oms::exchanges::BinanceExchange;
44pub use rusty_oms::exchanges::BithumbExchange;
45// Note: BybitExchange has been replaced with BybitRestClient
46// Use: rusty_ems::exchanges::BybitRestClient
47pub use rusty_oms::exchanges::UpbitExchange;
48
49// Use local Coinbase implementation (not available in rusty-oms)
50
51// Re-export Bithumb WebSocket trader
52pub use bithumb_websocket_trading::BithumbWebSocketTrader;
53
54// Re-export Bybit WebSocket trader
55pub use bybit_websocket_trading::BybitWebSocketTrader;
56
57// Re-export Upbit WebSocket trader
58pub use upbit_websocket_trading::UpbitWebSocketTrader;
59
60// Re-export Coinbase WebSocket trader
61pub use coinbase::CoinbaseWebSocketTrader;
62
63pub use test::TestExchange;
64pub use test_optimized::TestExchange as TestExchangeOptimized;
65
66// Re-export unified WebSocket components
67pub use websocket_unified::{
68    AuthenticationMechanism, ConnectionHealth, ConnectionStateManager, HealthConfig,
69    RateLimitConfig, ReconnectionConfig, ReconnectionManager, RequestId, UnifiedRateLimiter,
70    WebSocketConnectionState, WebSocketTaskHandles, WebSocketTrader,
71};