---
id: "ANALISIS-GAPS-ML-FIRST-2026-01"
title: "Analisis de Gaps - Reordenamiento ML-First"
type: "Analysis"
project: "trading-platform"
version: "1.0.0"
created_date: "2026-01-04"
author: "Orquestador - Tech Leader"
---

# Analisis de Gaps - Reordenamiento ML-First

## 1. Resumen del Analisis

Este documento identifica los gaps entre el estado actual del proyecto y los nuevos objetivos priorizados:

| Objetivo | Estado Actual | Gap | Criticidad |
|----------|---------------|-----|------------|
| 80% win rate en operaciones | TPSL tiene 85.9% accuracy pero no validado en real | Validacion OOS | **CRITICA** |
| 30-100% rendimiento semanal | No hay backtesting con este objetivo | Backtesting intensivo | **CRITICA** |
| Prediccion max/min multi-TF | Solo 15m y 1h implementados | Extender a 4H, D, W | **ALTA** |
| LLM con fine-tuning | Solo prompts estaticos | Dataset + LoRA training | **CRITICA** |
| MCP Server para ejecucion | No existe | Desarrollo completo | **CRITICA** |
| Integracion Binance BTC | Parcial, no optimizado | Estrategias BTC | **ALTA** |
| Visualizacion TradingView | Componentes basicos existen | Overlays ML | **MEDIA** |

---

## 2. Matriz de Gaps Detallada

### Gap 1: Validacion Temporal de Modelos (Out-of-Sample)

**Descripcion**: Los modelos actuales no tienen una estrategia clara de validacion con datos no vistos durante entrenamiento.

**Estado Actual**:
- Walk-forward validation mencionado pero no implementado consistentemente
- No hay exclusion explicita del ultimo ano de datos
- Riesgo de overfitting en backtests

**Requerimiento**:
```python
# Estrategia de split temporal requerida
DATA_SPLIT = {
    'training': '2014-01-01 a 2024-01-01',    # 10 anos
    'validation': '2024-01-01 a 2024-07-01',   # 6 meses (walk-forward)
    'test_oos': '2024-07-01 a 2025-01-01'      # 6 meses (NUNCA visto)
}
```

**Accion Requerida**:
1. Implementar funcion `temporal_train_test_split()` con exclusion del ultimo ano
2. Modificar pipeline de entrenamiento para usar este split
3. Reportar metricas separadas para train, val, test_oos

**Archivos a Modificar**:
- `apps/ml-engine/src/training/data_splitter.py` (crear)
- `apps/ml-engine/src/pipelines/phase2_pipeline.py`
- `apps/ml-engine/config/validation_oos.yaml`

---

### Gap 2: Prediccion Multi-Temporalidad

**Descripcion**: RangePredictor actual solo predice para horizontes de 15m y 1h.

**Estado Actual**:
```python
# Actual
HORIZONS = {'15m': 3, '1h': 12}  # Solo 2 horizontes
```

**Requerimiento**:
```python
# Requerido para objetivo de 30-100% semanal
HORIZONS = {
    'scalping': {'5m': 6, '15m': 4},      # 30min - 1h
    'intraday': {'1H': 4, '4H': 2},       # 4h - 8h
    'swing': {'4H': 6, '1D': 2},          # 1-2 dias
    'position': {'1D': 5, '1W': 1}        # 1 semana
}
```

**Accion Requerida**:
1. Extender clase RangePredictor para soportar multiples horizontes
2. Crear modelos separados por temporalidad o modelo multi-output
3. Implementar feature engineering especifico por temporalidad
4. Entrenar y validar cada configuracion

**Archivos a Modificar**:
- `apps/ml-engine/src/models/range_predictor.py`
- `apps/ml-engine/config/models.yaml`
- `apps/ml-engine/src/data/features.py`

---

### Gap 3: Objetivo de 80% Win Rate

**Descripcion**: El objetivo especifico es lograr 80% de operaciones ganadoras.

**Estado Actual**:
- TPSL Classifier tiene 85.9% accuracy en clasificacion
- Pero accuracy != win rate en trading real
- No hay backtesting que valide este objetivo

**Analisis**:
```
Para lograr 80% win rate se necesita:

1. Risk:Reward conservador (1:1 o menor)
   - Con RR 1:1 y 80% WR: Profit Factor = 4.0
   - Con RR 0.5:1 y 80% WR: Profit Factor = 2.0

2. Filtros de alta confianza
   - Solo tomar senales con confidence > 0.80
   - Reducir numero de trades pero aumentar calidad

3. Gestion de posicion
   - Partial take profits
   - Trailing stops
   - Break-even rules
```

**Accion Requerida**:
1. Ajustar configuracion de TPSL para RR conservador
2. Implementar filtros de confianza alta
3. Backtesting con objetivo explicito de 80% WR
4. Implementar gestion de posicion avanzada

**Archivos a Crear/Modificar**:
- `apps/ml-engine/src/backtesting/win_rate_optimizer.py` (crear)
- `apps/trading-agents/src/strategies/high_winrate_strategy.py` (crear)
- `apps/ml-engine/config/trading.yaml`

---

### Gap 4: Rendimiento 30-100% Semanal

**Descripcion**: Objetivo agresivo de rendimiento semanal.

**Analisis de Viabilidad**:
```
Para 30% semanal con 80% WR:
- Necesitas ~15-20 trades/semana
- RR promedio 0.5:1 (TP = 2%, SL = 4%)
- O: RR 1:1 con mas apalancamiento

Para 100% semanal:
- Requiere apalancamiento alto (10x-20x)
- O: Muchos trades con compounding
- ALTO RIESGO - no recomendado inicialmente

Estrategia Sugerida:
1. Empezar con objetivo 30-50% semanal
2. Usar apalancamiento moderado (5x-10x)
3. Compounding de ganancias
4. Escalar gradualmente
```

**Accion Requerida**:
1. Definir configuracion de riesgo por nivel de agresividad
2. Implementar calculator de position sizing para objetivos
3. Crear modo "aggressive" en trading agents
4. Backtesting con compounding

**Archivos a Crear**:
- `apps/trading-agents/config/aggressive_profile.yaml`
- `apps/trading-agents/src/risk/compounding_calculator.py`

---

### Gap 5: LLM Fine-Tuning

**Descripcion**: El LLM Agent actual usa prompts estaticos, no hay fine-tuning.

**Estado Actual**:
```python
# Actual - Solo prompts
llm_config = {
    'provider': 'ollama',
    'model': 'llama3:8b',
    'system_prompt': 'You are a trading assistant...'  # 1500 lineas
}
```

**Requerimiento**:
```python
# Requerido - Modelo fine-tuned
llm_config = {
    'provider': 'ollama',
    'model': 'trading-trader:v1',  # Modelo custom
    'fine_tuned': True,
    'training_data': 'datasets/trading_decisions_v1.jsonl'
}
```

**Dataset Requerido**:
```jsonl
{"instruction": "Analiza esta senal ML", "input": {"delta_high": 0.8, "delta_low": 0.3, "phase": "accumulation"}, "output": "LONG recomendado. Fase de acumulacion con sesgo alcista..."}
{"instruction": "Evalua entrada en XAUUSD", "input": {"price": 2650, "amd": "manipulation", "liquidity_swept": true}, "output": "WAIT. Fase de manipulacion activa, esperar confirmacion..."}
```

**Accion Requerida**:
1. Crear dataset de 1000+ ejemplos de decisiones de trading
2. Formatear en JSONL para fine-tuning
3. Setup entorno de fine-tuning (unsloth/axolotl)
4. Entrenar con LoRA
5. Convertir a formato GGUF para Ollama
6. Evaluar modelo fine-tuned

**Archivos a Crear**:
- `apps/llm-agent/datasets/trading_decisions_v1.jsonl`
- `apps/llm-agent/training/fine_tune_config.yaml`
- `apps/llm-agent/training/fine_tune.py`
- `apps/llm-agent/training/evaluate.py`

---

### Gap 6: MCP Server para Ejecucion

**Descripcion**: No existe un MCP server que exponga herramientas de trading al agente.

**Estado Actual**:
- LLM Agent tiene tools definidos internamente
- No hay protocolo MCP implementado
- No hay integracion estandar con Claude Desktop u otros clientes

**Requerimiento**:
```typescript
// MCP Server specification
{
  "name": "trading-trading-mcp",
  "version": "1.0.0",
  "tools": [
    {
      "name": "execute_trade",
      "description": "Execute a trade on MT4 or Binance",
      "inputSchema": {
        "type": "object",
        "properties": {
          "broker": {"type": "string", "enum": ["mt4", "binance"]},
          "symbol": {"type": "string"},
          "action": {"type": "string", "enum": ["buy", "sell"]},
          "lots": {"type": "number"},
          "sl": {"type": "number"},
          "tp": {"type": "number"}
        },
        "required": ["broker", "symbol", "action", "lots"]
      }
    },
    // + 10 tools mas
  ]
}
```

**Accion Requerida**:
1. Crear proyecto MCP Server en TypeScript/Python
2. Implementar tools de trading (10+)
3. Implementar conexion con MT4 (MetaAPI)
4. Implementar conexion con Binance
5. Crear cliente para integracion con LLM Agent
6. Testing completo

**Archivos a Crear**:
- `apps/mcp-server/` (nuevo directorio)
- `apps/mcp-server/src/server.ts`
- `apps/mcp-server/src/tools/trading.ts`
- `apps/mcp-server/src/tools/analysis.ts`
- `apps/mcp-server/src/connectors/mt4.ts`
- `apps/mcp-server/src/connectors/binance.ts`

---

### Gap 7: Integracion Binance para Bitcoin

**Descripcion**: La integracion con Binance existe pero no esta optimizada para BTC.

**Estado Actual**:
- Cliente Binance basico en trading-agents
- Soporta multiples pares pero sin optimizacion
- No hay estrategias especificas para BTC

**Requerimiento**:
```python
# Estrategias especificas para BTC
BTC_STRATEGIES = {
    'halving_cycle': {
        'description': 'Posicionamiento basado en ciclo de halving',
        'timeframe': 'weekly',
        'indicators': ['stock_to_flow', 'puell_multiple', 'mvrv']
    },
    'funding_rate': {
        'description': 'Trading basado en funding rate de perpetuos',
        'timeframe': 'hourly',
        'indicators': ['funding_rate', 'open_interest', 'long_short_ratio']
    },
    'whale_tracking': {
        'description': 'Seguimiento de movimientos de ballenas',
        'timeframe': 'daily',
        'indicators': ['exchange_flow', 'whale_alerts', 'accumulation_score']
    }
}
```

**Accion Requerida**:
1. Entrenar modelos ML especificos para BTC
2. Implementar features especificos de crypto
3. Crear estrategias especializadas
4. Integrar con on-chain data (opcional)

**Archivos a Crear/Modificar**:
- `apps/trading-agents/src/strategies/btc_strategies.py`
- `apps/ml-engine/src/data/crypto_features.py`
- `apps/data-service/src/providers/onchain.py` (opcional)

---

## 3. Prioridad de Resolucion de Gaps

| # | Gap | Prioridad | Esfuerzo | Dependencias |
|---|-----|-----------|----------|--------------|
| 1 | Validacion OOS | P0 | 3 dias | Ninguna |
| 2 | Multi-temporalidad | P0 | 5 dias | Gap 1 |
| 3 | 80% Win Rate | P0 | 5 dias | Gap 1, 2 |
| 4 | 30-100% Semanal | P1 | 3 dias | Gap 3 |
| 5 | LLM Fine-tuning | P0 | 10 dias | Ninguna |
| 6 | MCP Server | P0 | 10 dias | Gap 5 |
| 7 | Binance BTC | P1 | 5 dias | Gap 1 |

---

## 4. Impacto en Arquitectura Actual

### Cambios Necesarios

```
ANTES (Arquitectura Actual):

Frontend ──> Backend ──> ML Engine ──> Trading Agents
                              │
                              └──> MetaAPI (MT4)

DESPUES (Arquitectura ML-First):

                    ┌──────────────────────────────────────┐
                    │         MCP SERVER (nuevo)           │
                    │                                      │
                    │  Tools: execute_trade, get_signal,   │
                    │         modify_position, etc.        │
                    └────────────────┬─────────────────────┘
                                     │
    ┌────────────────────────────────┼────────────────────────────┐
    │                                │                            │
    ▼                                ▼                            ▼
┌───────────┐                  ┌───────────┐               ┌───────────┐
│ LLM Agent │◄────────────────>│ ML Engine │               │  Brokers  │
│ (fine-    │  Analisis +      │           │               │           │
│  tuned)   │  Decisiones      │  Modelos  │               │ MT4/Binance│
└───────────┘                  │  Multi-TF │               └───────────┘
                               └───────────┘
```

### Nuevos Componentes

1. **MCP Server** (`apps/mcp-server/`)
2. **Fine-tuning Pipeline** (`apps/llm-agent/training/`)
3. **Datasets** (`apps/llm-agent/datasets/`)
4. **Crypto Features** (`apps/ml-engine/src/data/crypto_features.py`)
5. **BTC Strategies** (`apps/trading-agents/src/strategies/btc_strategies.py`)

---

## 5. Estimacion de Esfuerzo Total

| Fase | Dias | Recursos |
|------|------|----------|
| Preparacion Datos (F0) | 6 | ML-Specialist x1 |
| ML Training (F1) | 15 | ML-Specialist x2 |
| LLM Fine-tuning (F2) | 12 | ML-Specialist x1, Backend x1 |
| MCP + Integraciones (F3) | 15 | Backend x2, MCP-Dev x1 |
| Visualizacion (F4) | 10 | Frontend x2 |
| **Total** | **58 dias** | **~13 semanas** |

Con paralelizacion efectiva: **8-10 semanas**

---

**Documento Generado:** 2026-01-04
**Autor:** Orquestador / Tech Leader
