Il portafoglio a varianza minima e quello a Sharpe ratio massimo
Nei precedenti esercizi hai calcolato la frontiera efficiente usando una griglia di rendimenti obiettivo. L’output del tuo calcolo della frontiera efficiente era composto da due vettori, vpm (vettore delle medie di portafoglio) e vpsd (vettore delle deviazioni standard, o volatilità), e da una matrice di pesi chiamata mweights. Userai questi risultati per individuare i portafogli con la minore volatilità e con il maggiore Sharpe ratio, e poi traccerai il grafico della loro allocazione dei pesi.
Come promemoria, lo Sharpe Ratio si ottiene prendendo i rendimenti in eccesso rispetto al tasso privo di rischio e dividendoli per la volatilità del portafoglio.
Questo esercizio fa parte del corso
Introduzione all'analisi di portafoglio in R
Istruzioni dell'esercizio
- Crea
weights_minvar, ossia la riga dimweightsin cui la deviazione standard è minimizzata(vpsd == min(vpsd)). - Calcola lo Sharpe ratio dei rendimenti di portafoglio quando il tasso privo di rischio è 0,75%. Chiamalo
vsr. - Crea
weights_max_srcome la riga dimweightscorrispondente al portafoglio con lo Sharpe ratio massimo invsr. Puoi risolverlo in modo analogo alla prima istruzione. - Crea un grafico a barre dei pesi maggiori dell’1% nel portafoglio
weights_minvar, e crea un grafico a barre dei pesi maggiori dell’1% nel portafoglioweights_max_sr.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Create weights_minvar as the portfolio with the least risk
weights_minvar <- mweights[___ == min(___), ]
# Calculate the Sharpe ratio
vsr <- (___ - ___) / vpsd
# Create weights_max_sr as the portfolio with the maximum Sharpe ratio
weights_max_sr <- mweights[___ == max(___)]
# Create bar plot of weights_minvar and weights_max_sr
par(mfrow = c(2, 1), mar = c(3, 2, 2, 1))
barplot(weights_minvar[weights_minvar > 0.01])
barplot(___[___ > 0.01])