--- id: "MAP-OQI-003-trading-charts" title: "Mapa de OQI-003-trading-charts" type: "Index" project: "trading-platform" updated_date: "2026-01-04" --- # _MAP: OQI-003 - Trading y Charts **Última actualización:** 2025-12-05 **Estado:** Pendiente **Versión:** 1.0.0 --- ## Propósito Esta épica implementa la plataforma de trading con charts profesionales usando Lightweight Charts, indicadores técnicos, watchlists personalizables y sistema de paper trading para simulación. --- ## Contenido del Directorio ``` OQI-003-trading-charts/ ├── README.md # Resumen ejecutivo de la épica ├── _MAP.md # Este archivo - índice ├── requerimientos/ # Documentos de requerimientos funcionales │ ├── RF-TRD-001-charts.md # Charts y visualización │ ├── RF-TRD-002-indicadores.md # Indicadores técnicos │ ├── RF-TRD-003-watchlists.md # Gestión de watchlists │ ├── RF-TRD-004-paper-trading.md # Paper trading │ ├── RF-TRD-005-ordenes.md # Sistema de órdenes │ ├── RF-TRD-006-posiciones.md # Gestión de posiciones │ ├── RF-TRD-007-historial.md # Historial y trades │ └── RF-TRD-008-metricas.md # Métricas y estadísticas ├── especificaciones/ # Especificaciones técnicas │ ├── ET-TRD-001-market-data.md # Obtención de datos de mercado │ ├── ET-TRD-002-websocket.md # Conexiones WebSocket │ ├── ET-TRD-003-database.md # Modelo de datos │ ├── ET-TRD-004-api.md # Endpoints REST │ ├── ET-TRD-005-frontend.md # Componentes React │ ├── ET-TRD-006-indicadores.md # Cálculo de indicadores │ ├── ET-TRD-007-paper-engine.md # Motor de paper trading │ └── ET-TRD-008-performance.md # Optimizaciones ├── historias-usuario/ # User Stories │ ├── US-TRD-001-ver-chart.md │ ├── US-TRD-002-cambiar-timeframe.md │ ├── US-TRD-003-agregar-indicador.md │ ├── US-TRD-004-crear-watchlist.md │ ├── US-TRD-005-agregar-simbolo.md │ ├── US-TRD-006-crear-orden-market.md │ ├── US-TRD-007-crear-orden-limit.md │ ├── US-TRD-008-cerrar-posicion.md │ ├── US-TRD-009-ver-posiciones.md │ ├── US-TRD-010-ver-historial.md │ ├── US-TRD-011-ver-estadisticas.md │ ├── US-TRD-012-configurar-tp-sl.md │ ├── US-TRD-013-alertas-precio.md │ ├── US-TRD-014-reset-balance.md │ ├── US-TRD-015-exportar-trades.md │ ├── US-TRD-016-modo-oscuro-chart.md │ ├── US-TRD-017-zoom-pan-chart.md │ └── US-TRD-018-comparar-simbolos.md └── implementacion/ # Trazabilidad de implementación └── TRACEABILITY.yml ``` --- ## Requerimientos Funcionales | ID | Nombre | Prioridad | SP | Estado | |----|--------|-----------|-----|--------| | RF-TRD-001 | Charts y Visualización | P0 | 8 | Pendiente | | RF-TRD-002 | Indicadores Técnicos | P1 | 5 | Pendiente | | RF-TRD-003 | Gestión de Watchlists | P1 | 5 | Pendiente | | RF-TRD-004 | Paper Trading | P0 | 13 | Pendiente | | RF-TRD-005 | Sistema de Órdenes | P0 | 8 | Pendiente | | RF-TRD-006 | Gestión de Posiciones | P0 | 5 | Pendiente | | RF-TRD-007 | Historial y Trades | P1 | 5 | Pendiente | | RF-TRD-008 | Métricas y Estadísticas | P2 | 6 | Pendiente | **Total:** 55 SP --- ## Especificaciones Técnicas | ID | Nombre | Componente | Estado | |----|--------|------------|--------| | ET-TRD-001 | Market Data | Backend | Pendiente | | ET-TRD-002 | WebSocket | Backend/Frontend | Pendiente | | ET-TRD-003 | Database | Database | ✅ Schema existe | | ET-TRD-004 | API REST | Backend | Pendiente | | ET-TRD-005 | Frontend | Frontend | Pendiente | | ET-TRD-006 | Indicadores | Backend/ML | Pendiente | | ET-TRD-007 | Paper Engine | Backend | Pendiente | | ET-TRD-008 | Performance | All | Pendiente | --- ## Historias de Usuario | ID | Historia | Prioridad | SP | Estado | |----|----------|-----------|-----|--------| | US-TRD-001 | Ver chart de un símbolo | P0 | 5 | Pendiente | | US-TRD-002 | Cambiar timeframe | P0 | 2 | Pendiente | | US-TRD-003 | Agregar indicador al chart | P1 | 3 | Pendiente | | US-TRD-004 | Crear watchlist | P1 | 2 | Pendiente | | US-TRD-005 | Agregar símbolo a watchlist | P1 | 2 | Pendiente | | US-TRD-006 | Crear orden market | P0 | 5 | Pendiente | | US-TRD-007 | Crear orden limit | P1 | 3 | Pendiente | | US-TRD-008 | Cerrar posición | P0 | 3 | Pendiente | | US-TRD-009 | Ver posiciones abiertas | P0 | 3 | Pendiente | | US-TRD-010 | Ver historial de trades | P1 | 3 | Pendiente | | US-TRD-011 | Ver estadísticas de rendimiento | P1 | 3 | Pendiente | | US-TRD-012 | Configurar TP/SL | P1 | 3 | Pendiente | | US-TRD-013 | Configurar alertas de precio | P2 | 3 | Pendiente | | US-TRD-014 | Resetear balance paper | P2 | 1 | Pendiente | | US-TRD-015 | Exportar trades a CSV | P2 | 2 | Pendiente | | US-TRD-016 | Modo oscuro en chart | P2 | 2 | Pendiente | | US-TRD-017 | Zoom y pan en chart | P1 | 3 | Pendiente | | US-TRD-018 | Comparar múltiples símbolos | P2 | 5 | Pendiente | **Total:** 55 SP --- ## Dependencias ### Depende de: - **OQI-001:** Autenticación (usuarios, JWT) - ✅ Completado ### Bloquea: - **OQI-006:** ML Signals (integración con charts) --- ## Stack Técnico | Capa | Tecnología | Uso | |------|------------|-----| | Frontend | Lightweight Charts | Renderizado de velas | | Frontend | React + Zustand | Estado y componentes | | Backend | Express.js | API REST | | Backend | ws | WebSocket server | | Database | PostgreSQL | Persistencia | | External | Binance API | Datos de mercado | --- ## Criterios de Aceptación ### Funcionales - [ ] Charts renderizan correctamente con datos de Binance - [ ] 7 timeframes disponibles y funcionales - [ ] Mínimo 5 indicadores técnicos implementados - [ ] Watchlists CRUD completo - [ ] Paper trading ejecuta órdenes market y limit - [ ] Posiciones se actualizan en tiempo real - [ ] Historial muestra todos los trades cerrados - [ ] Métricas calculan win rate y P&L correctamente ### No Funcionales - [ ] Chart carga en < 2 segundos - [ ] Updates en tiempo real < 500ms latencia - [ ] Soporta 1000+ velas sin lag - [ ] Mobile responsive ### Técnicos - [ ] Cobertura de tests > 70% - [ ] Documentación API completa - [ ] Sin memory leaks en WebSocket --- ## Hitos | Hito | Entregables | Target | |------|-------------|--------| | M1 | Charts básicos + timeframes | Sprint 3 | | M2 | Indicadores + watchlists | Sprint 3 | | M3 | Paper trading completo | Sprint 4 | | M4 | Métricas + polish | Sprint 4 | --- ## Referencias - [README Principal](./README.md) - [Vision del Producto](../../00-vision-general/VISION-PRODUCTO.md) - [Arquitectura](../../00-vision-general/ARQUITECTURA-GENERAL.md) - [_MAP Fase MVP](../_MAP.md)