# 03-PLANEACIÓN: Mejora Integral de Modelos ML para Trading **Task ID:** TASK-2026-01-25-ML-TRAINING-ENHANCEMENT **Fase:** P - Planeación **Estado:** En Progreso **Fecha:** 2026-01-25 --- ## 1. ESTRUCTURA JERÁRQUICA DE SUBTAREAS ``` TASK-2026-01-25-ML-TRAINING-ENHANCEMENT (TAREA MAESTRA) │ ├── FASE 1: INFRAESTRUCTURA (Prerequisitos) │ │ │ ├── 1.1 TASK-ML-DATA-PIPELINE │ │ ├── 1.1.1 Migrar datos históricos MySQL → PostgreSQL │ │ ├── 1.1.2 Implementar data loader para entrenamiento │ │ ├── 1.1.3 Crear validadores de calidad de datos │ │ └── 1.1.4 Documentar schema y pipelines │ │ │ └── 1.2 TASK-ML-ATTENTION-ARCHITECTURE │ ├── 1.2.1 Implementar Price-Focused Attention base │ ├── 1.2.2 Implementar Positional Encoding agnóstico │ ├── 1.2.3 Crear módulo de extracción de attention scores │ └── 1.2.4 Tests unitarios de attention │ ├── FASE 2: ESTRATEGIAS DE MODELOS (Paralelo) │ │ │ ├── 2.1 TASK-ML-STRATEGY-1-PVA (Price Variation Attention) │ │ ├── 2.1.1 Implementar feature engineering de retornos │ │ ├── 2.1.2 Crear Transformer Encoder │ │ ├── 2.1.3 Implementar XGBoost prediction head │ │ ├── 2.1.4 Entrenar por cada activo (6 modelos) │ │ ├── 2.1.5 Validar con walk-forward │ │ └── 2.1.6 Documentar métricas y configuración │ │ │ ├── 2.2 TASK-ML-STRATEGY-2-MRD (Momentum Regime Detection) │ │ ├── 2.2.1 Implementar Hidden Markov Model para regímenes │ │ ├── 2.2.2 Crear features de momentum y tendencia │ │ ├── 2.2.3 Implementar LSTM + XGBoost ensemble │ │ ├── 2.2.4 Entrenar por cada activo (6 modelos) │ │ ├── 2.2.5 Validar detección de regímenes │ │ └── 2.2.6 Documentar métricas y configuración │ │ │ ├── 2.3 TASK-ML-STRATEGY-3-VBP (Volatility Breakout Predictor) │ │ ├── 2.3.1 Implementar features de volatilidad y compresión │ │ ├── 2.3.2 Crear CNN 1D con attention │ │ ├── 2.3.3 Implementar balanced sampling para breakouts │ │ ├── 2.3.4 Entrenar por cada activo (6 modelos) │ │ ├── 2.3.5 Validar predicción de breakouts │ │ └── 2.3.6 Documentar métricas y configuración │ │ │ ├── 2.4 TASK-ML-STRATEGY-4-MSA (Market Structure Analysis) │ │ ├── 2.4.1 Implementar detector de swing points │ │ ├── 2.4.2 Crear features ICT/SMC (BOS, CHoCH, FVG, OB) │ │ ├── 2.4.3 Implementar modelo (GNN opcional o XGBoost) │ │ ├── 2.4.4 Entrenar por cada activo (6 modelos) │ │ ├── 2.4.5 Validar detección de estructura │ │ └── 2.4.6 Documentar métricas y configuración │ │ │ └── 2.5 TASK-ML-STRATEGY-5-MTS (Multi-Timeframe Synthesis) │ ├── 2.5.1 Implementar agregación de features por timeframe │ ├── 2.5.2 Crear Hierarchical Attention Network │ ├── 2.5.3 Implementar síntesis de señales │ ├── 2.5.4 Entrenar por cada activo (6 modelos) │ ├── 2.5.5 Validar alineación multi-TF │ └── 2.5.6 Documentar métricas y configuración │ ├── FASE 3: INTEGRACIÓN (Secuencial post-Fase 2) │ │ │ ├── 3.1 TASK-ML-METAMODEL-ENSEMBLE │ │ ├── 3.1.1 Implementar Neural Gating Network │ │ ├── 3.1.2 Crear pipeline de ensemble │ │ ├── 3.1.3 Entrenar gating con predicciones de estrategias │ │ ├── 3.1.4 Implementar confidence calibration │ │ └── 3.1.5 Documentar arquitectura final │ │ │ └── 3.2 TASK-ML-LLM-STRATEGY-INTEGRATION │ ├── 3.2.1 Diseñar prompt structure para decisiones │ ├── 3.2.2 Implementar Signal Formatter │ ├── 3.2.3 Integrar con LLM Agent existente │ ├── 3.2.4 Crear Signal Logger para feedback │ └── 3.2.5 Documentar flujo de decisión │ └── FASE 4: VALIDACIÓN (Final) │ └── 4.1 TASK-ML-BACKTESTING-VALIDATION ├── 4.1.1 Ejecutar backtesting por estrategia ├── 4.1.2 Ejecutar backtesting de ensemble ├── 4.1.3 Calcular métricas (Sharpe, Sortino, Max DD) ├── 4.1.4 Validar objetivo 80% efectividad ├── 4.1.5 Generar reportes comparativos └── 4.1.6 Documentar resultados finales ``` --- ## 2. DETALLE DE SUBTAREAS NIVEL 1 ### 2.1 FASE 1: INFRAESTRUCTURA #### TASK-1.1: ML-DATA-PIPELINE ```yaml id: "TASK-2026-01-25-ML-DATA-PIPELINE" tipo: "feature" prioridad: "P0" bloqueante: true descripcion: | Migrar datos históricos del proyecto antiguo (MySQL dumps de WorkspaceOld) a PostgreSQL y crear pipelines de datos para entrenamiento. prerequisitos: [] subtareas: - id: "1.1.1" titulo: "Migrar datos históricos MySQL → PostgreSQL" descripcion: | Cargar los 3 dumps SQL (db.sql, db_financial.sql, db_res.sql = 5.6GB total) en PostgreSQL. Transformar schema si es necesario. archivos_afectados: - apps/data-service/scripts/migrate_mysql_data.py (CREAR) - apps/database/ddl/schemas/ml/migrations/ (CREAR) criterios_aceptacion: - Todos los datos migrados sin pérdida - Índices creados para queries eficientes - Validación de integridad (row counts match) - id: "1.1.2" titulo: "Implementar data loader para entrenamiento" descripcion: | Crear clase DataLoader que carga datos de PostgreSQL en batches eficientes para entrenamiento de modelos. archivos_afectados: - apps/ml-engine/src/data/training_loader.py (CREAR) - apps/ml-engine/src/data/dataset.py (CREAR) criterios_aceptacion: - Soporta batch loading - Memory efficient (streaming) - Soporta filtrado por símbolo, timeframe, fecha - id: "1.1.3" titulo: "Crear validadores de calidad de datos" descripcion: | Implementar validaciones de calidad de datos: gaps, outliers, consistency checks. archivos_afectados: - apps/ml-engine/src/data/validators.py (CREAR) criterios_aceptacion: - Detecta gaps en series temporales - Detecta outliers estadísticos - Reporte de calidad generado - id: "1.1.4" titulo: "Documentar schema y pipelines" descripcion: | Documentar el schema de datos migrado y los pipelines creados. archivos_afectados: - docs/02-definicion-modulos/OQI-006-ml-signals/DATA-PIPELINE.md (CREAR) criterios_aceptacion: - ERD actualizado - Descripción de cada tabla - Ejemplos de uso del data loader entregables: - 5.6GB de datos migrados - Data loader funcional - Validadores de calidad - Documentación completa metricas_exito: - Tiempo de carga de 1M registros < 30s - 0 errores de integridad - 100% datos migrados ``` #### TASK-1.2: ML-ATTENTION-ARCHITECTURE ```yaml id: "TASK-2026-01-25-ML-ATTENTION-ARCHITECTURE" tipo: "feature" prioridad: "P0" bloqueante: true descripcion: | Implementar la arquitectura base de atención enfocada en variación de precio, agnóstica al tiempo y activo. Esta es la base para la Estrategia 1 (PVA). prerequisitos: - TASK-ML-DATA-PIPELINE (parcial - solo data loader) subtareas: - id: "1.2.1" titulo: "Implementar Price-Focused Attention base" descripcion: | Crear módulo de Self-Attention que opera sobre secuencias de retornos. Multi-head attention con 8 heads, d_model=256. archivos_afectados: - apps/ml-engine/src/models/attention/price_attention.py (CREAR) - apps/ml-engine/src/models/attention/multi_head_attention.py (CREAR) criterios_aceptacion: - Implementación correcta de scaled dot-product attention - Multi-head parallelizable - Forward pass produce shapes correctos - id: "1.2.2" titulo: "Implementar Positional Encoding agnóstico" descripcion: | Crear positional encoding que NO usa información temporal real. Solo posición relativa en la secuencia (learnable o sinusoidal). archivos_afectados: - apps/ml-engine/src/models/attention/positional_encoding.py (CREAR) criterios_aceptacion: - No depende de timestamps reales - Soporta secuencias de longitud variable - Encodings diferenciables para backprop - id: "1.2.3" titulo: "Crear módulo de extracción de attention scores" descripcion: | Implementar extracción y almacenamiento de attention scores para interpretabilidad y debugging. archivos_afectados: - apps/ml-engine/src/models/attention/attention_extractor.py (CREAR) criterios_aceptacion: - Extrae scores de cada head - Produce heatmaps de atención - Exportable a PostgreSQL para análisis - id: "1.2.4" titulo: "Tests unitarios de attention" descripcion: | Crear suite de tests para validar implementación de attention. archivos_afectados: - apps/ml-engine/tests/test_attention.py (CREAR) criterios_aceptacion: - 100% cobertura del módulo attention - Tests de shapes, gradients, outputs - Test de reproducibilidad entregables: - Módulo de Price-Focused Attention - Positional Encoding agnóstico - Extractor de attention scores - Tests unitarios metricas_exito: - Forward pass < 10ms para batch de 256 - Gradients estables (no NaN/Inf) - Tests pasan al 100% ``` --- ### 2.2 FASE 2: ESTRATEGIAS DE MODELOS #### TASK-2.1: STRATEGY-1-PVA (Price Variation Attention) ```yaml id: "TASK-2026-01-25-ML-STRATEGY-1-PVA" tipo: "feature" prioridad: "P1" descripcion: | Estrategia enfocada en atención sobre variación de precio pura. Transformer Encoder + XGBoost Head. Agnóstica al tiempo y activo. prerequisitos: - TASK-ML-DATA-PIPELINE - TASK-ML-ATTENTION-ARCHITECTURE subtareas: - id: "2.1.1" titulo: "Implementar feature engineering de retornos" archivos_afectados: - apps/ml-engine/src/features/returns_features.py (CREAR) criterios_aceptacion: - Returns calculados correctamente (1, 5, 10, 20 períodos) - Derivados: acceleration, volatility, skewness, kurtosis - No NaN/Inf en outputs - id: "2.1.2" titulo: "Crear Transformer Encoder" archivos_afectados: - apps/ml-engine/src/models/strategies/pva/transformer_encoder.py (CREAR) criterios_aceptacion: - 4 capas de self-attention - Feed-forward networks - Dropout y layer normalization - id: "2.1.3" titulo: "Implementar XGBoost prediction head" archivos_afectados: - apps/ml-engine/src/models/strategies/pva/xgb_head.py (CREAR) criterios_aceptacion: - Toma embeddings de transformer - Produce direction, magnitude, confidence - Hiperparámetros configurables - id: "2.1.4" titulo: "Entrenar por cada activo (6 modelos)" archivos_afectados: - apps/ml-engine/src/training/pva_trainer.py (CREAR) - apps/ml-engine/models/strategies/pva/{symbol}/ (CREAR) criterios_aceptacion: - 6 modelos entrenados (XAUUSD, EURUSD, BTCUSD, GBPUSD, USDJPY, AUDUSD) - Walk-forward validation aplicada - Modelos serializados y versionados - id: "2.1.5" titulo: "Validar con walk-forward" archivos_afectados: - apps/ml-engine/src/validation/pva_validation.py (CREAR) criterios_aceptacion: - Métricas por fold de walk-forward - Reporte de overfitting (train vs val gap) - Stability analysis - id: "2.1.6" titulo: "Documentar métricas y configuración" archivos_afectados: - docs/02-definicion-modulos/OQI-006-ml-signals/estrategias/PVA-SPEC.md (CREAR) criterios_aceptacion: - Arquitectura documentada con diagramas - Hiperparámetros documentados - Métricas de rendimiento entregables: - 6 modelos PVA entrenados - Feature engineering module - Transformer + XGBoost pipeline - Documentación completa metricas_exito: - Direction accuracy > 60% - MAE magnitude < 1% - Sharpe ratio > 1.0 ``` #### TASK-2.2 a 2.5: ESTRATEGIAS 2-5 *(Estructura similar a TASK-2.1, adaptada para cada estrategia)* **Resumen de Estrategias:** | ID | Estrategia | Arquitectura | Features Clave | Target Principal | |----|------------|--------------|----------------|------------------| | 2.1 | PVA | Transformer + XGBoost | Returns, derivados | Direction + Magnitude | | 2.2 | MRD | HMM + LSTM + XGBoost | Momentum, RSI, ADX | Regime + Continuation | | 2.3 | VBP | CNN 1D + Attention | ATR, BB squeeze | Breakout + Direction | | 2.4 | MSA | XGBoost (o GNN) | Swing, BOS, FVG | Structure reaction | | 2.5 | MTS | Hierarchical Attention | Multi-TF features | Unified direction | --- ### 2.3 FASE 3: INTEGRACIÓN #### TASK-3.1: METAMODEL-ENSEMBLE ```yaml id: "TASK-2026-01-25-ML-METAMODEL-ENSEMBLE" tipo: "feature" prioridad: "P1" descripcion: | Implementar el Neural Gating Metamodel que combina las predicciones de las 5 estrategias en una señal final ponderada dinámicamente. prerequisitos: - TASK-ML-STRATEGY-1-PVA (completada) - TASK-ML-STRATEGY-2-MRD (completada) - TASK-ML-STRATEGY-3-VBP (completada) - TASK-ML-STRATEGY-4-MSA (completada) - TASK-ML-STRATEGY-5-MTS (completada) subtareas: - id: "3.1.1" titulo: "Implementar Neural Gating Network" archivos_afectados: - apps/ml-engine/src/models/metamodel/gating_network.py (CREAR) criterios_aceptacion: - MLP de 3 capas (256, 128, 5) - Softmax output para pesos - Batch normalization - id: "3.1.2" titulo: "Crear pipeline de ensemble" archivos_afectados: - apps/ml-engine/src/models/metamodel/ensemble_pipeline.py (CREAR) criterios_aceptacion: - Orquesta llamadas a 5 estrategias - Aplica gating network - Produce output unificado - id: "3.1.3" titulo: "Entrenar gating con predicciones de estrategias" archivos_afectados: - apps/ml-engine/src/training/metamodel_trainer.py (MODIFICAR) criterios_aceptacion: - Entrenado con predicciones reales de estrategias - Optimiza weighted ensemble loss - Regularización para evitar colapso a una estrategia - id: "3.1.4" titulo: "Implementar confidence calibration" archivos_afectados: - apps/ml-engine/src/models/metamodel/calibration.py (CREAR) criterios_aceptacion: - Isotonic regression o Platt scaling - Calibrated probabilities (reliability diagram) - id: "3.1.5" titulo: "Documentar arquitectura final" archivos_afectados: - docs/02-definicion-modulos/OQI-006-ml-signals/METAMODEL-SPEC.md (CREAR) criterios_aceptacion: - Diagrama de arquitectura - Flujo de datos documentado - Ejemplo de uso entregables: - Neural Gating Metamodel entrenado - Ensemble pipeline funcional - Confidence calibration - Documentación metricas_exito: - Ensemble accuracy > individual strategies - Calibration error < 5% - Latencia total < 100ms ``` #### TASK-3.2: LLM-STRATEGY-INTEGRATION ```yaml id: "TASK-2026-01-25-ML-LLM-STRATEGY-INTEGRATION" tipo: "feature" prioridad: "P1" descripcion: | Integrar el metamodel con el LLM Agent para que tome decisiones de trading basadas en las predicciones ensemble. prerequisitos: - TASK-ML-METAMODEL-ENSEMBLE (completada) subtareas: - id: "3.2.1" titulo: "Diseñar prompt structure para decisiones" archivos_afectados: - apps/ml-engine/src/llm/prompts/trading_decision.py (CREAR) criterios_aceptacion: - Template estructurado con todas las señales - Formato parseable de respuesta - Incluye contexto de mercado - id: "3.2.2" titulo: "Implementar Signal Formatter" archivos_afectados: - apps/ml-engine/src/llm/signal_formatter.py (CREAR) criterios_aceptacion: - Convierte predicciones a formato de prompt - Incluye metadata de estrategias - Agrega contexto de riesgo - id: "3.2.3" titulo: "Integrar con LLM Agent existente" archivos_afectados: - apps/backend/src/modules/llm/llm-trading.service.ts (MODIFICAR) - apps/ml-engine/src/api/llm_endpoints.py (CREAR) criterios_aceptacion: - Endpoint que LLM Agent consume - Formato compatible con tools existentes - Manejo de errores robusto - id: "3.2.4" titulo: "Crear Signal Logger para feedback" archivos_afectados: - apps/ml-engine/src/llm/signal_logger.py (CREAR) - apps/database/ddl/schemas/ml/llm_signals.sql (CREAR) criterios_aceptacion: - Registra cada señal enviada al LLM - Registra decisión del LLM - Registra resultado del trade (para fine-tuning) - id: "3.2.5" titulo: "Documentar flujo de decisión" archivos_afectados: - docs/02-definicion-modulos/OQI-006-ml-signals/LLM-INTEGRATION.md (CREAR) criterios_aceptacion: - Diagrama de flujo end-to-end - Ejemplos de prompts y respuestas - Guía de troubleshooting entregables: - Integración ML-LLM funcional - Signal Logger con feedback loop - Documentación de integración metricas_exito: - LLM recibe señales en < 200ms - 100% de trades loggeados - Formato de respuesta válido > 99% ``` --- ### 2.4 FASE 4: VALIDACIÓN #### TASK-4.1: BACKTESTING-VALIDATION ```yaml id: "TASK-2026-01-25-ML-BACKTESTING-VALIDATION" tipo: "validation" prioridad: "P0" bloqueante: true descripcion: | Validar el sistema completo mediante backtesting exhaustivo. Verificar que se alcanza el objetivo de 80% de efectividad. prerequisitos: - TASK-ML-METAMODEL-ENSEMBLE (completada) - TASK-ML-LLM-STRATEGY-INTEGRATION (completada) subtareas: - id: "4.1.1" titulo: "Ejecutar backtesting por estrategia" archivos_afectados: - apps/ml-engine/src/backtesting/strategy_backtest.py (CREAR) criterios_aceptacion: - Backtest de cada estrategia individualmente - Período: últimos 2 años - Métricas por símbolo - id: "4.1.2" titulo: "Ejecutar backtesting de ensemble" archivos_afectados: - apps/ml-engine/src/backtesting/ensemble_backtest.py (CREAR) criterios_aceptacion: - Backtest del metamodel completo - Simula decisiones de LLM - Incluye slippage y comisiones - id: "4.1.3" titulo: "Calcular métricas (Sharpe, Sortino, Max DD)" archivos_afectados: - apps/ml-engine/src/backtesting/metrics_calculator.py (MODIFICAR) criterios_aceptacion: - Sharpe Ratio - Sortino Ratio - Maximum Drawdown - Win Rate - Profit Factor - Calmar Ratio - id: "4.1.4" titulo: "Validar objetivo 80% efectividad" archivos_afectados: - apps/ml-engine/src/backtesting/effectiveness_validator.py (CREAR) criterios_aceptacion: - Win rate de operaciones ≥ 80% - O profit factor ≥ 2.0 con win rate ≥ 60% - Consistency across symbols - id: "4.1.5" titulo: "Generar reportes comparativos" archivos_afectados: - apps/ml-engine/src/backtesting/report_generator.py (CREAR) criterios_aceptacion: - Reporte HTML/PDF con gráficos - Comparación estrategia vs ensemble - Análisis de drawdown - id: "4.1.6" titulo: "Documentar resultados finales" archivos_afectados: - docs/02-definicion-modulos/OQI-006-ml-signals/BACKTEST-RESULTS.md (CREAR) criterios_aceptacion: - Todas las métricas documentadas - Conclusiones y recomendaciones - Limitaciones identificadas entregables: - Resultados de backtesting por estrategia - Resultados de backtesting ensemble - Reporte comparativo completo - Documentación de resultados metricas_exito: - Efectividad ≥ 80% en operaciones - Sharpe Ratio ≥ 1.5 - Max Drawdown ≤ 15% - Consistent across 6 symbols ``` --- ## 3. CRONOGRAMA Y DEPENDENCIAS ### 3.1 Diagrama de Gantt (Simplificado) ``` Semana 1 2 3 4 5 6 7 8 |---------|---------|---------|---------|---------|---------|---------| FASE 1 - INFRAESTRUCTURA ├─ 1.1 Data Pipeline [███████] └─ 1.2 Attention Arch [███████] FASE 2 - ESTRATEGIAS (Paralelo) ├─ 2.1 PVA [███████████] ├─ 2.2 MRD [███████████] ├─ 2.3 VBP [███████████] ├─ 2.4 MSA [███████████] └─ 2.5 MTS [███████████] FASE 3 - INTEGRACIÓN ├─ 3.1 Metamodel [███████] └─ 3.2 LLM Integration [███████] FASE 4 - VALIDACIÓN └─ 4.1 Backtesting [███████] ``` ### 3.2 Grafo de Dependencias ``` ┌─────────────────┐ │ 1.1 Data │ │ Pipeline │ └────────┬────────┘ │ ┌────────▼────────┐ │ 1.2 Attention │ │ Architecture │ └────────┬────────┘ │ ┌────────────────────┼────────────────────┐ │ │ │ ┌───────▼───────┐ ┌───────▼───────┐ ┌───────▼───────┐ │ 2.1 PVA │ │ 2.2 MRD │ │ 2.3 VBP │ └───────┬───────┘ └───────┬───────┘ └───────┬───────┘ │ │ │ │ ┌───────▼───────┐ ┌───────▼───────┐ │ │ 2.4 MSA │ │ 2.5 MTS │ │ └───────┬───────┘ └───────┬───────┘ │ │ │ └────────────────────┼────────────────────┘ │ ┌────────▼────────┐ │ 3.1 Metamodel │ │ Ensemble │ └────────┬────────┘ │ ┌────────▼────────┐ │ 3.2 LLM │ │ Integration │ └────────┬────────┘ │ ┌────────▼────────┐ │ 4.1 Backtesting │ │ Validation │ └─────────────────┘ ``` --- ## 4. ASIGNACIÓN DE AGENTES | Subtarea | Agente Sugerido | Herramientas | |----------|-----------------|--------------| | 1.1 Data Pipeline | PERFIL-DATA-ENGINEER | Bash, Python, PostgreSQL | | 1.2 Attention Arch | PERFIL-ML-ENGINEER | Python, PyTorch | | 2.1-2.5 Estrategias | PERFIL-ML-ENGINEER (paralelo) | Python, XGBoost, PyTorch | | 3.1 Metamodel | PERFIL-ML-ARCHITECT | Python, PyTorch | | 3.2 LLM Integration | PERFIL-BACKEND + PERFIL-ML | TypeScript, Python | | 4.1 Backtesting | PERFIL-QUANT | Python, Pandas | --- ## 5. CRITERIOS DE ACEPTACIÓN GLOBALES ### 5.1 Criterios Técnicos | Criterio | Umbral | Verificación | |----------|--------|--------------| | Build pasa | 100% | `npm run build` / `python -m pytest` | | Tests pasan | ≥95% | CI/CD pipeline | | Cobertura tests | ≥80% | Coverage report | | No memory leaks | 0 | Profiling | | Latencia inference | <200ms | Benchmark | ### 5.2 Criterios de ML | Criterio | Umbral | Verificación | |----------|--------|--------------| | Efectividad operaciones | ≥80% | Backtesting | | Direction accuracy | ≥70% | Validation set | | Sharpe Ratio | ≥1.5 | Backtesting | | Max Drawdown | ≤15% | Backtesting | | Calibration error | ≤5% | Reliability diagram | ### 5.3 Criterios de Documentación | Criterio | Umbral | Verificación | |----------|--------|--------------| | Especificaciones completas | 100% | Review | | Diagramas actualizados | 100% | Review | | Código documentado | 100% | Docstrings | | Inventarios actualizados | 100% | Checklist | --- ## 6. PLAN DE PRUEBAS ### 6.1 Tests Unitarios - Cada módulo nuevo debe tener ≥80% cobertura - Mock de datos para tests reproducibles - Fixtures compartidos para estrategias ### 6.2 Tests de Integración - Pipeline completo con datos sintéticos - Integración ML-LLM con mock responses - Database round-trip tests ### 6.3 Tests de Rendimiento - Benchmark de inference time - Memory profiling - Load testing de API endpoints ### 6.4 Backtesting como Test - Walk-forward validation obligatoria - Out-of-sample period de 6 meses mínimo - Robustness checks (different seeds, params) --- ## 7. DOCUMENTACIÓN A CREAR/ACTUALIZAR ### 7.1 Crear (Nuevos) | Archivo | Propósito | |---------|-----------| | `DATA-PIPELINE.md` | Schema y pipeline de datos | | `PVA-SPEC.md` | Especificación estrategia 1 | | `MRD-SPEC.md` | Especificación estrategia 2 | | `VBP-SPEC.md` | Especificación estrategia 3 | | `MSA-SPEC.md` | Especificación estrategia 4 | | `MTS-SPEC.md` | Especificación estrategia 5 | | `METAMODEL-SPEC.md` | Especificación del ensemble | | `LLM-INTEGRATION.md` | Integración con LLM | | `BACKTEST-RESULTS.md` | Resultados de backtesting | | `ML_INVENTORY.yml` | Inventario de modelos | ### 7.2 Actualizar (Existentes) | Archivo | Cambio | |---------|--------| | `OQI-006/_MAP.md` | Agregar nuevas estrategias | | `OQI-006/README.md` | Actualizar arquitectura | | `MASTER_INVENTORY.yml` | Agregar nuevos modelos | | `PROXIMA-ACCION.md` | Reflejar plan actual | --- ## 8. PRÓXIMOS PASOS INMEDIATOS 1. **Validar este plan** → Fase V de CAPVED 2. **Aprobar recursos** → GPU time, storage 3. **Crear subtareas** en sistema de tracking 4. **Iniciar FASE 1** → Data Pipeline + Attention Architecture 5. **Asignar agentes** para ejecución paralela en FASE 2 --- **Siguiente Fase:** 04-VALIDACION.md