- FASE-0: Diagnostic audit of 500+ files, 33 findings cataloged (7P0/8P1/12P2/6P3) - FASE-1: Resolved 7 P0 critical conflicts (ports, paths, dedup OQI-010/ADR-002, orphan schemas) - FASE-2: Resolved 8 P1 issues (traces, README/CLAUDE.md, DEPENDENCY-GRAPH v2.0, DDL drift, stack versions, DoR/DoD) - FASE-3: Resolved 12 P2 issues (archived tasks indexed, RNFs created, OQI-010 US/RF/ET, AGENTS v2.0) - FASE-4: Purged 3 obsolete docs to _archive/, fixed MODELO-NEGOCIO.md broken ref - FASE-5: Cross-layer validation (DDL→OQI 66%, OQI→BE 72%, BE→FE 78%, Inventories 95%) - FASE-6: INFORME-FINAL, SA-INDEX (18 subagents), METADATA COMPLETED 27/33 findings resolved (82%), 6 P3 deferred to backlog. 18 new files created, 40+ modified, 4 archived. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| especificaciones | ||
| historias-usuario | ||
| implementacion | ||
| requerimientos | ||
| _MAP.md | ||
| README.md | ||
| id | title | type | project | version | updated_date |
|---|---|---|---|---|---|
| README | Portfolio Manager (Gestion de Cartera a Largo Plazo) | Documentation | trading-platform | 1.1.0 | 2026-02-06 |
OQI-008: Portfolio Manager (Gestión de Cartera a Largo Plazo)
Resumen Ejecutivo
Esta épica implementa un sistema profesional de gestión de carteras a largo plazo, similar a plataformas como Trade Republic o Betterment, pero potenciado con IA para optimización de portfolios, rebalanceo automático y gestión de múltiples estrategias de inversión.
Visión
"Transformar a cualquier usuario en un inversor sofisticado con herramientas de gestión de cartera de nivel institucional, automatizadas por IA"
Objetivos
- Gestión multi-estrategia con diferentes perfiles de riesgo
- Optimización de portfolio basada en teoría moderna de carteras
- Rebalanceo automático inteligente
- Distribución de rendimientos periódica
- Reportes profesionales de performance
- Simulación y proyecciones a largo plazo
Arquitectura
┌─────────────────────────────────────────────────────────────────────────────┐
│ PORTFOLIO MANAGER │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ PORTFOLIO DASHBOARD │ │
│ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────────┐ │ │
│ │ │ Net Worth │ │ Allocation │ │ Performance │ │ │
│ │ │ Overview │ │ Chart │ │ Charts │ │ │
│ │ └──────────────┘ └──────────────┘ └──────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌─────────────────────────────────▼───────────────────────────────────┐ │
│ │ STRATEGY ALLOCATOR │ │
│ │ ┌──────────────────────────────────────────────────────────────┐ │ │
│ │ │ User Risk Profile → Strategy Mix → Target Allocation │ │ │
│ │ │ │ │ │
│ │ │ Conservative (20%) ──┐ │ │ │
│ │ │ Moderate (50%) ──────┼──→ Atlas 30% + Orion 50% + Nova 20% │ │ │
│ │ │ Aggressive (30%) ────┘ │ │ │
│ │ └──────────────────────────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌─────────────────────────────────▼───────────────────────────────────┐ │
│ │ REBALANCING ENGINE │ │
│ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────────┐ │ │
│ │ │ Drift │ │ Threshold │ │ Execution │ │ │
│ │ │ Detection │ │ Check │ │ Logic │ │ │
│ │ └──────────────┘ └──────────────┘ └──────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌─────────────────────────────────▼───────────────────────────────────┐ │
│ │ DISTRIBUTION ENGINE │ │
│ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────────┐ │ │
│ │ │ Profit │ │ Schedule │ │ Payout │ │ │
│ │ │ Calculation │ │ Manager │ │ Processor │ │ │
│ │ └──────────────┘ └──────────────┘ └──────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌─────────────────────────────────▼───────────────────────────────────┐ │
│ │ PROJECTIONS & SIMULATIONS │ │
│ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────────┐ │ │
│ │ │ Monte Carlo │ │ Scenario │ │ Goal Tracking │ │ │
│ │ │ Simulation │ │ Analysis │ │ │ │ │
│ │ └──────────────┘ └──────────────┘ └──────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Modelo de Portfolio
Estructura Jerárquica
Usuario
└── Portfolio (Net Worth Total)
├── Cuenta Atlas (Conservador)
│ ├── Balance: $5,000
│ ├── Target Allocation: 30%
│ └── Posiciones activas: BTC, ETH
│
├── Cuenta Orion (Moderado)
│ ├── Balance: $7,500
│ ├── Target Allocation: 50%
│ └── Posiciones activas: Top 10
│
├── Cuenta Nova (Agresivo)
│ ├── Balance: $2,500
│ ├── Target Allocation: 20%
│ └── Posiciones activas: Altcoins
│
└── Cash (Wallet)
└── Balance: $500
Perfiles de Riesgo Predefinidos
| Perfil | Atlas | Orion | Nova | Cash | Descripción |
|---|---|---|---|---|---|
| Ultra Conservador | 70% | 20% | 0% | 10% | Preservación de capital |
| Conservador | 50% | 35% | 5% | 10% | Crecimiento estable |
| Moderado | 30% | 50% | 15% | 5% | Balance riesgo/retorno |
| Agresivo | 15% | 45% | 35% | 5% | Alto crecimiento |
| Ultra Agresivo | 5% | 30% | 60% | 5% | Máximo retorno |
| Personalizado | Custom | Custom | Custom | Custom | Usuario define |
Funcionalidades Principales
1. Onboarding de Perfil de Riesgo
┌─────────────────────────────────────────────────────────────────┐
│ CUESTIONARIO DE PERFIL DE RIESGO │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 1. ¿Cuál es tu horizonte de inversión? │
│ ○ Menos de 1 año │
│ ○ 1-3 años │
│ ● 3-5 años │
│ ○ Más de 5 años │
│ │
│ 2. Si tu portfolio cayera 20%, ¿qué harías? │
│ ○ Vender todo inmediatamente │
│ ○ Vender parte para reducir riesgo │
│ ● Mantener y esperar recuperación │
│ ○ Comprar más aprovechando precios bajos │
│ │
│ 3. ¿Qué rendimiento mensual esperas? │
│ ○ 2-4% (conservador) │
│ ● 5-10% (moderado) │
│ ○ 10-20% (agresivo) │
│ ○ 20%+ (muy agresivo) │
│ │
│ [... más preguntas ...] │
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Tu perfil: MODERADO │ │
│ │ │ │
│ │ Recomendación de asignación: │ │
│ │ • Atlas: 30% • Orion: 50% • Nova: 15% • Cash: 5% │ │
│ │ │ │
│ │ [Aceptar Recomendación] [Personalizar] │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────┘
2. Rebalanceo Automático
Triggers de Rebalanceo:
| Tipo | Condición | Acción |
|---|---|---|
| Drift | Desviación > 5% del target | Rebalancear |
| Calendario | Mensual/Trimestral | Revisar y ajustar |
| Rendimiento | Ganancia > 20% en cuenta | Tomar ganancias |
| Drawdown | Pérdida > 15% en cuenta | Reducir exposición |
| Objetivo | Meta alcanzada | Notificar + sugerir |
Ejemplo de Rebalanceo:
┌─────────────────────────────────────────────────────────────────┐
│ REBALANCEO SUGERIDO │
├─────────────────────────────────────────────────────────────────┤
│ │
│ Tu portfolio se ha desviado del target: │
│ │
│ Cuenta │ Actual │ Target │ Drift │ Acción │
│ ──────────────────────────────────────────────────────────────│
│ Atlas │ $6,200 │ 30% │ +7% │ Retirar $700 │
│ Orion │ $7,100 │ 50% │ -4% │ Depositar $400 │
│ Nova │ $2,200 │ 15% │ -3% │ Depositar $300 │
│ Cash │ $500 │ 5% │ 0% │ Sin cambio │
│ ──────────────────────────────────────────────────────────────│
│ TOTAL │ $16,000 │ 100% │ │ │
│ │
│ Resumen: Mover $700 de Atlas → $400 Orion + $300 Nova │
│ │
│ [Ejecutar Rebalanceo] [Programar para mañana] [Ignorar] │
│ │
└─────────────────────────────────────────────────────────────────┘
3. Distribución de Rendimientos
Esquema de Distribución:
GANANCIAS MENSUALES
│
┌──────────────┴──────────────┐
│ │
┌───────▼───────┐ ┌─────────▼─────────┐
│ 80% │ │ 20% │
│ Reinversión │ │ Distribución │
│ (compound) │ │ al usuario │
└───────────────┘ └─────────┬─────────┘
│
┌─────────────────┼─────────────────┐
│ │ │
┌────▼────┐ ┌────▼────┐ ┌────▼────┐
│ Wallet │ │ Banco │ │ Crypto │
│ Interno │ │ Externo │ │ Wallet │
└─────────┘ └─────────┘ └─────────┘
Frecuencias Disponibles:
| Frecuencia | Descripción | Mínimo |
|---|---|---|
| Mensual | Día 1 de cada mes | $10 |
| Trimestral | Cada 3 meses | $25 |
| Semestral | Cada 6 meses | $50 |
| Anual | Una vez al año | $100 |
| Manual | Bajo demanda | $10 |
| Reinvertir 100% | Sin distribución | - |
4. Proyecciones y Metas
Simulación Monte Carlo:
┌─────────────────────────────────────────────────────────────────┐
│ PROYECCIÓN A 5 AÑOS │
├─────────────────────────────────────────────────────────────────┤
│ │
│ Inversión inicial: $10,000 │
│ Aportación mensual: $500 │
│ Perfil: Moderado │
│ │
│ $80,000 ─┐ ╱─ P90 │
│ │ ╱───╱ │
│ $60,000 ─┤ ╱────╱ │
│ │ ╱───╱─────── P50 (Esperado)│
│ $40,000 ─┤ ╱────╱ │
│ │ ╱────╱ │
│ $20,000 ─┤ ╱────╱───────────────────────── P10 │
│ │ ╱────╱ │
│ $10,000 ─┼─╱ │
│ └────────────────────────────────────────────── │
│ Hoy 1 año 2 años 3 años 4 años 5 años │
│ │
│ Resultados simulados (10,000 escenarios): │
│ • Percentil 10 (pesimista): $32,450 │
│ • Percentil 50 (esperado): $54,230 │
│ • Percentil 90 (optimista): $78,900 │
│ │
│ Probabilidad de alcanzar $50,000: 62% │
│ │
└─────────────────────────────────────────────────────────────────┘
5. Metas de Inversión
┌─────────────────────────────────────────────────────────────────┐
│ MIS METAS DE INVERSIÓN │
├─────────────────────────────────────────────────────────────────┤
│ │
│ 🏠 Casa propia │
│ ├── Meta: $50,000 para enganche │
│ ├── Plazo: 3 años │
│ ├── Progreso: $12,500 (25%) │
│ ├── Aportación requerida: $1,041/mes │
│ └── Estado: ✅ En camino │
│ │
│ 🎓 Educación de hijos │
│ ├── Meta: $100,000 │
│ ├── Plazo: 15 años │
│ ├── Progreso: $5,000 (5%) │
│ ├── Aportación requerida: $380/mes │
│ └── Estado: ✅ En camino │
│ │
│ 🏝️ Retiro anticipado │
│ ├── Meta: $500,000 │
│ ├── Plazo: 10 años │
│ ├── Progreso: $15,000 (3%) │
│ ├── Aportación requerida: $3,200/mes │
│ └── Estado: ⚠️ Necesita más aportaciones │
│ │
│ [+ Agregar nueva meta] │
│ │
└─────────────────────────────────────────────────────────────────┘
Métricas del Portfolio
Performance Metrics
| Métrica | Descripción | Fórmula |
|---|---|---|
| TWR | Time-Weighted Return | Retorno eliminando efecto de flujos |
| MWR | Money-Weighted Return | Retorno incluyendo timing de flujos |
| Sharpe | Retorno ajustado por riesgo | (R - Rf) / σ |
| Sortino | Sharpe solo con downside | (R - Rf) / σd |
| Max DD | Máximo drawdown | Mayor caída desde pico |
| Calmar | Retorno / Max Drawdown | Eficiencia del riesgo |
| Beta | Sensibilidad al mercado | Correlación con benchmark |
| Alpha | Retorno sobre benchmark | Exceso de retorno |
Comparación con Benchmarks
| Benchmark | Descripción |
|---|---|
| BTC HODL | Comprar y mantener Bitcoin |
| ETH HODL | Comprar y mantener Ethereum |
| 60/40 Crypto | 60% BTC + 40% Altcoins |
| S&P 500 | Índice bursátil (referencia) |
Stack Técnico
| Componente | Tecnología |
|---|---|
| Frontend | React + D3.js/Recharts |
| Backend | Express.js + PostgreSQL |
| Cálculos | Python (NumPy, SciPy) |
| Simulaciones | Python (Monte Carlo) |
| Jobs | Node-cron + Bull Queue |
| Cache | Redis |
Story Points Totales: 65 SP
Schemas DDL Asignados
Este modulo es owner del siguiente schema DDL:
| Schema | Tablas | Descripcion |
|---|---|---|
| portfolio | 5 | portfolios, portfolio_assets, portfolio_transactions, portfolio_snapshots, portfolio_goals |
Total tablas: 5 Nota DDL drift: Documentacion previa no incluia seccion de schemas DDL. Las 5 tablas cubren la gestion de carteras (portfolios, portfolio_assets), transacciones (portfolio_transactions), snapshots historicos (portfolio_snapshots) y metas de inversion (portfolio_goals). Actualizado por TASK-2026-02-06 F2.6.
Referencias
Especificaciones Tecnicas Principales
- ET-PFM-010: Arquitectura General del Sistema - Vision completa de arquitectura
- ET-PFM-011: Sistema de Goals - Sistema completo de metas de inversion
- ET-PFM-001: Arquitectura Dashboard
- ET-PFM-002: Calculo de Metricas
- ET-PFM-003: Stress Testing
- ET-PFM-004: Motor de Rebalanceo
- ET-PFM-007: Motor de Metas
- ET-PFM-008: Frontend
- ET-PFM-009: Custom Charts SVG/Canvas
Epicas Relacionadas
Documentacion Adicional
- _MAP.md - Indice completo del modulo
- TRACEABILITY.yml - Trazabilidad de implementacion