La matrice di covarianza
La matrice di covarianza è fondamentale per determinare la varianza del portafoglio nel caso generale di \(N\) asset. Ricorda che l’elemento alla riga \(i\) e colonna \(j\) corrisponde alla covarianza tra il rendimento \(i\)-esimo e il \(j\)-esimo. Ricorda anche che la covarianza di due serie di rendimenti è il prodotto tra le loro volatilità e la loro correlazione, e che la covarianza del rendimento di un asset con sé stesso è la sua varianza.
In questo esercizio calcolerai e analizzerai la matrice di covarianza e quella di correlazione sui rendimenti mensili delle quattro classi di attivi dell’esercizio precedente. Per rinfrescarti la memoria, le classi sono azioni, obbligazioni, immobiliare e materie prime. Per creare queste matrici userai le funzioni standard cov() e cor().
Nel tuo workspace trovi i rendimenti mensili come returns e il vettore delle deviazioni standard sds che hai creato in precedenza.
Questo esercizio fa parte del corso
Introduzione all'analisi di portafoglio in R
Istruzioni dell'esercizio
- Crea una matrice diagonale che contenga le varianze sulla diagonale. Puoi usare la funzione diag() facendole prendere come unico argomento
sds^2. Chiamaladiag_cov. - Calcola la matrice di covarianza dei rendimenti. Chiamala
cov_matrix. - Calcola la matrice di correlazione dei rendimenti. Chiamala
cor_matrix. - Verifica che la covarianza tra i rendimenti delle obbligazioni e quelli delle azioni sia uguale al prodotto tra le rispettive deviazioni standard e la correlazione, eseguendo il codice già caricato. Non modificare questo codice.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Create a matrix with variances on the diagonal
# Create a covariance matrix of returns
# Create a correlation matrix of returns
# Verify covariances equal the product of standard deviations and correlation
all.equal(cov_matrix[1,2], cor_matrix[1,2] * sds[1] * sds[2])