R 中級投資組合分析
Ross Bennett
Instructor
解一個貼近業界的投資組合最佳化問題
應用本課所學技巧
設定含約束與目標的投資組合
在歷史資料上執行最佳化並定期再平衡
分析結果
微調約束、目標與動差估計
資料
EDHEC-Risk Alternative Indexes 月報酬 {6}
1997 年 1 月至 2016 年 3 月
data(indexes) returns <- indexes[,1:4]# Equal weight benchmark n <- ncol(returns) equal_weights <- rep(1 / n, n) benchmark_returns <- Return.portfolio(R = returns, weights = equal_weights, rebalance_on = "years") colnames(benchmark_returns) <- "benchmark"# Benchmark performance table.AnnualizedReturns(benchmark_returns)
benchmark
Annualized Return 0.0775
Annualized Std Dev 0.1032
Annualized Sharpe (Rf=0%) 0.7509
定義一個作為基準情境的投資組合規格
基準規格採簡單做法:寬鬆約束與基本目標
# Base portfolio specification
base_port_spec <- portfolio.spec(assets = colnames(returns))
base_port_spec <- add.constraint(portfolio = base_port_spec,
type = "full_investment")
base_port_spec <- add.constraint(portfolio = base_port_spec,
type = "long_only")
base_port_spec <- add.objective(portfolio = base_port_spec,
type = "risk", name = "StdDev")
R 中級投資組合分析