Traccia l'efficiente frontiera
Possiamo finalmente tracciare i risultati dei nostri portafogli MPT, che mostrano la "frontiera efficiente". È un grafico della volatilità rispetto ai rendimenti. Questo ci aiuta a visualizzare il compromesso rischio-rendimento dei portafogli. Il bordo in alto a sinistra dei punti rappresenta il meglio che possiamo ottenere (rendimento più alto per un dato rischio), ed è la frontiera efficiente.
Per creare questo grafico useremo l'ultima data nel nostro dizionario covariances, che abbiamo creato qualche esercizio fa. Questo ha le date come chiavi, quindi otterremo le chiavi ordinate usando sorted() e .keys(), poi prenderemo l'ultima voce con l'indicizzazione di Python ([-1]). Infine useremo matplotlib per fare uno scatter tra varianza e rendimenti e vedere la frontiera efficiente per l'ultima data nei dati.
Questo esercizio fa parte del corso
Machine Learning per la finanza in Python
Istruzioni dell'esercizio
- Recupera l'ultima data dal dizionario
covariances— ricorda che le date sono le chiavi. - Traccia la volatilità rispetto ai rendimenti (
portfolio_returns) per l'ultima data in uno scatter plot e imposta il valorealphaper la trasparenza a0.1.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# 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()