開始使用免費開始

更好的估計會帶來更好的績效嗎?

我們來假設:使用穩健估計(robust)的變異數—共變異數矩陣,會優於樣本的變異數—共變異數矩陣。理論上,更好的估計應該會帶來更好的結果。我們將使用第 3 章定義的 moments_robust() 函式,以及上一個練習中的投資組合規格。

本練習屬於課程

R 中級投資組合分析

檢視課程

練習說明

  • 使用 moments_robust() 來估計動差並執行最佳化。回測設定與先前相同:以季為單位再平衡,訓練期間與滾動視窗使用 5 年資料。將結果指定給名為 opt_rebal_rb_robust 的變數。
  • 繪製權重圖。
  • 繪製風險構成的百分比貢獻圖。
  • 使用 Return.portfolio() 計算投資組合報酬。將報酬指定給名為 returns_rb_robust 的變數。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Run the optimization
opt_rebal_rb_robust <- optimize.portfolio.rebalancing(R = ___, 
                                                      momentFUN = ___,
                                                      portfolio = ___, 
                                                      optimize_method = "random", rp = rp,
                                                      trace = TRUE,
                                                      rebalance_on = ___, 
                                                      training_period = ___,
                                                      rolling_window = ___)

# Chart the weights


# Chart the percentage contribution to risk
chart.RiskBudget(___, match.col = "StdDev", risk.type = ___)

# Compute the portfolio returns
returns_rb_robust <- Return.portfolio(R = ___, weights = ___)
colnames(returns_rb_robust) <- "rb_robust"
編輯並執行程式碼