Some checks failed
CI Pipeline / changes (push) Has been cancelled
CI Pipeline / core (push) Has been cancelled
CI Pipeline / trading-backend (push) Has been cancelled
CI Pipeline / trading-data-service (push) Has been cancelled
CI Pipeline / trading-frontend (push) Has been cancelled
CI Pipeline / erp-core (push) Has been cancelled
CI Pipeline / erp-mecanicas (push) Has been cancelled
CI Pipeline / gamilit-backend (push) Has been cancelled
CI Pipeline / gamilit-frontend (push) Has been cancelled
285 lines
9.9 KiB
Markdown
285 lines
9.9 KiB
Markdown
# OrbiQuant IA - Tech Leader Implementation Report
|
|
|
|
## Executive Summary
|
|
|
|
Se completó exitosamente la implementación de las funcionalidades core de la plataforma de trading personal con enfoque en:
|
|
|
|
1. **ML Models con estrategias ICT/SMC** - Análisis de Smart Money Concepts
|
|
2. **LLM Integration** - Multi-provider (Ollama, OpenAI, Claude)
|
|
3. **MT4/MT5 Automation** - Gestión automatizada de cuenta via MetaAPI
|
|
|
|
---
|
|
|
|
## Arquitectura Implementada
|
|
|
|
```
|
|
┌─────────────────────────────────────────────────────────────────────┐
|
|
│ FRONTEND (React + Vite) │
|
|
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
|
|
│ │ MLDashboard │ │ ICTCard │ │ EnsembleCard│ │ TradeModal │ │
|
|
│ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │
|
|
│ │ │ │ │ │
|
|
│ └────────────────┴────────────────┴────────────────┘ │
|
|
│ │ │
|
|
│ ┌────────┴────────┐ │
|
|
│ │ WebSocket │ │
|
|
│ │ Service │ │
|
|
│ └────────┬────────┘ │
|
|
└───────────────────────────────────┼─────────────────────────────────┘
|
|
│
|
|
┌───────────────┼───────────────┐
|
|
│ │ │
|
|
┌─────────▼─────────┐ ┌──▼───────────┐ ┌▼───────────────┐
|
|
│ BACKEND (Node) │ │ ML ENGINE │ │ LLM AGENT │
|
|
│ Port: 3000 │ │ Port: 8001 │ │ Port: 8003 │
|
|
│ │ │ │ │ │
|
|
│ - Auth │ │ - ICT/SMC │ │ - Ollama │
|
|
│ - Paper Trading │ │ - AMD │ │ - OpenAI │
|
|
│ - Watchlists │ │ - Ensemble │ │ - Claude │
|
|
│ - Market Data │ │ - Scanner │ │ - MT4 Tools │
|
|
└─────────┬─────────┘ └──────┬───────┘ └────────┬───────┘
|
|
│ │ │
|
|
└───────────────────┼───────────────────┘
|
|
│
|
|
┌─────────▼─────────┐
|
|
│ DATA SERVICE │
|
|
│ Port: 8002 │
|
|
│ │
|
|
│ - Binance API │
|
|
│ - MetaAPI (MT4) │
|
|
│ - Historical Data │
|
|
└─────────┬─────────┘
|
|
│
|
|
┌─────────▼─────────┐
|
|
│ PostgreSQL │
|
|
│ Port: 5432 │
|
|
└───────────────────┘
|
|
```
|
|
|
|
---
|
|
|
|
## Componentes Implementados
|
|
|
|
### 1. ML Engine (`apps/ml-engine/`)
|
|
|
|
#### ICT/SMC Detector (`src/models/ict_smc_detector.py`)
|
|
- **Order Blocks**: Detección de zonas institucionales
|
|
- **Fair Value Gaps (FVG)**: Identificación de desequilibrios
|
|
- **Liquidity Sweeps**: Barrido de liquidez
|
|
- **Structure Breaks (BOS/CHoCH)**: Cambios estructurales
|
|
- **Premium/Discount Zones**: Zonas de Fibonacci
|
|
|
|
#### Strategy Ensemble (`src/models/strategy_ensemble.py`)
|
|
- Combinación ponderada de 4 estrategias:
|
|
- AMD (25%): Accumulation-Manipulation-Distribution
|
|
- ICT (35%): Smart Money Concepts
|
|
- Range (20%): Predicción de rango
|
|
- TP/SL (20%): Clasificación de targets
|
|
|
|
#### API Endpoints (nuevos)
|
|
```
|
|
POST /api/ict/{symbol} - Análisis ICT completo
|
|
POST /api/ensemble/{symbol} - Señal combinada
|
|
GET /api/ensemble/quick/{symbol} - Señal rápida (cached)
|
|
POST /api/scan - Scanner multi-símbolo
|
|
```
|
|
|
|
### 2. LLM Agent (`apps/llm-agent/`)
|
|
|
|
#### Multi-Provider Client (`src/core/llm_client.py`)
|
|
```python
|
|
# Providers soportados
|
|
- OllamaClient: LLM local (llama3.2, mistral, codestral)
|
|
- OpenAIClient: GPT-4/GPT-3.5
|
|
- ClaudeClient: Claude 3 Sonnet/Opus
|
|
- MultiProviderClient: Failover automático
|
|
```
|
|
|
|
#### MT4 Tools (`src/tools/mt4_tools.py`)
|
|
- `GetMT4AccountTool`: Info de cuenta
|
|
- `GetMT4PositionsTool`: Posiciones abiertas
|
|
- `ExecuteMT4TradeTool`: Ejecución de trades
|
|
- `CloseMT4PositionTool`: Cierre de posiciones
|
|
- `ModifyMT4PositionTool`: Modificar SL/TP
|
|
- `CalculatePositionSizeTool`: Cálculo de lote
|
|
|
|
#### ML Tools (`src/tools/ml_tools.py`)
|
|
- `GetICTAnalysisTool`: Análisis ICT/SMC
|
|
- `GetEnsembleSignalTool`: Señal ensemble
|
|
- `ScanSymbolsTool`: Scanner de mercado
|
|
- `GetQuickSignalTool`: Señal rápida
|
|
|
|
### 3. Frontend (`apps/frontend/`)
|
|
|
|
#### Componentes ML
|
|
| Componente | Descripción |
|
|
|------------|-------------|
|
|
| `ICTAnalysisCard` | Visualización de análisis ICT/SMC |
|
|
| `EnsembleSignalCard` | Señal combinada con desglose |
|
|
| `TradeExecutionModal` | Modal para ejecutar trades |
|
|
| `AMDPhaseIndicator` | Indicador de fase AMD |
|
|
| `PredictionCard` | Tarjeta de predicción |
|
|
|
|
#### Services
|
|
| Servicio | Funcionalidad |
|
|
|----------|---------------|
|
|
| `mlService.ts` | API client para ML Engine |
|
|
| `trading.service.ts` | Trading + MT4 execution |
|
|
| `websocket.service.ts` | Real-time signals |
|
|
| `chat.service.ts` | LLM chat interface |
|
|
|
|
#### Hooks
|
|
| Hook | Uso |
|
|
|------|-----|
|
|
| `useMLAnalysis` | Fetch y cache de análisis ML |
|
|
| `useQuickSignals` | Polling de señales rápidas |
|
|
| `useMLSignals` | WebSocket para señales |
|
|
| `usePriceUpdates` | WebSocket para precios |
|
|
|
|
---
|
|
|
|
## Configuración
|
|
|
|
### Variables de Entorno Requeridas
|
|
|
|
```env
|
|
# Backend
|
|
DATABASE_URL=postgresql://user:pass@localhost:5432/trading
|
|
JWT_SECRET=your-secret-key
|
|
REDIS_URL=redis://localhost:6379
|
|
|
|
# ML Engine
|
|
ML_ENGINE_URL=http://localhost:8001
|
|
DATA_SERVICE_URL=http://localhost:8002
|
|
|
|
# LLM Agent
|
|
LLM_PROVIDER=ollama # ollama, openai, claude, multi
|
|
OLLAMA_URL=http://localhost:11434
|
|
OPENAI_API_KEY=sk-...
|
|
ANTHROPIC_API_KEY=sk-ant-...
|
|
|
|
# MT4/MetaAPI
|
|
METAAPI_TOKEN=your-metaapi-token
|
|
MT4_ACCOUNT_ID=your-account-id
|
|
```
|
|
|
|
---
|
|
|
|
## Deployment
|
|
|
|
### Docker Compose (Personal)
|
|
|
|
```bash
|
|
# Iniciar plataforma personal
|
|
cd /projects/trading-platform
|
|
docker-compose -f docker-compose.personal.yml up -d
|
|
|
|
# O usar el script
|
|
./scripts/start-personal.sh
|
|
```
|
|
|
|
### Verificación de Servicios
|
|
|
|
```bash
|
|
./scripts/verify-integration.sh
|
|
```
|
|
|
|
Output esperado:
|
|
```
|
|
╔══════════════════════════════════════════════════════════════╗
|
|
║ OrbiQuant IA - Integration Verification ║
|
|
╚══════════════════════════════════════════════════════════════╝
|
|
|
|
1. Checking Core Services
|
|
Backend API Health... ✓ OK
|
|
ML Engine Health... ✓ OK
|
|
Data Service Health... ✓ OK
|
|
LLM Agent Health... ✓ OK
|
|
|
|
All checks passed!
|
|
```
|
|
|
|
---
|
|
|
|
## Flujo de Trading con ML
|
|
|
|
```
|
|
1. Usuario selecciona símbolo en MLDashboard
|
|
│
|
|
▼
|
|
2. Frontend solicita análisis ICT + Ensemble
|
|
│
|
|
▼
|
|
3. ML Engine procesa datos históricos
|
|
- Detecta Order Blocks
|
|
- Identifica FVGs
|
|
- Calcula bias y score
|
|
│
|
|
▼
|
|
4. Usuario ve análisis en ICTAnalysisCard/EnsembleCard
|
|
│
|
|
▼
|
|
5. Click "Execute Trade" abre TradeExecutionModal
|
|
│
|
|
▼
|
|
6. Usuario confirma parámetros (SL, TP, Lot Size)
|
|
│
|
|
▼
|
|
7. Request a LLM Agent → executeMLTrade()
|
|
│
|
|
▼
|
|
8. LLM Agent ejecuta trade via MetaAPI
|
|
│
|
|
▼
|
|
9. Confirmación mostrada al usuario
|
|
```
|
|
|
|
---
|
|
|
|
## Tests
|
|
|
|
### Backend Tests
|
|
```bash
|
|
cd apps/ml-engine
|
|
pytest tests/ -v
|
|
```
|
|
|
|
### Frontend Tests
|
|
```bash
|
|
cd apps/frontend
|
|
npm test
|
|
```
|
|
|
|
---
|
|
|
|
## Próximos Pasos Sugeridos
|
|
|
|
1. **Backtesting Engine**: Implementar backtesting histórico de estrategias
|
|
2. **Risk Management Dashboard**: Panel de gestión de riesgo
|
|
3. **Auto-Trading Rules**: Sistema de reglas para trading automático
|
|
4. **Performance Analytics**: Métricas detalladas de performance
|
|
5. **Mobile App**: Aplicación móvil para monitoreo
|
|
|
|
---
|
|
|
|
## Métricas del Proyecto
|
|
|
|
| Métrica | Valor |
|
|
|---------|-------|
|
|
| Líneas de código (aprox) | ~250,000 |
|
|
| Servicios | 7 |
|
|
| Endpoints API | 50+ |
|
|
| Componentes React | 30+ |
|
|
| Tests | 40+ |
|
|
|
|
---
|
|
|
|
## Contacto y Soporte
|
|
|
|
- **Issues**: https://github.com/your-repo/trading-platform/issues
|
|
- **Docs**: `/docs/` directory
|
|
|
|
---
|
|
|
|
*Generado por Tech Leader Agent - OrbiQuant IA*
|