如何解决rugarch软件包R中的n.roll和n.ahead
我想用garch(1,1)模型预测两个收益序列AAPL和MSFT的波动率。
首先,我使用getSymbols从Yahoo Finance获取数据,并通过ln(P1)-ln(P0)计算收益。
然后我用out.sample = 209拟合sgarch(1,1)。
最后,我使用ugarchforecast,其n.roll和n.ahead等于209。
我想要的是对209个观测值的预测,但是每个估计都可以使用out样本集中的每个观测值进行提前1步的预测来预测。更明确地说,我希望使用所有样本中的数据预测209个预测观察中的第一个,然后使用所有样本中的数据预测第二个预测观察,而使用样本外的第一个实际观察,以此类推。 / p>
getSymbols(c("AAPL","MSFT"))
Apple <- Ad(AAPL)
Msft <- Ad(MSFT)
datos <- data.frame("AAPL" = Apple,"MSFT" = Msft)
retornos <- datos %>% map_df(~diff(log(.x)))
retornosts <- retornos %>% xts(order.by = index(AAPL)[-1])
modelos_garch <- c()
for (i in 1:ncol(retornosts)) {
x <- ugarchspec()
z <- ugarchfit(spec = x,data = retornosts[,i],solver = "hybrid",out.sample = 209)
modelos_garch <- append(modelos_garch,z)
}
pred1 <- ugarchforecast(modelos_garch[[1]],n.ahead = 209,n.roll = 209,out.sample = 209)
pred2 <- ugarchforecast(modelos_garch[[2]],out.sample = 209)
是那样的方式还是我错了?
非常感谢您的帮助,谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。