R - rollapply与反向窗口

时间:2014-01-11 09:13:54

标签: r zoo variance rollapply

我有一个矩阵(V),在一段时间内每日股票收益率,我试图获得 1个月(= 21天)和6个月的差异( = 126天)。

这是基于未来1个月和6个月数据的方式。

Variance.x <- rollapply(data=V, width=21, var, by.column=F, align="right")
Variance.x <- rollapply(data=V, width=126, var, by.column=F, align="right")

有什么建议吗?

1 个答案:

答案 0 :(得分:3)

这给出了涵盖未来21个时期的方差,假设z是一个多变量动物园系列:

lag(rollapply(z, 21, function(x) c(var(x)), by.column = FALSE, align = "left"))

由于方差是一个矩阵,我们应该在函数中展平它,如此处所示,无论我们计算未来还是过去的差异,都应该这样做。

以上不包括未来积分的当前点。如果需要从现在开始并包括现在的21个点,那么我们将省略lag