trading-platform/docs/02-definicion-modulos/OQI-007-llm-agent/_MAP.md
Adrian Flores Cortes 618e3220bd [F1-F3] feat: Complete entity types, stores, and documentation
FASE 1 - DDL-Backend Coherence (continued):
- market-data.types.ts: Updated TickerRow, added Ohlcv5mRow, Ohlcv15mRow, OhlcvStagingRow
- llm.types.ts: Updated UserPreferences, UserMemory, Embedding + 3 Row types
- financial.types.ts: +6 types (Invoice, WalletAuditLog, etc.)
- entity.types.ts (trading): +5 types (Symbol, TradingBot, etc.)

FASE 2 - Backend-Frontend Coherence (continued):
- llmStore.ts: New Zustand store with session lifecycle management
- riskStore.ts: New Zustand store for risk assessment
- risk.service.ts: New service with 8 functions
- currency.service.ts: New service with 5 functions

FASE 3 - Documentation:
- OQI-007: Updated to 100% (7 ET, 11 US, 6 RF)
- OQI-008: Added ET-PFM-010-architecture.md, ET-PFM-011-goals-system.md
- Updated all _MAP.md and README.md indexes

Build validation: Backend tsc PASSED, Frontend Vite PASSED

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 22:39:10 -06:00

266 lines
8.7 KiB
Markdown

---
id: "MAP-OQI-007-llm-agent"
title: "Mapa de OQI-007-llm-agent"
type: "Index"
project: "trading-platform"
updated_date: "2026-01-28"
---
# _MAP: OQI-007 - LLM Strategy Agent
**Última actualización:** 2026-01-28
**Estado:** En Progreso (45%)
**Versión:** 1.1.0
---
## Propósito
Esta épica implementa un agente de IA conversacional basado en LLMs que interpreta señales ML, sugiere estrategias de trading, explica decisiones y actúa como copiloto inteligente para los usuarios.
---
## Contenido del Directorio
```
OQI-007-llm-agent/
├── README.md # Documentación técnica principal
├── _MAP.md # Este archivo - índice completo
├── requerimientos/ # Documentos de requerimientos funcionales (6)
│ ├── RF-LLM-001-chat-interface.md # ✅ Interfaz de chat WebSocket
│ ├── RF-LLM-002-market-analysis.md # ✅ Análisis de mercado vía LLM
│ ├── RF-LLM-003-strategy-suggestions.md # ✅ Sugerencias de estrategias
│ ├── RF-LLM-004-educational-assistance.md # ✅ Asistencia educativa
│ ├── RF-LLM-005-tool-integration.md # ✅ Integración de tools (16 tools)
│ └── RF-LLM-006-context-management.md # ✅ Gestión de contexto y memoria
├── especificaciones/ # Especificaciones técnicas (7)
│ ├── ET-LLM-001-arquitectura-chat.md # ✅ Arquitectura WebSocket/Chat
│ ├── ET-LLM-002-agente-analisis.md # ✅ Agente de análisis de mercado
│ ├── ET-LLM-003-motor-estrategias.md # ✅ Motor de estrategias
│ ├── ET-LLM-004-integracion-educacion.md # ✅ Integración educativa
│ ├── ET-LLM-005-arquitectura-tools.md # ✅ Arquitectura de tools
│ ├── ET-LLM-006-gestion-memoria.md # ✅ Gestión de memoria
│ └── ET-LLM-007-frontend.md # ✅ Especificación Frontend completa
├── historias-usuario/ # User Stories (11)
│ ├── US-LLM-001-enviar-mensaje.md # ✅ Enviar mensaje al agente
│ ├── US-LLM-002-gestionar-conversaciones.md # ✅ Gestionar conversaciones
│ ├── US-LLM-003-analisis-simbolo.md # ✅ Solicitar análisis de símbolo
│ ├── US-LLM-004-ver-senales-ml.md # ✅ Ver señales ML via chat
│ ├── US-LLM-005-estrategia-personalizada.md # ✅ Estrategia personalizada
│ ├── US-LLM-006-historial-estrategias.md # ✅ Ver historial de estrategias
│ ├── US-LLM-007-asistencia-educativa.md # ✅ Asistencia educativa
│ ├── US-LLM-008-recomendaciones-aprendizaje.md # ✅ Recomendaciones
│ ├── US-LLM-009-consultar-datos-chat.md # ✅ Consultar datos vía chat
│ ├── US-LLM-010-paper-trading-chat.md # ✅ Paper trading vía chat
│ └── US-LLM-011-ejecutar-trade-desde-chat.md # ✅ Ejecutar trade desde chat
└── implementacion/ # Trazabilidad
└── TRACEABILITY.yml # Mapeo req -> implementación
```
---
## Requerimientos Funcionales
| ID | Nombre | Prioridad | SP | Doc | Impl |
|----|--------|-----------|-----|-----|------|
| RF-LLM-001 | Interfaz de Chat WebSocket | P0 | 8 | ✅ | 40% |
| RF-LLM-002 | Análisis de Mercado vía LLM | P0 | 10 | ✅ | 35% |
| RF-LLM-003 | Sugerencias de Estrategias | P0 | 10 | ✅ | 30% |
| RF-LLM-004 | Asistencia Educativa | P1 | 8 | ✅ | 25% |
| RF-LLM-005 | Integración de Tools | P1 | 8 | ✅ | 50% |
| RF-LLM-006 | Gestión de Contexto y Memoria | P2 | 11 | ✅ | 20% |
**Total:** 55 SP | Documentación: 100% | Implementación: ~45%
---
## Especificaciones Técnicas
| ID | Nombre | Componente | Estado |
|----|--------|------------|--------|
| ET-LLM-001 | Arquitectura Chat | WebSocket Gateway | ✅ Completa |
| ET-LLM-002 | Agente de Análisis | LLM Engine | ✅ Completa |
| ET-LLM-003 | Motor de Estrategias | Strategy Engine | ✅ Completa |
| ET-LLM-004 | Integración Educativa | Education Module | ✅ Completa |
| ET-LLM-005 | Arquitectura Tools | Tool Registry | ✅ Completa |
| ET-LLM-006 | Gestión de Memoria | Context Manager | ✅ Completa |
| ET-LLM-007 | Especificación Frontend | React Components | ✅ Completa |
**Total:** 7 ET (100% documentados)
---
## Historias de Usuario
| ID | Historia | Prioridad | SP | Estado |
|----|----------|-----------|-----|--------|
| US-LLM-001 | Enviar mensaje al agente | P0 | 5 | ✅ Completa |
| US-LLM-002 | Gestionar conversaciones | P0 | 5 | ✅ Completa |
| US-LLM-003 | Solicitar análisis de símbolo | P0 | 8 | ✅ Completa |
| US-LLM-004 | Ver señales ML vía chat | P1 | 8 | ✅ Completa |
| US-LLM-005 | Estrategia personalizada | P1 | 5 | ✅ Completa |
| US-LLM-006 | Ver historial de estrategias | P1 | 5 | ✅ Completa |
| US-LLM-007 | Asistencia educativa | P1 | 5 | ✅ Completa |
| US-LLM-008 | Recomendaciones de aprendizaje | P2 | 3 | ✅ Completa |
| US-LLM-009 | Consultar datos vía chat | P2 | 3 | ✅ Completa |
| US-LLM-010 | Paper trading vía chat | P2 | 8 | ✅ Completa |
| US-LLM-011 | Ejecutar trade desde chat | P0 | 5 | ✅ Completa |
**Total:** 60 SP (100% documentados, 11 historias)
---
## Capacidades del Agente
### Interpretación de Señales ML
- Traducir predicciones numéricas a lenguaje natural
- Contextualizar con indicadores técnicos
- Nivel de confianza y riesgo explicado
### Sugerencia de Estrategias
- Basado en perfil de riesgo del usuario
- Considerando capital disponible
- Adaptado a horizonte temporal
### Explicación de Decisiones
- Por qué se abrió/cerró un trade
- Análisis post-mortem de operaciones
- Lecciones aprendidas
### Modo Proactivo
- Alertas de oportunidades
- Notificaciones de riesgo
- Resumen diario/semanal
---
## Integración con ML Engine
### Datos del TradingAgent existente
El agente LLM consumirá:
```python
# Señales del SignalGenerator
{
"symbol": "BTCUSDT",
"signal": "buy",
"confidence": 0.78,
"phase_amd": "accumulation",
"range_prediction": {
"delta_high": 0.62,
"delta_low": -0.35
},
"tpsl": {
"prob_tp_first": 0.68,
"suggested_sl": 0.7,
"suggested_tp": 0.6
}
}
# Datos para fine-tuning (SignalLogger)
{
"messages": [...],
"outcome": "profit",
"pnl_percent": 1.2
}
```
---
## Tools Disponibles
| Tool | Descripción | Parámetros |
|------|-------------|------------|
| `get_signal` | Obtener señal ML actual | symbol, horizon |
| `analyze_chart` | Análisis técnico | symbol, timeframe |
| `get_portfolio` | Estado del portfolio | user_id |
| `execute_trade` | Ejecutar orden | symbol, side, amount |
| `set_alert` | Crear alerta | symbol, condition |
| `get_history` | Historial de precios | symbol, period |
| `explain_indicator` | Explicar indicador | indicator_name |
---
## Límites por Plan
| Plan | Mensajes/día | Tools | Proactivo | Fine-tune |
|------|--------------|-------|-----------|-----------|
| Free | 10 | 3 básicos | ❌ | ❌ |
| Basic | 50 | 5 | ❌ | ❌ |
| Pro | 200 | Todos | ✅ | ❌ |
| Premium | Ilimitado | Todos + API | ✅ Personalizado | ✅ |
---
## Dependencias
### Depende de:
- **OQI-001:** Autenticación (usuarios, sesiones)
- **OQI-006:** ML Signals (predicciones, señales)
- **TradingAgent:** SignalLogger, modelos existentes
### Bloquea:
- Ninguna (épica independiente)
---
## Stack Técnico
| Capa | Tecnología | Uso |
|------|------------|-----|
| LLM Provider | Claude API / OpenAI | Modelo base |
| Orquestación | LangChain / Claude SDK | Flujo de agente |
| Vector DB | Pinecone | RAG para contexto |
| Memory | Redis | Historial de conversación |
| API | FastAPI | Endpoints del agente |
| Frontend | React | Chat UI |
| Fine-tuning | OpenAI/Anthropic API | Mejora continua |
---
## Criterios de Aceptación
### Funcionales
- [ ] Agente responde preguntas sobre señales ML
- [ ] Explica decisiones de trading en lenguaje claro
- [ ] Sugiere estrategias personalizadas
- [ ] Puede ejecutar órdenes con confirmación
- [ ] Envía alertas proactivas configurables
- [ ] Mantiene contexto de conversación
### No Funcionales
- [ ] Respuesta en < 3 segundos
- [ ] Disponibilidad 99.5%
- [ ] Precisión de respuestas > 90%
### Técnicos
- [ ] Integración con ML Engine existente
- [ ] Pipeline de fine-tuning automatizado
- [ ] Logs para análisis de calidad
---
## Hitos
| Hito | Entregables | Target |
|------|-------------|--------|
| M1 | Chat básico + interpretación señales | Sprint 9 |
| M2 | Tools completos + explicaciones | Sprint 10 |
| M3 | Modo proactivo + alertas | Sprint 10 |
| M4 | Fine-tuning + mejora continua | Sprint 11 |
---
## Referencias
- [README Principal](./README.md)
- [OQI-006: ML Signals](../OQI-006-ml-signals/)
- [TradingAgent SignalLogger]([LEGACY: apps/ml-engine - migrado desde TradingAgent]/src/utils/signal_logger.py)
- [Anthropic Claude API](https://docs.anthropic.com/)