trading-platform/docs/02-definicion-modulos/OQI-008-portfolio-manager/requerimientos/RF-PFM-005-comparacion-benchmark.md
rckrdmrd c1b5081208 feat(ml): Complete FASE 11 - BTCUSD update and comprehensive documentation alignment
ML Engine Updates:
- Updated BTCUSD with Polygon API data (2024-2025): 215,699 new records
- Re-trained all ML models: Attention (R²: 0.223), Base, Metamodel (87.3% confidence)
- Backtest results: +176.71R profit with aggressive_filter strategy

Documentation Consolidation:
- Created docs/99-analisis/_MAP.md index with 13 new analysis documents
- Consolidated inventories: removed duplicates from orchestration/inventarios/
- Updated ML_INVENTORY.yml with BTCUSD metrics and training results
- Added execution reports: FASE11-BTCUSD, correction issues, alignment validation

Architecture & Integration:
- Updated all module documentation with NEXUS v3.4 frontmatter
- Fixed _MAP.md indexes across all folders
- Updated orchestration plans and traces

Files: 229 changed, 5064 insertions(+), 1872 deletions(-)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 09:31:29 -06:00

226 lines
9.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
id: "RF-PFM-005"
title: "Comparación con Benchmarks"
type: "Requirement"
status: "Done"
priority: "Alta"
epic: "OQI-008"
project: "trading-platform"
version: "1.0.0"
created_date: "2025-12-05"
updated_date: "2026-01-04"
---
# RF-PFM-005: Comparación con Benchmarks
**Épica:** OQI-008 - Portfolio Manager
**Versión:** 1.0
**Fecha:** 2025-12-05
**Estado:** Planificado
**Prioridad:** P1 - Alto
---
## Descripción
El sistema debe permitir al usuario comparar el rendimiento de su portfolio contra benchmarks de mercado y otros índices de referencia para evaluar su desempeño relativo.
---
## Requisitos Funcionales
### RF-PFM-005.1: Benchmarks Disponibles
- El sistema debe soportar múltiples benchmarks:
- S&P 500 (SPY)
- NASDAQ 100 (QQQ)
- Dow Jones (DIA)
- Russell 2000 (IWM)
- Total Market (VTI)
- Bitcoin (BTC)
- Ethereum (ETH)
- El usuario debe poder seleccionar benchmark de comparación
- El usuario debe poder guardar benchmark favorito
### RF-PFM-005.2: Gráfico Comparativo
- El sistema debe mostrar gráfico con portfolio vs benchmark
- Ambas líneas deben normalizarse al mismo punto de inicio
- El usuario debe poder cambiar timeframe (1m, 3m, 6m, 1y, All)
- El gráfico debe mostrar diferencia (alpha) en hover
- El gráfico debe destacar períodos de over/underperformance
### RF-PFM-005.3: Métricas de Comparación
- El sistema debe calcular Alpha (rendimiento exceso vs benchmark)
- El sistema debe calcular Beta (correlación con mercado)
- El sistema debe calcular R-squared (correlación)
- El sistema debe calcular Tracking Error
- El sistema debe calcular Information Ratio
### RF-PFM-005.4: Análisis de Períodos
- El sistema debe mostrar rendimiento por período vs benchmark
- Tabla comparativa: 1d, 1w, 1m, 3m, 6m, 1y, YTD
- Destacar períodos donde superó al benchmark
- Mostrar cuántos períodos ganó vs benchmark
### RF-PFM-005.5: Benchmark Personalizado
- El usuario debe poder crear benchmark personalizado (Premium)
- Combinar múltiples índices con pesos
- Guardar y reusar benchmarks personalizados
---
## Criterios de Aceptación
```gherkin
Feature: Comparación con Benchmarks
Scenario: Comparar con S&P 500
Given tengo portfolio con historial de rendimiento
When selecciono benchmark "S&P 500"
Then veo gráfico comparativo portfolio vs S&P 500
And veo métrica Alpha
And veo si estoy superando al benchmark
Scenario: Ver métricas comparativas
Given estoy comparando con benchmark
When veo la sección de métricas
Then veo:
| Métrica | Descripción |
| Alpha | Rendimiento exceso anualizado |
| Beta | Sensibilidad al mercado |
| Sharpe vs Benchmark | Comparación de eficiencia |
| Tracking Error | Desviación del benchmark |
Scenario: Análisis por período
Given comparo mi portfolio con NASDAQ
When veo el análisis por período
Then veo tabla con rendimientos:
| Período | Mi Portfolio | NASDAQ | Diferencia |
| 1 mes | +5% | +3% | +2% ✓ |
| 3 meses | +8% | +10% | -2% |
| 1 año | +25% | +20% | +5% ✓ |
```
---
## Reglas de Negocio
| Regla | Descripción |
|-------|-------------|
| RN-001 | Benchmark default: S&P 500 |
| RN-002 | Alpha calculado anualizado |
| RN-003 | Beta calculado con regresión lineal (52 semanas) |
| RN-004 | Benchmark personalizado solo Premium |
| RN-005 | Máximo 3 benchmarks en comparación simultánea |
---
## Fórmulas
### Alpha
```
Alpha = Rp - [Rf + β × (Rm - Rf)]
Donde:
- Rp = Retorno del portfolio
- Rf = Tasa libre de riesgo
- β = Beta del portfolio
- Rm = Retorno del mercado (benchmark)
```
### Beta
```
β = Cov(Rp, Rm) / Var(Rm)
Donde:
- Cov = Covarianza entre portfolio y benchmark
- Var = Varianza del benchmark
```
### Information Ratio
```
IR = (Rp - Rb) / Tracking Error
Donde:
- Rp = Retorno del portfolio
- Rb = Retorno del benchmark
- Tracking Error = σ(Rp - Rb)
```
---
## Wireframe
```
┌─────────────────────────────────────────────────────────────────────────┐
│ Comparación vs Benchmark │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ Benchmark: [S&P 500 ▾] [+ Agregar benchmark] │
│ │
│ ┌────────────────────────────────────────────────────────────────────┐ │
│ │ Portfolio vs S&P 500 │ │
│ │ │ │
│ │ +30% ─ ╱─── Tu Portfolio (+28%) │ │
│ │ +20% ─ ╱──────╱ │ │
│ │ +10% ─ ╱──────╱ │ │
│ │ 0% ─────────────────╱──────────────── S&P 500 (+22%) │ │
│ │ -10% ───────────────────────────────────────────── │ │
│ │ Ene Feb Mar Abr May Jun Jul Ago Sep │ │
│ │ │ │
│ │ [1M] [3M] [6M] [YTD] [1Y] [3Y] [All] │ │
│ └────────────────────────────────────────────────────────────────────┘ │
│ │
│ ┌────────────────────┐ ┌────────────────────┐ ┌────────────────────┐ │
│ │ ALPHA │ │ BETA │ │ INFORMATION RATIO │ │
│ │ +6.0% │ │ 0.85 │ │ 0.72 │ │
│ │ Anualizado │ │ Menor volatilidad│ │ Bueno │ │
│ └────────────────────┘ └────────────────────┘ └────────────────────┘ │
│ │
│ ┌────────────────────────────────────────────────────────────────────┐ │
│ │ Comparación por Período │ │
│ │ │ │
│ │ Período Mi Portfolio S&P 500 Diferencia │ │
│ │ ───────────────────────────────────────────────── │ │
│ │ 1 día +0.8% +0.5% +0.3% ✓ │ │
│ │ 1 sem +2.1% +1.8% +0.3% ✓ │ │
│ │ 1 mes +5.2% +4.0% +1.2% ✓ │ │
│ │ 3 meses +12.5% +10.2% +2.3% ✓ │ │
│ │ YTD +28.0% +22.0% +6.0% ✓ │ │
│ │ │ │
│ │ 🏆 Has superado al S&P 500 en 5 de 5 períodos │ │
│ └────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────┘
```
---
## Dependencias
### Épicas Requeridas
- **OQI-003:** Datos de índices de mercado
- **OQI-008:** Dashboard de portfolio
### Datos Requeridos
- Historial de precios de benchmarks
- Historial de valor del portfolio
- Tasa libre de riesgo (Treasury)
---
## Especificaciones Técnicas Relacionadas
- [ET-PFM-002: Cálculo de Métricas](../especificaciones/ET-PFM-002-calculo-metricas.md)
---
## Historias de Usuario Relacionadas
- US-PFM-010: Comparar portfolio vs benchmark
- US-PFM-011: Ver métricas de comparación
---
*Documento de requerimientos - Sistema NEXUS*
*Trading Platform*