# FASE 1: ANALISIS DETALLADO DE INTEGRACION
## Trading PlatformIA Trading Platform

**Fecha:** 2026-01-07
**Autor:** Agente Arquitecto
**Estado:** COMPLETADO

---

## 1. RESUMEN EJECUTIVO

### 1.1 Descripcion del Proyecto
**Trading PlatformIA Trading Platform** es una plataforma integral de gestion de inversiones con IA que combina:
- Money Manager con agentes IA (Atlas, Orion, Nova)
- Plataforma educativa con gamificacion
- TradingView privado con predicciones ML
- Sistema SaaS con pagos Stripe
- Trading automatizado multi-venue (MT4/Binance)

### 1.2 Estado Actual
| Metrica | Valor |
|---------|-------|
| **Archivos de codigo** | 478 archivos |
| **Lineas de codigo** | 58,000+ |
| **Subproyectos/Apps** | 12 aplicaciones |
| **Modelos ML** | 15+ especializados |
| **Documentacion** | 325 archivos (70% completada) |
| **Estado MVP** | ~50% completado |

### 1.3 Stack Tecnologico
| Capa | Tecnologias |
|------|-------------|
| **Frontend** | React 18, Vite 6, TypeScript 5.3, TailwindCSS, Zustand |
| **Backend** | Express.js 5, Node.js 20, TypeScript |
| **ML Engine** | Python 3.10+, FastAPI, XGBoost, PyTorch |
| **Database** | PostgreSQL 16 (8 schemas, 98 tablas) |
| **Cache** | Redis 7 |
| **LLM** | Ollama (local), Claude API |
| **Infra** | Docker Compose, Git submodules |

---

## 2. ARQUITECTURA DE SUBPROYECTOS

### 2.1 Inventario de Apps (12 total)

| App | Puerto | Tecnologia | Estado | Descripcion |
|-----|--------|-----------|--------|-------------|
| **backend** | 3081 | Node.js + Express | Activo | API REST principal (13 modulos) |
| **frontend** | 3080 | React + Vite | Activo | Interfaz web (11 modulos) |
| **database** | 5432 | PostgreSQL 16 | Activo | BD principal (8 schemas) |
| **ml-engine** | 3083 | Python + FastAPI | Activo | 15+ modelos ML |
| **data-service** | 3084 | Python + FastAPI | **INCOMPLETO (20%)** | Proveedor de datos |
| **llm-agent** | 3085 | Python + FastAPI | Activo | Copiloto IA (12 tools) |
| **trading-agents** | 3086 | Python + CCXT | Activo | 3 agentes + 4 estrategias |
| **mcp-mt4-connector** | - | Node.js + TS | Activo | Conector MCP MT4 |
| **mcp-binance-connector** | - | Node.js + TS | Activo | Conector MCP Binance |
| **mt4-gateway** | - | Python | Activo | Gateway MT4 |
| **personal** | - | Scripts | Activo | Herramientas personales |
| **packages** | - | TS + Python | Activo | SDKs compartidos |

### 2.2 Estructura de Directorios
```
/trading-platform/
├── apps/
│   ├── backend/            # Express.js API
│   ├── frontend/           # React SPA
│   ├── database/           # PostgreSQL DDL
│   ├── ml-engine/          # ML Models
│   ├── data-service/       # Data Provider
│   ├── llm-agent/          # LLM Copilot
│   ├── trading-agents/     # Trading Bots
│   ├── mcp-mt4-connector/  # MT4 MCP
│   ├── mcp-binance-connector/
│   ├── mt4-gateway/
│   └── personal/
├── packages/               # SDKs compartidos
├── docs/                   # 325 archivos
├── orchestration/          # Sistema NEXUS
├── docker/
└── docker-compose.yml
```

---

## 3. INTEGRACION DE BASE DE DATOS

### 3.1 Fuentes de Datos
| BD | Tipo | Host | Proposito |
|----|------|------|-----------|
| **PostgreSQL** | Principal | localhost:5432 | BD operativa (trading_platform) |
| **MySQL** | Remoto | 72.60.226.4:3306 | Datos historicos (db_trading_meta) |
| **Redis** | Cache | localhost:6379 | Cache y eventos |

### 3.2 Schemas PostgreSQL (8)
```
auth         - Usuarios, roles, sesiones, OAuth, 2FA
education    - Cursos, lecciones, gamificacion
trading      - Ordenes, posiciones, signals, bots
investment   - Cuentas PAMM, productos
financial    - Pagos, wallets, suscripciones
ml           - Modelos, predicciones, features
llm          - Conversaciones, mensajes
audit        - Logs, eventos de seguridad
```

### 3.3 Estado de Migracion MySQL → PostgreSQL
- **Script:** `/apps/database/scripts/migrate_mysql_to_postgres.py`
- **Estado:** Funcional para datos historicos
- **Ticker Mapping:** 24 pares configurados (BTCUSD, EURUSD, XAUUSD, etc.)
- **Temporalidades:** 1m, 5m, 15m, 30m, 1h, 4h, 1d, 1w

---

## 4. MODELOS DE MACHINE LEARNING

### 4.1 Inventario de Modelos (15+)

| Modelo | Archivo | Algoritmo | Proposito |
|--------|---------|-----------|-----------|
| Range Predictor | `range_predictor.py` | XGBoost | Predice ΔHigh/ΔLow |
| Range Predictor V2 | `range_predictor_v2.py` | XGBoost | Multi-timeframe |
| AMD Detector | `amd_detector.py` | Rule-based | Fases Smart Money |
| AMD Detector ML | `amd_detector_ml.py` | XGBoost | AMD entreneable |
| ICT/SMC Detector | `ict_smc_detector.py` | Technical | Order Blocks, FVG |
| TP/SL Classifier | `tp_sl_classifier.py` | XGBoost | prob_tp_first |
| Signal Generator | `signal_generator.py` | Ensemble | Senales completas |
| Strategy Ensemble | `strategy_ensemble.py` | Weighted Voting | Confluencia |
| Neural Gating | `neural_gating_metamodel.py` | PyTorch NN | Pesos dinamicos |
| Movement Magnitude | `movement_magnitude_predictor.py` | XGBoost | Magnitud USD |
| Asset Metamodel | `asset_metamodel.py` | Stacking | Por activo |
| Attention Score | `attention_score_model.py` | Neural | Scores atencion |
| Volatility Attention | `volatility_attention.py` | Softplus | Mapeo volatilidad |
| Dual Horizon | `dual_horizon_ensemble.py` | Ensemble | Dos horizontes |
| Enhanced Range | `enhanced_range_predictor.py` | XGBoost | Version mejorada |

### 4.2 Pipeline de Prediccion
```
Data Service → ML Engine → Prediction Service
                    ↓
              ┌─────┴─────┐
              ↓           ↓
         Range Pred   AMD Detect
              ↓           ↓
         TPSL Class   ICT Context
              ↓           ↓
              └─────┬─────┘
                    ↓
             Signal Generator
                    ↓
              Trading Signal
```

### 4.3 Features Engineering
- **Categorias:** Time, Price, Volume, Lag, Rolling, Interaction
- **Feature Sets:** minimal (9), extended (17), full (50+)
- **Indicadores:** RSI, MACD, Bollinger, ATR, SMA, EMA, etc.

---

## 5. INTEGRACION FRONTEND-BACKEND

### 5.1 Servicios Frontend (9)
| Servicio | API Base | Funcionalidad |
|----------|----------|---------------|
| trading.service | /api/v1 | Market data, orders, watchlist |
| mlService | :8001/api | Signals, predictions, AMD |
| llmAgentService | :8003/api | Predictions, MT4, backtest |
| payment.service | /api/v1/payments | Stripe, suscripciones, wallet |
| websocket.service | ws://:3081 | Real-time prices, signals |
| auth.service | /api/v1/auth | Login, OAuth, 2FA |
| education.service | /api/v1/education | Cursos, progreso |
| portfolio.service | /api/v1/portfolio | Gestion de cartera |
| bot.service | /api/v1/bots | Gestion de agentes |

### 5.2 WebSocket Connections
```
Trading WS:    ws://localhost:3081/ws/trading
  → subscribe_prices, price, trade_notification, position

ML Signals WS: ws://localhost:3083/ws/signals
  → subscribe, signal, unsubscribe
```

### 5.3 State Management (Zustand)
- `useTradingStore` - Market data, orders, positions
- `usePaymentStore` - Plans, subscriptions, wallet
- `useChatStore` - LLM conversations
- `useEducationStore` - Courses, progress

---

## 6. GAPS E INCONSISTENCIAS DETECTADOS

### 6.1 Data Service (CRITICO - 20% completado)
- **Estado:** Incompleto
- **Falta:**
  - Pipeline completo de Polygon API
  - Actualizacion automatica de datos
  - Gap detection y filling
  - Price adjustment vs MT4

### 6.2 Documentacion (70% completada)
| Area | Estado | Falta |
|------|--------|-------|
| Arquitectura | 90% | - |
| Base de Datos | 95% | - |
| APIs | 85% | OpenAPI specs |
| Frontend | 50% | Componentes detallados |
| Testing | 30% | Suite completa |
| Deployment | 40% | CI/CD pipeline |
| Monitoreo | 25% | Prometheus/Grafana |

### 6.3 Inconsistencias de Configuracion
1. **URLs de servicios:** Diferentes puertos en .env vs docker-compose
2. **Temporalidades:** Algunas documentaciones mencionan timeframes diferentes
3. **Feature Flags:** Configuracion dispersa entre archivos

### 6.4 Integraciones Faltantes
- Frontend ↔ Data Service (WebSocket real-time)
- Frontend ↔ LLM Agent (Chat interface completa)
- Portfolio Manager ↔ Risk Management
- Marketplace (OQI-009) - No implementado

---

## 7. BASE DE DATOS - FUENTE DE VERDAD

### 7.1 Decision Arquitectonica
**FUENTE DE VERDAD:** PostgreSQL (trading_platform)

**Justificacion:**
- BD principal con schemas completos
- Datos operativos actualizados
- Migracion desde MySQL completada para datos historicos
- Redis como cache, no como fuente

### 7.2 Configuracion Oficial
```yaml
PostgreSQL:
  host: localhost
  port: 5432
  database: trading_platform
  user: trading
  password: trading_dev_2025
  pool_max: 20

MySQL (solo lectura historicos):
  host: 72.60.226.4
  port: 3306
  database: db_trading_meta
  user: root

Redis:
  host: localhost
  port: 6379
```

---

## 8. MODULOS PENDIENTES DE INTEGRACION

### 8.1 Por Prioridad

**CRITICA (P0):**
1. Completar data-service (20% → 100%)
2. Homologar configuraciones de conexion
3. Documentar APIs con OpenAPI

**ALTA (P1):**
4. Integrar Frontend ↔ LLM Agent chat
5. Completar ML → Frontend WebSocket
6. Implementar tests unitarios

**MEDIA (P2):**
7. Dashboard de monitoreo
8. CI/CD pipeline
9. Portfolio Manager completo

**BAJA (P3):**
10. Marketplace (OQI-009)
11. Documentacion de usuario

---

## 9. ARCHIVOS CLAVE PARA INTEGRACION

### 9.1 Configuraciones Centrales
| Archivo | Proposito |
|---------|-----------|
| `/docker-compose.yml` | Orquestacion de servicios |
| `/apps/backend/.env.example` | Variables backend |
| `/apps/frontend/.env.example` | Variables frontend |
| `/apps/ml-engine/config/database.yaml` | Config ML |
| `/apps/data-service/.env` | Config data service |

### 9.2 Documentacion Clave
| Archivo | Proposito |
|---------|-----------|
| `/docs/00-vision-general/ARQUITECTURA-GENERAL.md` | Arquitectura |
| `/docs/90-transversal/inventarios/DATABASE_INVENTORY.yml` | BD Inventario |
| `/docs/api-contracts/SERVICE-INTEGRATION.md` | Contratos API |
| `/orchestration/CONTEXT-MAP.yml` | Mapa de contexto |

### 9.3 Codigo de Integracion
| Archivo | Proposito |
|---------|-----------|
| `/apps/ml-engine/src/services/prediction_service.py` | Servicio central ML |
| `/apps/llm-agent/src/services/ml_analyzer.py` | Integracion LLM-ML |
| `/apps/frontend/src/services/` | Clientes API frontend |
| `/apps/backend/src/shared/clients/` | Clientes inter-servicio |

---

## 10. RECOMENDACIONES PARA FASE 2

### 10.1 Homologacion de Configuraciones
- Centralizar variables de entorno
- Crear archivo de configuracion unico
- Eliminar duplicados y conflictos

### 10.2 Completar Data Service
- Implementar pipeline Polygon completo
- Actualizar datos cada 5 minutos
- Implementar gap detection

### 10.3 Documentacion de APIs
- Generar OpenAPI specs para cada servicio
- Documentar WebSocket protocols
- Crear ejemplos de integracion

### 10.4 Testing
- Unit tests para servicios criticos
- Integration tests para flujos completos
- E2E tests para UI

---

## ANEXO A: ENDPOINTS POR SERVICIO

### Backend (3081)
```
/api/v1/auth/*           - Autenticacion
/api/v1/users/*          - Usuarios
/api/v1/trading/*        - Trading y ordenes
/api/v1/education/*      - Cursos
/api/v1/payments/*       - Pagos
/api/v1/ml/*             - Proxy ML Engine
/api/v1/llm/*            - Proxy LLM Agent
```

### ML Engine (3083)
```
/api/v1/signals/*        - Senales ML
/api/v1/predictions/*    - Predicciones
/api/amd/*               - AMD Detection
/api/ict/*               - ICT Analysis
/api/ensemble/*          - Ensemble signals
/health                  - Health check
```

### LLM Agent (3085)
```
/api/v1/predictions/*    - Analisis completo
/api/v1/backtesting/*    - Backtesting
/api/trade/*             - Ejecucion trades
/api/mt4/*               - Gateway MT4
/chat                    - Chat interface
```

### Data Service (3084)
```
/api/v1/market/*         - Market data
/api/v1/sync/*           - Sincronizacion
/health                  - Health check
```

---

**Documento generado automaticamente**
**Siguiente fase:** FASE 2 - Planeacion basada en analisis
