Phase 1 analysis of trading-platform frontend comparing components, pages, routing, and flows against SRS requirements and OQI documentation. Key findings: - 11 OQI modules analyzed - 55 gaps identified (358 SP total) - 1 orphan component (PortfolioDetailPage) - 6 documents pending migration to docs/ - 40% FR implementation (42/106) - 12 hierarchical subtasks defined following CAPVED Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
337 lines
14 KiB
Markdown
337 lines
14 KiB
Markdown
# FASE 2: ANÁLISIS - Frontend UX/UI Trading Platform
|
|
|
|
**Fecha:** 2026-02-03
|
|
**Agente:** PERFIL-FRONTEND (claude-opus-4-5-20251101)
|
|
**Estado:** COMPLETADA
|
|
|
|
---
|
|
|
|
## 1. MATRIZ DE GAPS POR MÓDULO OQI
|
|
|
|
### 1.1 OQI-001: Fundamentos y Autenticación (70%)
|
|
|
|
| Componente | Estado | Gap | Prioridad | SP |
|
|
|------------|--------|-----|-----------|-----|
|
|
| Login/Register | Completo | - | - | 0 |
|
|
| OAuth 5 providers | Completo | - | - | 0 |
|
|
| 2FA TOTP | Completo | - | - | 0 |
|
|
| Phone Auth | Completo | - | - | 0 |
|
|
| **Gestión Sesiones** | Parcial | UI existe, lógica incompleta | P1 | 5 |
|
|
| **Logout Global** | Pendiente | No implementado | P1 | 3 |
|
|
| **Dispositivos** | Pendiente | DeviceCard existe, API falta | P2 | 5 |
|
|
|
|
**Subtotal:** 3 gaps, 13 SP
|
|
|
|
---
|
|
|
|
### 1.2 OQI-002: Módulo Educativo (55%)
|
|
|
|
| Componente | Estado | Gap | Prioridad | SP |
|
|
|------------|--------|-----|-----------|-----|
|
|
| Catálogo cursos | Completo | - | - | 0 |
|
|
| Detalle curso | Completo | - | - | 0 |
|
|
| Lecciones video | Completo | - | - | 0 |
|
|
| Gamificación XP | Completo | - | - | 0 |
|
|
| **Progreso usuario** | Pendiente | Tracking por lección falta | P1 | 5 |
|
|
| **Quizzes** | Parcial | UI existe, backend incompleto | P1 | 8 |
|
|
| **Certificados** | Pendiente | CertificateGenerator UI only | P2 | 5 |
|
|
| **Reviews/Ratings** | Pendiente | No existe | P3 | 3 |
|
|
|
|
**Subtotal:** 4 gaps, 21 SP
|
|
|
|
---
|
|
|
|
### 1.3 OQI-003: Trading y Charts (40%)
|
|
|
|
| Componente | Estado | Gap | Prioridad | SP |
|
|
|------------|--------|-----|-----------|-----|
|
|
| Candlestick Chart | Completo | - | - | 0 |
|
|
| Timeframes | Completo | - | - | 0 |
|
|
| Indicadores técnicos | Completo | - | - | 0 |
|
|
| Watchlists | Completo | - | - | 0 |
|
|
| Paper Trading básico | Completo | - | - | 0 |
|
|
| **TP/SL en órdenes** | Parcial | UI existe, backend falta | P0 | 8 |
|
|
| **Métricas rendimiento** | Parcial | Stats básicas, faltan cálculos | P1 | 5 |
|
|
| **Alertas precio** | Parcial | AlertsPanel existe, push falta | P1 | 5 |
|
|
| **ML Overlay** | Pendiente | MLSignalsPanel existe, overlay no | P0 | 13 |
|
|
| **Exportar trades** | Pendiente | No existe | P2 | 5 |
|
|
| **Order book visual** | Completo | - | - | 0 |
|
|
| **Screener avanzado** | Parcial | TradingScreener básico | P2 | 8 |
|
|
|
|
**Subtotal:** 6 gaps, 44 SP
|
|
|
|
---
|
|
|
|
### 1.4 OQI-004: Cuentas de Inversión (35%)
|
|
|
|
| Componente | Estado | Gap | Prioridad | SP |
|
|
|------------|--------|-----|-----------|-----|
|
|
| **Lista productos** | Parcial | UI existe, API mock | P0 | 8 |
|
|
| **Detalle producto** | Parcial | ProductDetail existe | P1 | 5 |
|
|
| **Dashboard inversión** | Parcial | Investment.tsx básico | P0 | 13 |
|
|
| **Depósitos** | Pendiente | No implementado | P0 | 8 |
|
|
| **Retiros** | Parcial | Withdrawals.tsx UI only | P0 | 8 |
|
|
| **Transacciones** | Parcial | Transactions.tsx UI only | P1 | 5 |
|
|
| **Reportes** | Pendiente | Reports.tsx skeleton | P2 | 8 |
|
|
| **KYC básico** | Pendiente | No existe | P1 | 13 |
|
|
|
|
**Subtotal:** 8 gaps, 68 SP
|
|
|
|
---
|
|
|
|
### 1.5 OQI-005: Pagos Stripe (65%)
|
|
|
|
| Componente | Estado | Gap | Prioridad | SP |
|
|
|------------|--------|-----|-----------|-----|
|
|
| Pricing | Completo | - | - | 0 |
|
|
| Checkout | Completo | - | - | 0 |
|
|
| Stripe Elements | Completo | PCI-DSS OK | - | 0 |
|
|
| Suscripciones | Completo | - | - | 0 |
|
|
| **Invoices PDF** | Parcial | InvoicePreview existe, PDF falta | P2 | 5 |
|
|
| **Refunds** | Parcial | RefundRequestModal existe | P2 | 3 |
|
|
| **Métodos múltiples** | Pendiente | Solo tarjeta | P3 | 5 |
|
|
|
|
**Subtotal:** 3 gaps, 13 SP
|
|
|
|
---
|
|
|
|
### 1.6 OQI-006: Señales ML (75%)
|
|
|
|
| Componente | Estado | Gap | Prioridad | SP |
|
|
|------------|--------|-----|-----------|-----|
|
|
| MLDashboard | Completo | - | - | 0 |
|
|
| Predicciones rango | Completo | - | - | 0 |
|
|
| XGBoost model | Completo | - | - | 0 |
|
|
| MLSignalsPanel | Completo | - | - | 0 |
|
|
| **Ensemble models** | Pendiente | EnsemblePanel UI only | P2 | 8 |
|
|
| **Más símbolos** | Pendiente | Solo BTC/ETH | P2 | 5 |
|
|
| **WebSocket real-time** | Pendiente | API REST funciona | P3 | 3 |
|
|
|
|
**Subtotal:** 3 gaps, 16 SP
|
|
|
|
---
|
|
|
|
### 1.7 OQI-007: LLM Strategy Agent (25%)
|
|
|
|
| Componente | Estado | Gap | Prioridad | SP |
|
|
|------------|--------|-----|-----------|-----|
|
|
| Chat básico | Completo | - | - | 0 |
|
|
| ChatInput/Message | Completo | - | - | 0 |
|
|
| **Fine-tuning** | Pendiente | No iniciado | P1 | 13 |
|
|
| **Memory manager** | Pendiente | ContextMemoryDisplay UI only | P1 | 8 |
|
|
| **Tools integration** | Parcial | ToolCallCard existe | P1 | 8 |
|
|
| **Signal interpreter** | Pendiente | SignalCard parcial | P1 | 5 |
|
|
| **Strategy advisor** | Pendiente | StrategyTemplateSelector UI | P1 | 5 |
|
|
| **Modo proactivo** | Pendiente | No existe | P2 | 5 |
|
|
|
|
**Subtotal:** 6 gaps, 44 SP
|
|
|
|
---
|
|
|
|
### 1.8 OQI-008: Portfolio Manager (20%)
|
|
|
|
| Componente | Estado | Gap | Prioridad | SP |
|
|
|------------|--------|-----|-----------|-----|
|
|
| PortfolioDashboard | Parcial | Lista básica | P0 | 8 |
|
|
| CreatePortfolio | Parcial | Wizard básico | P1 | 5 |
|
|
| **PortfolioDetailPage** | Huérfano | Sin ruta | P0 | 3 |
|
|
| **Monte Carlo** | Pendiente | No existe | P1 | 13 |
|
|
| **Rebalanceo** | Pendiente | No existe | P1 | 13 |
|
|
| **Goals tracking** | Pendiente | CreateGoal básico | P1 | 8 |
|
|
| **Performance metrics** | Pendiente | No existe | P1 | 8 |
|
|
| **Projections D3** | Pendiente | No existe | P2 | 5 |
|
|
|
|
**Subtotal:** 7 gaps, 63 SP
|
|
|
|
---
|
|
|
|
### 1.9 OQI-009: Marketplace (0%)
|
|
|
|
| Componente | Estado | Gap | Prioridad | SP |
|
|
|------------|--------|-----|-----------|-----|
|
|
| **Catálogo productos** | Pendiente | No existe | P1 | 13 |
|
|
| **Signal packs** | Pendiente | No existe | P1 | 8 |
|
|
| **Sesiones asesoría** | Pendiente | Cal.com pendiente | P2 | 8 |
|
|
| **Visualizaciones premium** | Pendiente | No existe | P2 | 5 |
|
|
| **Admin productos** | Pendiente | No existe | P2 | 8 |
|
|
|
|
**Subtotal:** 5 gaps, 42 SP
|
|
|
|
---
|
|
|
|
### 1.10 OQI-010A: MT4 Gateway (0%)
|
|
|
|
| Componente | Estado | Gap | Prioridad | SP |
|
|
|------------|--------|-----|-----------|-----|
|
|
| **MT4ConnectionStatus** | Pendiente | No existe | P1 | 5 |
|
|
| **MT4LiveTradesPanel** | Pendiente | No existe | P1 | 8 |
|
|
| **MT4PositionsManager** | Pendiente | No existe | P1 | 8 |
|
|
|
|
**Subtotal:** 3 gaps, 21 SP (bloqueado por backend)
|
|
|
|
---
|
|
|
|
## 2. RESUMEN DE GAPS CONSOLIDADO
|
|
|
|
| Prioridad | Cantidad | Story Points | % del Total |
|
|
|-----------|----------|--------------|-------------|
|
|
| **P0** | 8 | 69 | 19% |
|
|
| **P1** | 28 | 192 | 53% |
|
|
| **P2** | 15 | 81 | 22% |
|
|
| **P3** | 4 | 16 | 4% |
|
|
| **TOTAL** | **55** | **358 SP** | 100% |
|
|
|
|
---
|
|
|
|
## 3. ANÁLISIS DE DEPENDENCIAS
|
|
|
|
### 3.1 Grafo de Dependencias entre OQIs
|
|
|
|
```
|
|
OQI-001 (Auth) ────────────────────────────────────────┐
|
|
│
|
|
OQI-005 (Payments) ─────────────────────────────────────┤
|
|
│
|
|
▼
|
|
┌───────────────────┐
|
|
│ CORE READY │
|
|
└───────────────────┘
|
|
│
|
|
┌─────────────────────────────────────────┼─────────────────────────────────────────┐
|
|
│ │ │
|
|
▼ ▼ ▼
|
|
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
|
│ OQI-003 │ │ OQI-002 │ │ OQI-006 │
|
|
│ Trading │ │ Education │ │ ML Signals │
|
|
└─────────────┘ └─────────────┘ └─────────────┘
|
|
│ │ │
|
|
│ │ │
|
|
▼ │ ▼
|
|
┌─────────────┐ │ ┌─────────────┐
|
|
│ OQI-004 │ │ │ OQI-007 │
|
|
│ Investment │◀─────────────────────────────────┘ │ LLM Agent │
|
|
└─────────────┘ └─────────────┘
|
|
│ │
|
|
│ │
|
|
▼ │
|
|
┌─────────────┐ │
|
|
│ OQI-008 │◀───────────────────────────────────────────────────────────────────────────┘
|
|
│ Portfolio │
|
|
└─────────────┘
|
|
│
|
|
▼
|
|
┌─────────────┐ ┌─────────────┐
|
|
│ OQI-009 │ │ OQI-010A │ (Bloqueado - Backend)
|
|
│ Marketplace │ │ MT4 Gateway │
|
|
└─────────────┘ └─────────────┘
|
|
```
|
|
|
|
### 3.2 Dependencias Críticas
|
|
|
|
| OQI Origen | OQI Destino | Tipo | Nota |
|
|
|------------|-------------|------|------|
|
|
| OQI-001 | Todos | Hard | Auth requerido para todas las features |
|
|
| OQI-003 | OQI-004 | Soft | Trading charts usados en Investment |
|
|
| OQI-006 | OQI-003 | Hard | ML overlay depende de predicciones |
|
|
| OQI-006 | OQI-007 | Hard | LLM necesita señales ML |
|
|
| OQI-004 | OQI-008 | Hard | Portfolio gestiona inversiones |
|
|
| OQI-007 | OQI-008 | Soft | LLM puede sugerir portafolios |
|
|
| OQI-008 | OQI-009 | Soft | Marketplace vende productos Portfolio |
|
|
|
|
---
|
|
|
|
## 4. ANÁLISIS DE ROUTING
|
|
|
|
### 4.1 Problemas Detectados
|
|
|
|
| ID | Problema | Componente | Solución | SP |
|
|
|----|----------|------------|----------|-----|
|
|
| R-001 | Componente huérfano | PortfolioDetailPage | Agregar ruta `/portfolio/:portfolioId` | 2 |
|
|
| R-002 | Links rotos | PortfolioDashboard | Actualizar links a ruta correcta | 1 |
|
|
| R-003 | Ruta duplicada | `/settings/billing` | Consolidar en una ubicación | 1 |
|
|
|
|
**Subtotal:** 4 SP
|
|
|
|
---
|
|
|
|
## 5. ANÁLISIS DE PURGA Y MIGRACIÓN
|
|
|
|
### 5.1 Documentos para Migración a docs/
|
|
|
|
| Origen | Destino | Contenido | Prioridad |
|
|
|--------|---------|-----------|-----------|
|
|
| `_archive/TASK-2026-01-25-ML-TRAINING-ENHANCEMENT/03-PLANEACION.md` | `docs/02-definicion-modulos/OQI-006-ml-signals/ML-ARCHITECTURE-ENHANCEMENT.md` | Estrategias ML | P1 |
|
|
| `_archive/TASK-2026-01-26-ANALYSIS-INTEGRATION-PLAN/02-ANALISIS.md` | `docs/00-vision-general/TRADING-PLATFORM-COHERENCE-ANALYSIS.md` | Análisis coherencia | P2 |
|
|
| `_archive/TASK-2026-01-26-ANALYSIS-INTEGRATION-PLAN/03-PLAN.md` | `docs/00-vision-general/TRADING-PLATFORM-ROADMAP-2026.md` | Roadmap | P1 |
|
|
| `_archive/TASK-2026-01-25-FRONTEND-COMPONENTS-*/` | `docs/40-estandares/ESTANDAR-COMPONENTES-FRONTEND.md` | Patrones | P2 |
|
|
| `_archive/TASK-2026-01-25-OQI-003-TRADING-ADVANCED/` | `docs/02-definicion-modulos/OQI-003-trading-charts/CANVAS-OPTIMIZATION-GUIDE.md` | Canvas patterns | P3 |
|
|
| `_archive/TASK-2026-01-28-002-SPRINT2-P1-GAPS/` | `docs/02-definicion-modulos/OQI-003-trading-charts/MARKET-DATA-SERVICE-SPEC.md` | Market Data | P1 |
|
|
|
|
### 5.2 Recomendaciones de Purga
|
|
|
|
**Tareas a purgar:** 0
|
|
|
|
**Razón:** Todas las 19 tareas archivadas mantienen trazabilidad con código en producción. Purgar rompería la cadena de auditoría.
|
|
|
|
---
|
|
|
|
## 6. ORDEN DE EJECUCIÓN PROPUESTO
|
|
|
|
### 6.1 Sprint 1: Fundamentos (P0)
|
|
|
|
1. **SUBTASK-001-ROUTING** - Resolver componentes huérfanos y links rotos
|
|
2. **SUBTASK-002-OQI-001-AUTH** - Completar gestión de sesiones
|
|
|
|
### 6.2 Sprint 2: Trading Core (P0-P1)
|
|
|
|
3. **SUBTASK-004-OQI-003-TRADING** - TP/SL, ML Overlay, Alertas
|
|
4. **SUBTASK-007-OQI-006-ML** - Integración ML signals completa
|
|
|
|
### 6.3 Sprint 3: Investment (P0-P1)
|
|
|
|
5. **SUBTASK-005-OQI-004-INVESTMENT** - Dashboard, depósitos, retiros
|
|
6. **SUBTASK-006-OQI-005-PAYMENTS** - Invoices PDF
|
|
|
|
### 6.4 Sprint 4: Advanced Features (P1)
|
|
|
|
7. **SUBTASK-003-OQI-002-EDUCATION** - Progreso, quizzes
|
|
8. **SUBTASK-008-OQI-007-LLM** - Memory manager, tools
|
|
9. **SUBTASK-009-OQI-008-PORTFOLIO** - Monte Carlo, rebalanceo
|
|
|
|
### 6.5 Sprint 5: Growth (P2-P3)
|
|
|
|
10. **SUBTASK-010-OQI-009-MARKETPLACE** - Catálogo completo
|
|
11. **SUBTASK-011-MIGRACION-DOCS** - Migrar documentación
|
|
12. **SUBTASK-012-INVENTARIOS-SYNC** - Sincronizar inventarios
|
|
|
|
---
|
|
|
|
## 7. CONCLUSIÓN DEL ANÁLISIS
|
|
|
|
### 7.1 Resumen Ejecutivo
|
|
|
|
| Métrica | Valor |
|
|
|---------|-------|
|
|
| Total gaps identificados | 55 |
|
|
| Story points pendientes | 358 SP |
|
|
| Módulos con gaps P0 | 4 (OQI-003, OQI-004, OQI-008, Routing) |
|
|
| Documentos para migrar | 6 |
|
|
| Tareas para purgar | 0 |
|
|
|
|
### 7.2 Riesgos Identificados
|
|
|
|
| Riesgo | Probabilidad | Impacto | Mitigación |
|
|
|--------|--------------|---------|------------|
|
|
| Backend OQI-004 incompleto | Alta | Crítico | Priorizar backend antes de frontend |
|
|
| MT4 Gateway bloqueado | Alta | Alto | Postponer hasta Q3 |
|
|
| Fine-tuning LLM complejo | Media | Medio | Usar Claude API como fallback |
|
|
| Test coverage bajo (15%) | Alta | Medio | Incluir tests en cada subtask |
|
|
|
|
### 7.3 Próximo Paso
|
|
|
|
Proceder a **Fase 3: Planificación** para detallar subtareas jerárquicas con CAPVED.
|
|
|
|
---
|
|
|
|
*Documento generado: 2026-02-03 | Versión: 1.0.0*
|