Portfolio Optimization

Contexto
Implementación del modelo de optimización de portafolios de Markowitz (1952) para construir carteras diversificadas y eficientes: maximizar el retorno esperado para un nivel de riesgo dado, o minimizar el riesgo para un retorno esperado específico. Se apoya en datos históricos, en la definición de objetivos y restricciones, y en optimización con algoritmos.
Datos y método
- Activos: AAPL, MSFT, TSLA, META y NVDA, con precios de cierre de 2022 a 2023 descargados con yfinance.
- Retorno esperado: Rendimiento histórico medio anualizado (252 días, capitalizado).
- Riesgo: Matriz de covarianzas con contracción de Ledoit-Wolf.
- Optimización: Frontera eficiente con PyPortfolioOpt, con pesos entre 0 y 1 por activo, y simulación Monte Carlo para graficarla.
Portafolios calculados
- Mínimo riesgo: Retorno esperado de 4,2 % con una volatilidad de 28,0 %.
- Máximo ratio de Sharpe: Retorno de 28,5 %, volatilidad de 56,4 % y Sharpe de 0,42, usando el bono a 10 años de EE. UU. como tasa libre de riesgo.
- Máximo retorno con riesgo de 30 %: Retorno de 7,5 %.
- Mínimo riesgo con retorno de 25 %: Volatilidad de 51,0 % y Sharpe de 0,45.
Limitaciones
El modelo es útil, pero se basa en datos históricos y debe considerarse junto con otros factores al invertir.
Las funciones de las librerías se consultaron en el repositorio de Gustavo Machin (GitHub: gustavomachin).