1期TS滞后回报(ROC)模拟股票动量

时间:2016-08-07 15:58:52

标签: r portfolio momentum

我对R来说比较新,并且已经阅读了我能够阅读的主题,但似乎无法在其他问题上找到我想要的内容。

我希望使用TTR和ROC计算12个周期的变化率(动量),使用月度数据,但我想忽略最近一个月。换句话说,我希望找到t-2到t-12的ROC(2016年1月12月的股票动量,不包括2016年1月)。这是计算投资组合建设文献动量的常态。

我的数据是所有在南非证券交易所(JSE)上市的股票。日期标题是第1列(即日期是行中的变量),库存列在后续列中。

enter image description here

我知道下面的代码非常简单,但是我尝试过一些东西而且他们给出了错误。由于我有大约250个库存(列)超过20年,不建议为每个观察创建一个新的滞后变量。

x <- Prices.df 
x$DATE <- as.Date(x$DATE, format = "%Y/%m/%d") 
y <- xts(x[,-1], order.by = x$DATE) library(TTR) 
roc <- ROC(y, n = 12, type = "discrete")

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

只需使用lag的{​​{1}}即可。以下代码适用于模拟数据(18个期间和2个资产):

roc