trading-platform/orchestration/tareas/TASK-2026-01-26-OQI-006-ML-UTILITY-PANELS/02-ANALISIS.md
Adrian Flores Cortes 9603f88fc6 [OQI-006] docs: Add task documentation and update inventories
- Add TASK-2026-01-26-OQI-006-ML-UTILITY-PANELS (CAPVED complete)
- Update FRONTEND_INVENTORY: ml 12→15, progress 60%→70%
- Update MASTER_INVENTORY: frontend 139→142
- Update _INDEX.yml: total 15→16

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 11:03:44 -06:00

112 lines
3.7 KiB
Markdown

# 02-ANALISIS.md - OQI-006 ML Utility Panels
## Analisis de Comportamiento Esperado
### ModelSelector
**Comportamiento:**
- Mostrar lista de modelos ML disponibles
- Permitir selección de modelo activo
- Mostrar métricas de accuracy por modelo
- Soportar variantes: dropdown, tabs, cards
- Indicar estado del modelo (active, training, inactive, deprecated)
**Inputs:**
- `models`: Array de MLModel
- `selectedModelId`: ID del modelo seleccionado
- `onModelChange`: Callback de cambio
- `variant`: 'dropdown' | 'tabs' | 'cards'
- `showMetrics`: Mostrar accuracy
**Outputs:**
- Componente renderizado según variante
- Evento de selección de modelo
### EnsemblePanel
**Comportamiento:**
- Configurar método de votación (weighted, majority, unanimous)
- Ajustar pesos de cada modelo con sliders
- Validar que suma de pesos = 100%
- Permitir bloquear pesos individuales
- Auto-calcular pesos por accuracy
**Inputs:**
- `config`: EnsembleConfig con weights y thresholds
- `onConfigChange`: Callback de cambio
- `onSave/onReset`: Callbacks de acción
- `readOnly`: Modo lectura
**Outputs:**
- Panel de configuración
- EnsembleConfig actualizado
### ICTAnalysisPanel
**Comportamiento:**
- Configurar timeframe de análisis
- Habilitar/deshabilitar features ICT
- Ajustar parámetros por sección (Order Blocks, FVG, etc.)
- Secciones colapsables para organización
**Inputs:**
- `params`: ICTParams con todas las configuraciones
- `onParamsChange`: Callback de cambio
- `onSave/onReset`: Callbacks de acción
**Outputs:**
- Panel de configuración con secciones
- ICTParams actualizado
---
## Analisis de Capas Impactadas
```
┌─────────────────────────────────────────────┐
│ FRONTEND │
├─────────────────────────────────────────────┤
│ modules/ml/components/ │
│ ├── ModelSelector.tsx [NUEVO] │
│ ├── EnsemblePanel.tsx [NUEVO] │
│ ├── ICTAnalysisPanel.tsx [NUEVO] │
│ └── index.ts [MODIFICADO] │
├─────────────────────────────────────────────┤
│ Dependencias: │
│ lucide-react │
│ react (useState, useMemo, useCallback) │
└─────────────────────────────────────────────┘
```
---
## Analisis de Dependencias
### Dependencias Externas
| Paquete | Uso |
|---------|-----|
| lucide-react | Iconos (Brain, Sparkles, Settings2, etc.) |
| react | Framework, hooks |
### Componentes Relacionados
| Componente | Relación |
|------------|----------|
| ConfidenceMeter | Muestra confidence del modelo seleccionado |
| ModelAccuracyDashboard | Comparación de modelos (complementario) |
| ICTAnalysisCard | Visualización de resultados ICT |
| EnsembleSignalCard | Muestra señal del ensemble |
---
## Analisis de Patrones
### Patrones Identificados en Módulo ML
1. **Iconos:** lucide-react (Brain, TrendingUp, etc.)
2. **Colores:** Dark theme (gray-800, gray-900, border-gray-700)
3. **Exports:** default export + named type exports
4. **State:** useState, useMemo, useCallback
5. **Props:** TypeScript interfaces completas
### Patrones Aplicados
- Consistencia con otros componentes ML
- Secciones colapsables para paneles complejos
- Validación de configuración con feedback visual
- Soporte para modo readOnly