Trazar la frontera eficiente
Por fin podemos representar los resultados de nuestros portafolios MPT, lo que muestra la "frontera eficiente". Es un gráfico de la volatilidad frente a los rendimientos. Esto nos ayuda a visualizar las posibilidades riesgo-rentabilidad de los portafolios. El borde superior izquierdo del conjunto de puntos es lo mejor que podemos lograr (mayor rentabilidad para un riesgo dado), y esa es la frontera eficiente.
Para crear este gráfico, usaremos la fecha más reciente en nuestro diccionario covariances, que creamos hace unos ejercicios. Este tiene las fechas como claves, así que obtendremos las claves ordenadas usando sorted() y .keys(), y luego la última entrada con indexación de Python ([-1]). Por último, usaremos matplotlib para representar en dispersión la varianza frente a los rendimientos y ver la frontera eficiente para la fecha más reciente en los datos.
Este ejercicio forma parte del curso
Machine Learning para finanzas con Python
Instrucciones del ejercicio
- Obtén la fecha más reciente del diccionario
covariances— recuerda que las fechas son las claves. - Traza la volatilidad frente a los rendimientos (
portfolio_returns) para la fecha más reciente en un diagrama de dispersión, y establece el valor dealphapara la transparencia en0.1.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# Get latest date of available data
date = sorted(covariances.____)[____]
# Plot efficient frontier
# warning: this can take at least 10s for the plot to execute...
plt.scatter(x=portfolio_volatility[date], y=____, alpha=____)
plt.xlabel('Volatility')
plt.ylabel('Returns')
plt.show()