样本拆分评估
在第 2 章中,您使用过 window() 函数为了绘图而对收益序列进行子集化。在本练习中,您将使用 window() 创建两个样本:估计样本与评估样本。本练习将展示当更改估计区间时,投资组合权重会如何不同。
提醒一下,函数 window() 的参数包括 x、start 和 end。其中 start 与 end 的格式为 "YYYY-MM-DD"。
对象 returns 已加载到您的工作区。
本练习是课程的一部分
R 中的投资组合分析入门
练习说明
- 通过对
returns取子集创建样本returns_estim,样本起始于 1991-01-01,结束于 2003-12-31。 - 通过对
returns取子集创建样本returns_eval,样本起始于 2004 年第 1 天,结束于 2015 年最后 1 天。 - 创建一个最大权重向量
max_weights,各元素为 10%,其长度等于returns的列数。 - 使用估计样本创建投资组合
pf_estim,并将最大权重(reshigh)设置为max_weights。 - 使用评估样本创建投资组合
pf_eval,并将最大权重(reshigh)设置为max_weights。 - 绘制评估样本投资组合权重相对于估计样本投资组合权重的散点图(可使用
$pw)。若投资组合权重完全一致,点应落在 45 度直线上。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create returns_estim
returns_estim <- window(___, start = "YYYY-MM-DD", end = "YYYY-MM-DD")
# Create returns_eval
# Create vector of max weights
max_weights <- rep(___, ncol(___))
# Create portfolio with estimation sample
pf_estim <- portfolio.optim(___, reshigh = ___)
# Create portfolio with evaluation sample
# Create a scatter plot with evaluation portfolio weights on the vertical axis
plot(___, ___)
abline(a = 0, b = 1, lty = 3)