мой набор данных выглядит так:
set.seed(1234)
mydata <- data.frame("Returns" = sample(1:20,200, replace=T), "Vol" = 0)
Я рассчитал годовую дневную волатильность для первых 21 строк в новом столбце:
d_vol <- sd(mydata$Returns[1:21])
y_vol <- d_vol*sqrt(252)
Приведенный выше расчет заменяет значение в столбце vol, строка 21 на 83,38345.
То, что я пытаюсь узнать, это:
Как свернуть или автозаполнить оставшиеся (22:200) строки формулой, используемой в (y_vol).
Спасибо,
zoo::rollapply(mydata$Returns, 21, sd, fill=NA, align="right") * sqrt(252)
илиdata.table::frollapply(mydata$Returns, 21, sd) * sqrt(252)
- person chinsoon12   schedule 15.11.2019