共變異數矩陣
在一般包含 \(N\) 個資產的情況下,共變異數矩陣對於決定投資組合變異數至關重要。記得第 \(i\) 列第 \(j\) 欄的元素,對應的是第 \(i\) 個與第 \(j\) 個報酬之間的共變異數。也請回想,兩個報酬序列的共變異數等於它們的波動度乘上它們的相關係數,而資產報酬與自身的共變異數就是其變異數。
在這個練習中,你會針對前一題的 4 個資產類別的月報酬,計算並分析共變異數與相關係數矩陣。這些資產類別分別是股票、債券、不動產與商品。你將使用標準函式 cov() 與 cor() 來建立這些矩陣。
工作區中已提供月報酬資料 returns,以及你先前建立的標準差向量 sds。
本練習屬於課程
R 投資組合分析入門
練習說明
- 建立一個對角矩陣,對角線上放入各變異數。可使用函式 diag(),並以平方後的
sds^2作為唯一引數。將此物件命名為diag_cov。 - 計算報酬的共變異數矩陣。將此物件命名為
cov_matrix。 - 計算報酬的相關係數矩陣。將此物件命名為
cor_matrix。 - 透過已預先載入的程式碼,驗證「債券報酬與股票報酬之間的共變異數」是否等於它們各自標準差與相關係數的乘積。不要更動這段程式碼。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# 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])