diff --git a/common/src/lib.rs b/common/src/lib.rs index 328a3938f..6a35a0926 100644 --- a/common/src/lib.rs +++ b/common/src/lib.rs @@ -30,33 +30,6 @@ pub mod traits; pub mod trading; pub mod types; -// REMOVED prelude module - violates type governance and creates hidden coupling -// All imports must be explicit to maintain clear architectural boundaries - -// CRITICAL: These re-exports are necessary for backward compatibility -// They will be removed in a future refactor once all crates are updated -pub use types::{ - // Core types - Decimal, Price, Volume, Quantity, Symbol, HftTimestamp, AssetId, - // Trading types - OrderId, OrderSide, OrderStatus, OrderType, TimeInForce, - Order, Position, Execution, ExecutionId, - // Event types (moved from trading_engine) - OrderEvent, OrderEventType, - // Market data types - MarketDataEvent, TradeEvent, QuoteEvent, BarEvent, OrderBookEvent, - Level2Update, PriceLevel, ConnectionStatus, ConnectionEvent, - Aggregate, MarketStatus, ErrorEvent, Subscription, - // Error types - CommonTypeError, -}; - -// Re-export trading types from trading module -pub use trading::MarketRegime; - -// Re-export error types from error module -pub use error::{CommonError, ErrorCategory, CommonResult}; - // Test module for database features #[cfg(all(test, feature = "database"))] mod sqlx_test; \ No newline at end of file diff --git a/data/src/lib.rs b/data/src/lib.rs index 85389a32a..d2cf3896f 100644 --- a/data/src/lib.rs +++ b/data/src/lib.rs @@ -147,86 +147,15 @@ mod storage_test; // Tracing macros use tracing::{error, info, warn}; -// Re-export commonly used types for clean API -// === Core Error Handling === -pub use error::{DataError, Result}; - -// === Broker Integration === -// Note: Broker clients moved to trading_engine module in monolithic architecture -pub use brokers::{ - BrokerType, BrokerFactory, - InteractiveBrokersAdapter, IBConfig -}; -pub use trading_engine::trading::data_interface::BrokerError; - -// === Data Providers === -// Databento provider - only available when feature is enabled -#[cfg(feature = "databento")] -pub use crate::providers::databento::{ - DatabentoConfig, DatabentoHistoricalProvider -}; -// Benzinga provider -pub use crate::providers::benzinga::{ - BenzingaConfig, BenzingaHistoricalProvider, NewsEvent -}; -// Provider traits and common types -pub use crate::providers::{ - RealTimeProvider, HistoricalProvider, MarketDataProvider, - ProviderConfig, ProviderFactory, ProviderManager, - MarketStatus, ProviderHealthStatus -}; -// Common event types from providers -pub use crate::providers::common::{ - MarketDataEvent as CommonMarketDataEvent, - TradeEvent as CommonTradeEvent, - QuoteEvent as CommonQuoteEvent, - NewsEvent as CommonNewsEvent, - OrderBookSnapshot, OrderBookUpdate, - ConnectionState -}; - -// === Data Types === -pub use crate::types::{ - TimeRange, MarketDataType -}; -// Re-export from common -pub use common::{ - MarketDataEvent, Subscription, TradeEvent, QuoteEvent, OrderBookEvent, - Aggregate, Level2Update, ConnectionEvent, ErrorEvent, Position -}; - -// === Feature Engineering === -pub use crate::unified_feature_extractor::{ - UnifiedFeatureExtractor, UnifiedFeatureExtractorConfig -}; - -// === Storage and Persistence === -pub use crate::storage::{ - StorageManager, EnhancedDatasetMetadata, StorageStats, ExportFormat -}; - -// === Validation === -pub use crate::validation::{ - DataValidator, ValidationResult, ValidationError -}; - -// === Training Pipeline === -pub use crate::training_pipeline::{ - TrainingDataPipeline, FeatureProcessor, TechnicalIndicatorsCalculator, - MicrostructureAnalyzer, TLOBProcessor, RegimeDetector, - DatasetMetadata, DatasetSchema, FeatureColumn, TargetColumn -}; -// === Utilities === -pub use crate::utils::{ - format_timestamp, calculate_percentage_change, normalize_symbol -}; - // === External Re-exports === // Commonly used external types use tokio::sync::broadcast; // Import configuration and event types that are actually used use config::DataModuleConfig; use trading_engine::types::events::OrderEvent; +use crate::error::Result; +use crate::brokers::{InteractiveBrokersAdapter, IBConfig}; +use common::{MarketDataEvent, Subscription}; // Using direct imports from common crate - NO backward compatibility aliases diff --git a/ml/src/common/mod.rs b/ml/src/common/mod.rs index 5c0a646bb..85e0d2c33 100644 --- a/ml/src/common/mod.rs +++ b/ml/src/common/mod.rs @@ -6,8 +6,8 @@ use std::collections::HashMap; use std::path::PathBuf; use std::time::SystemTime; use uuid::Uuid; -// Import from crate root which re-exports these types -use crate::{Price, Volume, Symbol, Decimal, Quantity}; +// Import from common types with explicit path +use common::types::{Price, Volume, Symbol, Decimal, Quantity}; pub mod config; pub mod metrics; diff --git a/ml/src/lib.rs b/ml/src/lib.rs index 44712e262..1a183ac76 100644 --- a/ml/src/lib.rs +++ b/ml/src/lib.rs @@ -50,8 +50,7 @@ use candle_core::Tensor; use candle_nn::Optimizer; // For Adam optimizer support use candle_core::Var; // For tensor variables -// Use candle's native Module trait instead of defining our own -pub use candle_core::Module; +// Removed pub use candle_core::Module; // Note: Optimizer trait not available in candle_optimisers v0.9 // Files using optimizers may need to be updated or removed @@ -104,7 +103,7 @@ pub type Volume = rust_decimal::Decimal; pub type Quantity = rust_decimal::Decimal; pub type Symbol = String; -pub use rust_decimal::Decimal; +// Removed pub use rust_decimal::Decimal; #[derive(Debug, Clone, thiserror::Error, serde::Serialize, serde::Deserialize)] pub enum CommonTypeError { @@ -194,30 +193,7 @@ pub struct UpdateSummary { /// Common imports for ML module consumers pub mod prelude { - pub use crate::error::*; - - pub use crate::traits::*; - // Export canonical ML types - pub use crate::{InferenceResult, ModelMetadata, ModelType}; - // Export unified ML interface - pub use crate::{ - get_global_registry, Features, Feedback, MLModel, ModelPrediction, ModelRegistry, - }; - // Export performance optimizations - pub use crate::{HFTPerformanceProfile, LatencyOptimizer, ParallelExecutor}; - - // Export model_loader for ML model loading and caching - pub use model_loader::{ - CacheConfig, ModelCacheTrait, ModelLoaderConfig, ModelLoaderFactory, ModelLoaderResult, - ModelLoaderTrait, - }; - pub use model_loader::{ModelMetadata as LoaderModelMetadata, ModelType as LoaderModelType}; - - // Export Module trait for candle-nn types - pub use crate::Module; - - // Export Adam optimizer wrapper - pub use crate::Adam; + // All pub use statements removed per cleanup requirements } use thiserror::Error; @@ -575,20 +551,13 @@ pub mod stress_testing; // Stress testing framework pub mod training_pipeline; // Complete training pipeline system pub mod traits; // Common traits for ML models // Production observability and monitoring // Integration with model_loader crate -// Direct type exports -pub use operations as safe_operations; +// Removed pub use operations as safe_operations; -// Re-export essential types for training -pub use training::{ActivationType, NetworkConfig, TrainingConfig, TrainingPipeline}; +// Removed pub use training::*; -// Re-export safety framework for convenience -pub use safety::{ - get_global_safety_manager, initialize_ml_safety, GradientSafetyConfig, GradientSafetyManager, - GradientStatistics, MLSafetyConfig, MLSafetyError, MLSafetyManager, SafetyResult, SafetyStatus, -}; +// Removed pub use safety::*; -// Re-export core ML types from tgnn module -pub use tgnn::types::{TrainingMetrics, ValidationMetrics}; +// Removed pub use tgnn::types::*; // ========== MISSING TYPES STUBS ========== @@ -1595,32 +1564,13 @@ impl ModelType { // FinancialFeatures, MicrostructureFeatures, RiskFeatures, TrainingResult, // }; -// Re-export feature system (from existing features module) -pub use features::{ - FeatureExtractionConfig, FeatureQualityMetrics, PriceFeatures, TechnicalFeatures, - UnifiedFeatureExtractor, UnifiedFinancialFeatures, VolumeFeatures, -}; +// Removed pub use features::*; -// Re-export examples and demonstrations -pub use examples::{ - run_example, // list_examples, // TEMPORARILY DISABLED: Import issue - DataSource, - ExampleConfig, - ExampleMetrics, - ExampleResult, - ExampleType, -}; +// Removed pub use examples::*; -pub use models_demo::{ - create_benchmark_config, get_available_models, run_model_demonstrations, DemoSummary, - ModelDemoConfig, ModelDemoResults, ModelPerformanceMetrics, -}; +// Removed pub use models_demo::*; -// Re-export inference system (from existing inference module) -pub use inference::{ - ModelConfig, RealInferenceConfig, RealMLInferenceEngine, RealNeuralNetwork, - RealPredictionResult, -}; +// Removed pub use inference::*; #[cfg(test)] mod tests { use super::*; diff --git a/ml/src/validation.rs b/ml/src/validation.rs index 0c2b372da..e1288fccd 100644 --- a/ml/src/validation.rs +++ b/ml/src/validation.rs @@ -1,7 +1,8 @@ //! Comprehensive validation for ML models using unified common types -// Import types from crate root (lib.rs) -use crate::{MLResult, MLError, Price, Volume, Quantity}; +// Import types from appropriate modules +use crate::{MLResult, MLError}; +use common::types::{Price, Volume, Quantity}; use rust_decimal::prelude::{ToPrimitive, FromPrimitive}; use serde::{Deserialize, Serialize}; diff --git a/risk/src/lib.rs b/risk/src/lib.rs index 399273897..9de872150 100644 --- a/risk/src/lib.rs +++ b/risk/src/lib.rs @@ -115,42 +115,6 @@ pub mod compliance; pub mod drawdown_monitor; pub mod safety; -// Re-export key types and functions for convenience -pub use error::{RiskError, RiskResult}; -pub use risk_types::{ - InstrumentId, MarketData, OrderInfo, PnLMetrics, PortfolioId, RiskCheckResult, RiskPosition, - RiskSeverity, RiskViolation, StrategyId, StressScenario, StressTestResult, SymbolRiskConfig, - ViolationType, -}; - -// VaR calculation components -pub use var_calculator::{ - CircuitBreakerCondition, ComprehensiveVaRResult, ExpectedShortfall, HistoricalSimulationVaR, - MonteCarloVaR, ParametricVaR, RealVaREngine, VaRMethodology, -}; - -// Risk engine and position tracking -pub use position_tracker::{ConcentrationLimits, PositionTracker}; -pub use risk_engine::RiskEngine; -// Removed missing types: BrokerAccountService, PortfolioRiskMetrics - -// Stress testing -pub use stress_tester::StressTester; - -// Safety systems -pub use safety::{ - AtomicKillSwitch, EmergencyResponseConfig, EmergencyResponseSystem, HybridPositionLimiter, - KillSwitchConfig, KillSwitchScope, PositionLimiterConfig, SafetyConfig, SafetyCoordinator, -}; - -// Circuit breakers and monitoring -pub use circuit_breaker::{CircuitBreakerConfig, CircuitBreakerState}; -pub use config::{KellyConfig, RiskConfig}; -pub use drawdown_monitor::DrawdownMonitor; -// Removed missing type: CircuitBreaker -// Removed missing type: ComplianceMonitor - -// Re-export canonical types for convenience /// Prelude module for convenient imports pub mod prelude { diff --git a/services/trading_service/src/lib.rs b/services/trading_service/src/lib.rs index d8147a80f..6232595a2 100644 --- a/services/trading_service/src/lib.rs +++ b/services/trading_service/src/lib.rs @@ -89,30 +89,4 @@ pub mod utils; /// Re-exports for convenient access pub mod prelude { - // Re-export shared library functionality - pub use common::error::CommonError; -use common::error::CommonResult; - pub use common::database::{DatabaseConfig, DatabasePool}; - pub use config::*; - pub use ::storage::*; - - // Re-export trading service specific modules - pub use crate::compliance_service::*; - pub use crate::error::*; - pub use crate::event_streaming::*; - pub use crate::latency_recorder::*; - pub use crate::rate_limiter::*; - pub use crate::repositories::*; - - // Re-export shared model_loader functionality - pub use crate::repository_impls::*; - pub use crate::services::*; - pub use crate::state::*; - pub use model_loader::*; - - // Re-export core workspace dependencies - pub use data::*; - pub use ::ml::prelude::*; - pub use ::risk::prelude::*; - pub use trading_engine::prelude::*; } diff --git a/tests/lib.rs b/tests/lib.rs index 45089b193..07fce9eaf 100644 --- a/tests/lib.rs +++ b/tests/lib.rs @@ -8,50 +8,6 @@ #![warn(missing_debug_implementations)] #![warn(rust_2018_idioms)] -// Test dependencies and external crates -// Removed conflicting core::prelude::* import - -// Use re-exports from common crate root instead of specific modules -pub use common::{CommonError, CommonResult, Order, Position, Symbol, Price, Quantity, HftTimestamp, Decimal}; -pub use data; -pub use ml; -pub use risk; -pub use tli; - -// Standard library imports -pub use std::collections::HashMap; -pub use std::sync::{Arc, Mutex}; -pub use std::time::{Duration, Instant}; - -// Async runtime imports -pub use tokio; -pub use tokio::sync::{broadcast, RwLock}; -pub use tokio_test; - -// Testing utilities -pub use criterion::{self, black_box, Criterion}; -pub use proptest::prelude::*; -pub use quickcheck::{self, QuickCheck, TestResult}; - -// Serialization and time -pub use chrono::{DateTime, TimeZone, Utc}; -pub use serde::{Deserialize, Serialize}; - -// Mathematical operations -pub use num::traits::{One, Zero}; - -// Concurrency -pub use arc_swap::ArcSwap; -pub use crossbeam; - -// Async utilities -pub use async_trait::async_trait; -pub use futures::prelude::*; - -// Logging and tracing -pub use tracing::{debug, error, info, trace, warn}; -pub use tracing_subscriber; - // Chaos engineering module pub mod chaos; @@ -345,14 +301,6 @@ pub mod config { // Utility functions moved to utils/ module to avoid conflicts -// Re-export common items for convenience -pub use config::*; // pub use framework::*; - // pub use helpers::*; -pub use mocks::*; -pub use performance_utils::*; -pub use safety::*; -// Re-export utils items individually to avoid naming conflicts -pub use utils::{get_test_config, TestConfig}; // Generate a simple test ID (copied from helpers.rs for lib.rs tests) fn generate_test_id() -> String { diff --git a/tli/src/dashboard/events.rs b/tli/src/dashboard/events.rs index 6d06e7d73..219ba8ef0 100644 --- a/tli/src/dashboard/events.rs +++ b/tli/src/dashboard/events.rs @@ -5,8 +5,8 @@ use crate::dashboard::DashboardType; use serde::{Deserialize, Serialize}; -// Use OrderEvent from common crate - TLI is a pure client -pub use common::types::OrderEvent; +// Use canonical types from common crate - TLI is a pure client +use common::types::{OrderEvent, Order as OrderRequest, OrderSide}; /// Main event type for dashboard communication #[derive(Debug, Clone)] @@ -122,8 +122,7 @@ pub struct ConfigurationEvent { pub changed_by: String, } -// Use canonical Order from common types -use common::types::Order as OrderRequest; +// OrderRequest is now imported at the top // Configuration Update #[derive(Debug, Clone, Serialize, Deserialize)] @@ -165,8 +164,7 @@ pub struct SystemStatusEvent { pub timestamp: i64, } -// OrderSide now imported from canonical source -use common::types::OrderSide; +// OrderSide is now imported at the top // OrderType and OrderStatus now imported from canonical source via common::types diff --git a/tli/src/dashboard/trading.rs b/tli/src/dashboard/trading.rs index 93347d75b..04f99cd6d 100644 --- a/tli/src/dashboard/trading.rs +++ b/tli/src/dashboard/trading.rs @@ -9,15 +9,9 @@ use super::{Dashboard, DashboardEvent}; use crate::dashboard::events::{ - ExecutionEvent, MarketDataDisplayEvent, OrderEvent, PositionEvent, + ExecutionEvent, MarketDataDisplayEvent, PositionEvent, }; -use common::types::Order as OrderRequest; -use common::types::OrderType; -use common::types::OrderSide; -use common::types::Symbol; -use common::types::Quantity; -use common::types::TimeInForce; -use common::types::HftTimestamp; +use common::types::{OrderEvent, Order as OrderRequest, OrderType, OrderSide, Symbol, OrderId, OrderStatus, TimeInForce, Quantity, HftTimestamp}; use anyhow::Result; use crossterm::event::{KeyCode, KeyEvent}; use ratatui::{ @@ -289,14 +283,14 @@ impl Dashboard for TradingDashboard { KeyCode::F(1) => { // Submit order let order_request = OrderRequest { - id: common::OrderId::new(), + id: OrderId::new(), client_order_id: Some(format!("tli-{}", chrono::Utc::now().timestamp())), broker_order_id: None, account_id: None, symbol: Symbol::from(self.selected_symbol.clone()), side: OrderSide::Buy, order_type: OrderType::Market, - status: common::OrderStatus::Pending, + status: OrderStatus::Pending, time_in_force: TimeInForce::Day, quantity: Quantity::from_f64(500.0).unwrap_or(Quantity::ZERO), filled_quantity: Quantity::ZERO, diff --git a/tli/src/lib.rs b/tli/src/lib.rs index 142f75a6d..655f45199 100644 --- a/tli/src/lib.rs +++ b/tli/src/lib.rs @@ -150,92 +150,7 @@ pub mod proto { } } -// Re-export main client components -// pub use ui::{EnhancedTerminalUI, TerminalUI, TliClient, ServiceHealth}; -pub use client::{ - // Backtesting client - BacktestingClient, - BacktestingClientConfig, - // Client infrastructure - ClientFactory, - ClientStats, - ConnectionConfig, - ConnectionManager, - ConnectionStats, - EventStreamConfig, - EventStreamManager, - EventType, - // ML training client - MLTrainingClient, - MLTrainingClientConfig, - MLTrainingStats, - ManagedConnection, - MarketDataConfig, - MonitoringConfig, - OrderContext, - OrderValidationConfig, - ResourceMonitoringEvent, - RiskManagementConfig, - TliClientBuilder, - TliClientSuite, - TliEvent, - // Trading client (handles ALL operations) - TradingClient, - TradingClientConfig, - TrainingJobContext, - TrainingProgressEvent, -}; - -pub use error::{TliError, TliResult}; -// HealthServer removed - TLI is pure client, no server components -// pub use health::{HealthConfig, HealthServer, HealthStatus}; -pub use types::*; /// Common imports for TLI module consumers pub mod prelude { - // Client infrastructure - pub use crate::client::{ - BacktestingClient, BacktestingClientConfig, ClientFactory, ConnectionConfig, - ConnectionManager, EventStreamManager, EventType, TliClientBuilder, TliClientSuite, - TliEvent, TradingClient, TradingClientConfig, - }; - // Error handling - pub use crate::error::*; - // Dashboard and UI components (with aliases to avoid conflicts) - pub use crate::dashboard::{ - Dashboard, DashboardEvent, DashboardType, - ConfigUpdate as DashboardConfigUpdate, // Alias to avoid conflict with proto::config::ConfigUpdate - SystemStatusEvent as DashboardSystemStatusEvent, // Alias to avoid conflict with proto::trading::SystemStatusEvent - PredictionType as DashboardPredictionType, // Alias to avoid conflict with proto::ml::PredictionType - }; - pub use crate::ui::*; - // Type definitions - pub use crate::types::*; - // Protocol definitions (with aliases to avoid conflicts) - // NOTE: TLI is a pure client - no ConfigServiceClient needed - pub use crate::proto::config::{ - CategoriesResponse, ConfigResponse, - ConfigUpdate as ProtoConfigUpdate, // Alias to avoid conflict with dashboard::ConfigUpdate - Empty as ConfigEmpty, // Alias to avoid conflict with proto::ml::Empty - }; - pub use crate::proto::ml::{ - ml_service_client::MlServiceClient, - ml_training_service_client::MlTrainingServiceClient, - PredictionResponse, ModelPerformanceRequest, - PredictionType as ProtoMLPredictionType, // Alias to avoid conflict with dashboard::PredictionType - Empty as MLEmpty, // Alias to avoid conflict with proto::config::Empty - }; - pub use crate::proto::trading::{ - trading_service_client::TradingServiceClient, - backtesting_service_client::BacktestingServiceClient, - GetPositionsRequest, GetPositionsResponse, SubmitOrderRequest, SubmitOrderResponse, - SystemStatusEvent as ProtoSystemStatusEvent, // Alias to avoid conflict with dashboard::SystemStatusEvent - }; - // ML training client - pub use crate::client::{ - MLTrainingClient, MLTrainingClientConfig, MLTrainingStats, ResourceMonitoringEvent, - TrainingJobContext, TrainingProgressEvent, - }; - // UI components (disabled due to compilation issues) - // pub use crate::ui::*; } diff --git a/trading_engine/src/lib.rs b/trading_engine/src/lib.rs index 560bb919c..d1d03e2cb 100644 --- a/trading_engine/src/lib.rs +++ b/trading_engine/src/lib.rs @@ -142,174 +142,6 @@ pub mod tests; #[cfg(feature = "s3-archival")] pub mod storage; -// Re-export common types at crate root for easy access -pub use common::types::{ - Order, Position, Symbol, OrderId, Price, Quantity, Volume, - Decimal, OrderSide, OrderStatus, OrderType, TimeInForce, - MarketTick, BrokerType, TradeEvent, QuoteEvent -}; -pub use common::error::{CommonError, CommonResult}; - -/// Prelude module for convenient imports -pub mod prelude { - //! Core types and utilities for HFT applications - - // Re-export all core types for public use - pub use common::types::{ - Order, Position, Symbol, OrderId, Price, Quantity, Volume, - Decimal, OrderSide, OrderStatus, OrderType, TimeInForce, - MarketTick, BrokerType, TradeEvent, QuoteEvent - }; - pub use common::error::{CommonError, CommonResult}; - - // Re-export timing utilities - pub use crate::timing::{ - calibrate_tsc, get_tsc_reliability, is_tsc_reliable, HardwareTimestamp, HftLatencyTracker, - LatencyMeasurement, LatencyStats, TimingSafetyConfig, TimingSource, - }; - - // Re-export SIMD operations (CPU-dependent) - #[cfg(any(target_arch = "x86_64", target_arch = "aarch64"))] - pub use crate::simd::{ - AdaptivePriceOps, CpuFeatures, SafeSimdDispatcher, SimdConstants, SimdLevel, - SimdMarketDataOps, SimdPerformanceUtils, SimdPriceOps, SimdRiskEngine, Sse2PriceOps, - }; - - // Re-export CPU affinity (Linux-specific) - #[cfg(target_os = "linux")] - pub use crate::affinity::{ - initialize_hft_cpu_optimizations, CpuAffinityManager, HftCoreAssignment, - }; - - // Re-export lock-free structures - pub use crate::lockfree::{ - AtomicCounter, AtomicFlag, AtomicMetrics, HftMessage, LockFreeRingBuffer, MPSCQueue, - MetricsSnapshot, SPSCQueue, SequenceGenerator, SharedMemoryChannel, SharedMemoryStats, - }; - - // Re-export small batch optimization - pub use crate::small_batch_optimizer::{ - OrderRequest, SmallBatchMetrics, SmallBatchProcessor, SmallBatchResult, SmallBatchStats, - MAX_SMALL_BATCH_SIZE, - }; - - // Re-export event processing components - TEMPORARILY COMMENTED OUT - /* - pub use crate::events::event_types::{ - AlertSeverity, EventMetadata, RiskAlertType, SystemEventType, - }; - pub use crate::events::{ - BufferManager, BufferStats, EventLevel, EventMetrics, EventMetricsSnapshot, EventProcessor, - EventProcessorConfig, EventRingBuffer, EventSequence, HealthMonitor, HealthStatus, - PostgresWriter, TradingEvent, WriterConfig, - }; - */ - - // Re-export trading operations - pub use crate::trading_operations::{ - record_execution_latency, record_order_execution, record_order_latency, - record_order_rejection, record_order_submission, update_open_orders_count, update_pnl, - ArbitrageOpportunity, ExecutionResult, LiquidityFlag, - TradingOperations, TradingOrder, TradingStats, - }; - - // Re-export persistence layer - TEMPORARILY COMMENTED OUT - /* - pub use crate::persistence::{ - ClickHouseClient, ClickHouseConfig, ClickHouseError, InfluxClient, InfluxConfig, - InfluxError, PersistenceConfig, PersistenceError, PersistenceManager, PersistenceResult, - PostgresConfig, PostgresError, PostgresPool, RedisConfig, RedisError, RedisPool, - }; - - // Re-export specific persistence functions from submodules - pub use crate::persistence::backup::create_full_backup; - pub use crate::persistence::health::{ComponentHealth, SystemStatus}; - pub use crate::persistence::influxdb::{DataPoint, FieldValue}; - pub use crate::persistence::migrations::run_pending_migrations; - - // Re-export repository pattern abstractions - pub use crate::repositories::compliance_repository::{ - ComplianceRepository, ComplianceRepositoryError, ComplianceRepositoryResult, - }; - pub use crate::repositories::event_repository::{ - EventBatch, EventQuery, EventRepository, EventRepositoryError, EventRepositoryResult, - }; - pub use crate::repositories::migration_repository::{ - MigrationRepository, MigrationRepositoryError, MigrationRepositoryResult, - }; - pub use crate::repositories::{HealthCheck, RepositoryFactory}; - */ - - // ELIMINATED DUPLICATE: trading_operations_optimized exports - using working version only - - // ELIMINATED DUPLICATES: Removed broken SIMD and benchmark module exports - // These were dependent on the deleted trading_operations_optimized.rs - - // Re-export trading engine components - pub use crate::trading::{ - AccountManager, OrderManager, PositionManager, TradingEngine, - }; - - // Re-export broker connectivity (commented out due to compilation issues) - /* - pub use crate::brokers::{ - BrokerConnector, FixMessage, ICMarketsClient, InteractiveBrokersClient, OrderRouter, - }; - */ - - // Re-export unified feature extraction system - // TEMPORARILY COMMENTED OUT: features module dependency issues - /* - pub use crate::features::{ - AnalystRating, - // Base feature components - BaseMarketFeatures, - BenzingaNewsData, - BenzingaNewsFeatures, - DQNFeatures, - // Data provider structures - DatabentoBuData, - DatabentoBuFeatures, - FeatureError, - FeatureResult, - LiquidFeatures, - MAMBAFeatures, - NewsArticle, - PPOFeatures, - SentimentScore, - TFTFeatures, - // Model-specific feature sets - TLOBFeatures, - UnifiedConfig, - UnifiedFeatureExtractor, - UnusualOptionsActivity, - }; - */ - - // Re-export configuration management from config crate - pub use config::{ - structures::{MarketDataConfig, PerformanceConfig, SecurityConfig}, - ConfigManager, MLConfig, TradingConfig, - }; - // Re-export performance benchmarks - pub use crate::comprehensive_performance_benchmarks::{ - run_comprehensive_performance_validation, run_quick_performance_validation, - BenchmarkConfig, BenchmarkResult, ComprehensivePerformanceBenchmarks, - }; - - // Re-export performance test runner - pub use crate::test_runner::{ - run_comprehensive_validation, run_quick_validation, run_stress_validation, - PerformanceTestRunner, TestRunnerConfig, TestSuiteResults, - }; - - // Re-export storage systems (S3 archival) - #[cfg(feature = "s3-archival")] - pub use crate::storage::{ - ArchivalDataType, ArchivalMetadata, ArchivalStats, S3Archival, S3ArchivalConfig, - S3ArchivalService, - }; -} /// Performance utilities and constants pub mod performance { //! Performance-related constants and utilities diff --git a/trading_engine/src/types/prelude.rs b/trading_engine/src/types/prelude.rs deleted file mode 100644 index 69e173b0b..000000000 --- a/trading_engine/src/types/prelude.rs +++ /dev/null @@ -1,24 +0,0 @@ -//! Trading Engine Types Prelude -//! -//! This module re-exports commonly used types from both the trading engine -//! and the common crate for convenient access. - -// Re-export from common crate (canonical types) - only the ones actually used -pub use common::types::Order; -pub use common::error::CommonError; -pub use common::types::OrderType; -pub use common::types::Currency; -pub use common::types::MarketTick; -pub use common::trading::BookAction; -pub use common::types::ConfigVersion; -pub use common::error::ErrorCategory; - -// Re-export trading engine specific types -pub use crate::types::{ - metrics::*, - type_registry::*, - errors::*, - financial::*, - validation::*, - TradingEngineError, -}; \ No newline at end of file