#![allow(missing_docs)] // Internal service implementation details // Trading service domain lints: generated protobuf code and complex service logic #![allow(clippy::mixed_attributes_style)] // Generated protobuf code uses mixed attributes #![allow(clippy::should_implement_trait)] // Custom from_str methods for event types #![allow(clippy::type_complexity)] // Complex types in async service handlers #![allow(clippy::if_same_then_else)] // Intentional identical branches for fallback logic #![allow(clippy::manual_clamp)] // Explicit min/max preferred in service code #![allow(clippy::too_many_arguments)] // Service constructors need many parameters #![allow(clippy::needless_range_loop)] // Index-based loops for matrix operations #![allow(clippy::unnecessary_fallible_conversions)] // Explicit conversion for type safety //! Trading Service - Standalone HFT Trading System //! //! This service contains ALL business logic for the Foxhunt HFT system: //! - Complete trading operations with integrated risk management //! - ML model integration and predictions //! - Real-time market data processing //! - PostgreSQL-based configuration management with hot-reload //! - Event streaming for TLI clients //! - System monitoring and health checks //! //! The service exposes gRPC APIs for all functionality and maintains //! state using PostgreSQL for configuration and in-memory structures //! for high-frequency operations. #![deny(clippy::unwrap_used, clippy::expect_used)] /// Generated protobuf types and gRPC services pub mod proto { /// Trading service protobuf definitions pub mod trading { tonic::include_proto!("trading"); } /// Risk management protobuf definitions pub mod risk { tonic::include_proto!("risk"); } /// ML service protobuf definitions pub mod ml { tonic::include_proto!("ml"); } /// Configuration service protobuf definitions pub mod config { tonic::include_proto!("config"); } /// Monitoring service protobuf definitions pub mod monitoring { tonic::include_proto!("monitoring"); } /// ML Training Service client definitions (for retrain forwarding) pub mod ml_training { tonic::include_proto!("ml_training"); } } /// Authentication interceptor with mTLS, JWT, and API key support pub mod auth_interceptor; /// TLS configuration for Trading Service with mutual TLS pub mod tls_config; /// Real-time event streaming system pub mod event_streaming; /// Event persistence for compliance and audit trail pub mod event_persistence; /// Error types and utilities pub mod error; /// Kill switch integration for regulatory compliance pub mod kill_switch_integration; /// SOX and MiFID II compliance audit trail service pub mod compliance_service; /// Advanced rate limiting with per-user, per-IP, and global limits pub mod rate_limiter; /// Repository trait definitions for clean architecture pub mod repositories; /// Postgre`SQL` repository implementations pub mod repository_impls; /// High-precision latency recording with HDR histogram pub mod latency_recorder; /// Service implementations for gRPC endpoints pub mod services; /// Performance soak test for sub-50μs latency validation pub mod soak_test; /// Service state management and business logic pub mod state; /// Utility functions and helpers pub mod utils; /// Prometheus metrics for ML model monitoring pub mod ml_metrics; /// Comprehensive Prometheus metrics for ML trading operations pub mod metrics; /// Prometheus metrics server for trading operations pub mod metrics_server; /// Streaming infrastructure and `HTTP`/2 optimizations pub mod streaming; /// Core trading engine components (exposed for testing) #[doc(hidden)] pub mod core; /// Test utilities for configurable test data #[cfg(test)] pub mod test_utils; /// Test market data generator for E2E testing (mock data) pub mod test_market_data_generator; /// DBN-based market data generator for E2E testing (real data) pub mod dbn_market_data_generator; /// Bridge adapter: wraps `ModelInferenceAdapter` into `MLModel` for ensemble use pub mod adapter_bridge; /// Ensemble coordinator for ML model aggregation pub mod ensemble_coordinator; /// Ensemble-specific Prometheus metrics for production observability pub mod ensemble_metrics; /// Ensemble risk manager for ML production trading pub mod ensemble_risk_manager; /// Ensemble audit logger for compliance and traceability pub mod ensemble_audit_logger; /// Ensemble rollback automation for failure recovery pub mod rollback_automation; /// Paper trading executor for prediction consumption pub mod paper_trading_executor; /// Trading pipeline message types and stage trait pub mod pipeline; /// System state observability snapshot for Prometheus/Grafana pub mod observability; /// Hot-swap automation for trained model deployment pub mod hot_swap_automation; /// A/B testing pipeline for automated model deployment decisions pub mod ab_testing_pipeline; /// ML performance metrics tracking and analysis pub mod ml_performance_metrics; /// Background prediction generation loop (60s interval) pub mod prediction_generation_loop; /// Portfolio allocation module for capital distribution across assets pub mod allocation; /// Asset selection module for choosing instruments from universe pub mod assets; /// Feature extraction for ML model input (26 features from OHLCV) /// Health check endpoints for Kubernetes probes pub mod health; /// P&L attribution: decomposes realized trade P&L into per-model contributions pub mod attribution; /// Autonomous feedback loop: weight/gate optimization with kill switch pub mod feedback_loop; /// QuestDB-backed metrics provider for the feedback loop pub mod questdb_metrics; // Re-export for tests pub use ensemble_coordinator::EnsembleCoordinator; pub use paper_trading_executor::PaperTradingExecutor; // Re-export paper trading types for testing pub use paper_trading_executor::{Action, Order, SignalSource, TradingSignal};