| id |
title |
type |
project |
updated_date |
| MAP-OQI-003-trading-charts |
Mapa de OQI-003-trading-charts |
Index |
trading-platform |
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
No Funcionales
Técnicos
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