From 2fbb19d9dfea0d8ccc3265b99cc89f2dfdedba02 Mon Sep 17 00:00:00 2001 From: jgrusewski Date: Mon, 2 Mar 2026 14:06:40 +0100 Subject: [PATCH] refactor(ml): rename real_data_loader to data_loader MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The real_ prefix was misleading — there is no fake data loader. Mechanical rename across 18 source files, no logic changes. Co-Authored-By: Claude Opus 4.6 --- crates/ml/src/benchmark/dqn_benchmark.rs | 4 ++-- crates/ml/src/benchmark/mamba2_benchmark.rs | 4 ++-- crates/ml/src/benchmark/tft_benchmark.rs | 2 +- crates/ml/src/{real_data_loader.rs => data_loader.rs} | 2 +- crates/ml/src/data_validation/rules.rs | 2 +- crates/ml/src/data_validation/validator.rs | 2 +- crates/ml/src/features/extraction.rs | 2 +- crates/ml/src/lib.rs | 2 +- crates/ml/tests/bayesian_changepoint_test.rs | 4 ++-- crates/ml/tests/common/validation_helpers.rs | 2 +- crates/ml/tests/dqn_training_smoke_test.rs | 2 +- crates/ml/tests/ensemble_real_models_validation_test.rs | 2 +- crates/ml/tests/ppo_validation_real_data_test.rs | 2 +- crates/ml/tests/real_data_helpers.rs | 2 +- crates/ml/tests/validation_real_data_test.rs | 2 +- .../tests/wave_d_225_feature_extraction_test.rs | 2 +- testing/test-common/src/builders/bar_builder.rs | 2 +- testing/test-common/src/fixtures/market_data.rs | 2 +- 18 files changed, 21 insertions(+), 21 deletions(-) rename crates/ml/src/{real_data_loader.rs => data_loader.rs} (99%) diff --git a/crates/ml/src/benchmark/dqn_benchmark.rs b/crates/ml/src/benchmark/dqn_benchmark.rs index b44237fda..2fb33f558 100644 --- a/crates/ml/src/benchmark/dqn_benchmark.rs +++ b/crates/ml/src/benchmark/dqn_benchmark.rs @@ -51,7 +51,7 @@ use tokio::sync::Mutex; use tracing::info; use crate::dqn::{Experience, DQN, DQNConfig}; -use crate::real_data_loader::{FeatureMatrix, RealDataLoader}; +use crate::data_loader::{FeatureMatrix, RealDataLoader}; use super::batch_size_finder::{BatchSizeConfig, BatchSizeFinder}; use super::gpu_hardware::GpuHardwareManager; @@ -319,7 +319,7 @@ impl DqnBenchmarkRunner { /// Convert Indicators to feature vectors fn convert_indicators_to_features( &self, - indicators: &crate::real_data_loader::Indicators, + indicators: &crate::data_loader::Indicators, ) -> Result>> { let mut features = Vec::new(); let len = indicators.rsi.len(); diff --git a/crates/ml/src/benchmark/mamba2_benchmark.rs b/crates/ml/src/benchmark/mamba2_benchmark.rs index cdad3485f..ddf8f5117 100644 --- a/crates/ml/src/benchmark/mamba2_benchmark.rs +++ b/crates/ml/src/benchmark/mamba2_benchmark.rs @@ -61,7 +61,7 @@ use tokio::sync::Mutex; use tracing::info; use crate::mamba::{Mamba2Config, Mamba2SSM, OptimizerType}; -use crate::real_data_loader::RealDataLoader; +use crate::data_loader::RealDataLoader; use super::batch_size_finder::{BatchSizeConfig, BatchSizeFinder}; use super::gpu_hardware::GpuHardwareManager; @@ -326,7 +326,7 @@ impl Mamba2BenchmarkRunner { /// Each sequence is 128 timesteps, predicting the next value. fn create_sequences( &self, - features: &crate::real_data_loader::FeatureMatrix, + features: &crate::data_loader::FeatureMatrix, ) -> Result> { let seq_len = 128; // Sequence length for MAMBA-2 let mut sequences = Vec::new(); diff --git a/crates/ml/src/benchmark/tft_benchmark.rs b/crates/ml/src/benchmark/tft_benchmark.rs index d8f20afe7..f2f1c4126 100644 --- a/crates/ml/src/benchmark/tft_benchmark.rs +++ b/crates/ml/src/benchmark/tft_benchmark.rs @@ -61,7 +61,7 @@ use std::time::Instant; use tokio::sync::Mutex; use tracing::info; -use crate::real_data_loader::{FeatureMatrix, RealDataLoader}; +use crate::data_loader::{FeatureMatrix, RealDataLoader}; use crate::tft::training::{TFTDataLoader, TFTTrainer, TFTTrainingConfig}; use crate::tft::TFTConfig; diff --git a/crates/ml/src/real_data_loader.rs b/crates/ml/src/data_loader.rs similarity index 99% rename from crates/ml/src/real_data_loader.rs rename to crates/ml/src/data_loader.rs index 8f61c7929..480f5face 100644 --- a/crates/ml/src/real_data_loader.rs +++ b/crates/ml/src/data_loader.rs @@ -20,7 +20,7 @@ //! ## Usage //! //! ```rust -//! use ml::real_data_loader::RealDataLoader; +//! use ml::data_loader::RealDataLoader; //! //! let loader = RealDataLoader::new("test_data/real/databento").await?; //! let bars = loader.load_symbol_data("ZN.FUT").await?; diff --git a/crates/ml/src/data_validation/rules.rs b/crates/ml/src/data_validation/rules.rs index 6d68eeb37..2c2980e5e 100644 --- a/crates/ml/src/data_validation/rules.rs +++ b/crates/ml/src/data_validation/rules.rs @@ -4,7 +4,7 @@ //! Each rule implements the `ValidationRule` trait and can be composed //! into a comprehensive validation pipeline. -use crate::real_data_loader::Indicators; +use crate::data_loader::Indicators; use crate::types::OHLCVBar; use anyhow::Result; diff --git a/crates/ml/src/data_validation/validator.rs b/crates/ml/src/data_validation/validator.rs index a1a19ebc2..10f0245a7 100644 --- a/crates/ml/src/data_validation/validator.rs +++ b/crates/ml/src/data_validation/validator.rs @@ -5,7 +5,7 @@ use std::fmt::Write as _; use super::rules::{Severity, ValidationError, ValidationRule}; -use crate::real_data_loader::Indicators; +use crate::data_loader::Indicators; use crate::types::OHLCVBar; use anyhow::Result; use std::sync::atomic::{AtomicUsize, Ordering}; diff --git a/crates/ml/src/features/extraction.rs b/crates/ml/src/features/extraction.rs index 839eab885..b7f0893eb 100644 --- a/crates/ml/src/features/extraction.rs +++ b/crates/ml/src/features/extraction.rs @@ -13,7 +13,7 @@ //! ## Architecture //! ```rust //! use ml::features::extraction::extract_ml_features; -//! use ml::real_data_loader::RealDataLoader; +//! use ml::data_loader::RealDataLoader; //! //! let loader = RealDataLoader::new(); //! let bars = loader.load_ohlcv_bars("ES.FUT").await?; diff --git a/crates/ml/src/lib.rs b/crates/ml/src/lib.rs index b25fb49d0..de9ffb452 100644 --- a/crates/ml/src/lib.rs +++ b/crates/ml/src/lib.rs @@ -933,7 +933,7 @@ 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 -pub mod real_data_loader; +pub mod data_loader; pub mod walk_forward; pub mod data_validation; pub mod model_registry; diff --git a/crates/ml/tests/bayesian_changepoint_test.rs b/crates/ml/tests/bayesian_changepoint_test.rs index 35eb0ce7a..5ba36d7b7 100644 --- a/crates/ml/tests/bayesian_changepoint_test.rs +++ b/crates/ml/tests/bayesian_changepoint_test.rs @@ -481,7 +481,7 @@ fn test_performance_changepoint_detection() { #[tokio::test] async fn test_real_data_zn_futures() { // Test BOCD on real 10-Year Treasury Note futures data - use ml::real_data_loader::RealDataLoader; + use ml::data_loader::RealDataLoader; let loader = RealDataLoader::new(); let file_path = "test_data/real/databento/ml_training/ZN.FUT_ohlcv-1m_2024-01-02.dbn"; @@ -556,7 +556,7 @@ async fn test_real_data_zn_futures() { #[tokio::test] async fn test_real_data_euro_futures() { // Test BOCD on real Euro FX futures data - use ml::real_data_loader::RealDataLoader; + use ml::data_loader::RealDataLoader; let loader = RealDataLoader::new(); let file_path = "test_data/real/databento/6E.FUT_ohlcv-1m_2024-01-02_to_2024-01-31.dbn"; diff --git a/crates/ml/tests/common/validation_helpers.rs b/crates/ml/tests/common/validation_helpers.rs index 0f11d90b6..1cfc45a30 100644 --- a/crates/ml/tests/common/validation_helpers.rs +++ b/crates/ml/tests/common/validation_helpers.rs @@ -25,7 +25,7 @@ use ml::data_validation::rules::{ CompletenessRule, ContinuityRule, IndicatorRule, IntegrityRule, TimestampRule, }; use ml::data_validation::validator::{DataValidator, ValidationResult}; -use ml::real_data_loader::Indicators; +use ml::data_loader::Indicators; use ml::types::OHLCVBar; // ============================================================================ diff --git a/crates/ml/tests/dqn_training_smoke_test.rs b/crates/ml/tests/dqn_training_smoke_test.rs index 941ef2a02..643c8ff59 100644 --- a/crates/ml/tests/dqn_training_smoke_test.rs +++ b/crates/ml/tests/dqn_training_smoke_test.rs @@ -172,7 +172,7 @@ async fn test_dqn_training_smoke() -> Result<()> { // architecture, we test the validation pipeline independently with a simpler // DQN that trains inside the harness vs. random baseline. use ml::dqn::DQNConfig; - use ml::real_data_loader::RealDataLoader; + use ml::data_loader::RealDataLoader; use ml::validation::{ DqnStrategy, TimeSeriesData, ValidationHarness, ValidationHarnessConfig, WalkForwardConfig, diff --git a/crates/ml/tests/ensemble_real_models_validation_test.rs b/crates/ml/tests/ensemble_real_models_validation_test.rs index bcce819d1..fd4a46dcc 100644 --- a/crates/ml/tests/ensemble_real_models_validation_test.rs +++ b/crates/ml/tests/ensemble_real_models_validation_test.rs @@ -27,7 +27,7 @@ use ml::ensemble::decision::{ use ml::ppo::gae::{compute_gae, GAEConfig}; use ml::ppo::ppo::{PPOConfig, PPO}; use ml::ppo::trajectories::{Trajectory, TrajectoryBatch, TrajectoryStep}; -use ml::real_data_loader::RealDataLoader; +use ml::data_loader::RealDataLoader; use ml::{Features, ModelPrediction}; // --------------------------------------------------------------------------- diff --git a/crates/ml/tests/ppo_validation_real_data_test.rs b/crates/ml/tests/ppo_validation_real_data_test.rs index a9bac240d..f55aa75ad 100644 --- a/crates/ml/tests/ppo_validation_real_data_test.rs +++ b/crates/ml/tests/ppo_validation_real_data_test.rs @@ -13,7 +13,7 @@ use chrono::{DateTime, Utc}; use ml::ppo::gae::GAEConfig; use ml::ppo::ppo::PPOConfig; -use ml::real_data_loader::RealDataLoader; +use ml::data_loader::RealDataLoader; use ml::validation::{ PpoLstmStrategy, PpoStrategy, TimeSeriesData, ValidationHarness, ValidationHarnessConfig, WalkForwardConfig, diff --git a/crates/ml/tests/real_data_helpers.rs b/crates/ml/tests/real_data_helpers.rs index d2188f136..2767da74c 100644 --- a/crates/ml/tests/real_data_helpers.rs +++ b/crates/ml/tests/real_data_helpers.rs @@ -201,7 +201,7 @@ mod tests { use super::*; #[tokio::test] - async fn test_real_data_loader_creation() { + async fn test_data_loader_creation() { let loader = RealDataLoader::new(); assert!(!loader.base_path.is_empty()); } diff --git a/crates/ml/tests/validation_real_data_test.rs b/crates/ml/tests/validation_real_data_test.rs index 1de284b0d..2978a3bee 100644 --- a/crates/ml/tests/validation_real_data_test.rs +++ b/crates/ml/tests/validation_real_data_test.rs @@ -10,7 +10,7 @@ use chrono::{DateTime, Utc}; use ml::dqn::DQNConfig; -use ml::real_data_loader::RealDataLoader; +use ml::data_loader::RealDataLoader; use ml::validation::{ DqnStrategy, TimeSeriesData, ValidationHarness, ValidationHarnessConfig, WalkForwardConfig, }; diff --git a/services/trading_service/tests/wave_d_225_feature_extraction_test.rs b/services/trading_service/tests/wave_d_225_feature_extraction_test.rs index 554987f4c..58cc3e525 100644 --- a/services/trading_service/tests/wave_d_225_feature_extraction_test.rs +++ b/services/trading_service/tests/wave_d_225_feature_extraction_test.rs @@ -191,7 +191,7 @@ fn test_real_databento_integration() -> Result<()> { // Note: This requires the databento crate and proper decoder // For now, we'll just verify the file exists and skip actual loading - // In production, use: ml::real_data_loader::RealDataLoader + // In production, use: ml::data_loader::RealDataLoader println!("✓ Test data file exists (actual loading requires RealDataLoader)"); println!(" For full integration, run: cargo test -p ml --test real_data_integration"); diff --git a/testing/test-common/src/builders/bar_builder.rs b/testing/test-common/src/builders/bar_builder.rs index 82e2da629..efbb22c2f 100644 --- a/testing/test-common/src/builders/bar_builder.rs +++ b/testing/test-common/src/builders/bar_builder.rs @@ -1,7 +1,7 @@ //! OHLCV Bar builder for testing use chrono::{DateTime, Duration, Utc}; -use ml::real_data_loader::OHLCVBar; +use ml::data_loader::OHLCVBar; /// Builder for creating OHLCV bars pub struct BarBuilder { diff --git a/testing/test-common/src/fixtures/market_data.rs b/testing/test-common/src/fixtures/market_data.rs index 6dafffc92..e0a9a3ec2 100644 --- a/testing/test-common/src/fixtures/market_data.rs +++ b/testing/test-common/src/fixtures/market_data.rs @@ -4,7 +4,7 @@ //! Consolidates patterns from 15+ test files with `create_mock_bars()` functions. use chrono::{DateTime, Duration, Utc}; -use ml::real_data_loader::OHLCVBar; +use ml::data_loader::OHLCVBar; use rand::Rng; /// Generate OHLCV bars with realistic price movements