问题描述
我有一个相对较大的 xts 对象。它包含欧洲 STOXX 600 指数中每家公司 2012 年至 2021 年的每日调整后收盘价。我想计算每家公司每年股票的年度波动率。
这是我的数据集外观的链接:
所以我首先通过以下方式计算对数差异:
XTS.LOGDIFFS <- diff(log(XTS.ADJCLOSE))
下一步是计算特定时间段内股票的波动率,例如从 2012-05-01 到 2012-12-31,通过使用标准偏差并将其乘以平方根252(252 是平均交易天数)。
所以我的想法是:首先,我想从我的数据集中提取特定时间段的数据,在本例中是从 2012-05-01 到 2012-12-31。
我试过这个XT1<-xts(XTS.LOGDIFFS [1:174])
。
作为替代方案,我考虑过这个:
start_date<- as.Date("2012-05-01")
end_date<-as.Date("2012-12-31")
下一步是计算提取的 xts 对象的波动率。
所以我尝试了这个:vol<-sd(XTS.1,na.rm = TRUE) *sqrt (252)
。
但这只能给我所有组合的股票波动率,而不是每一个。
所以我想我需要一个函数来获取 xts 对象中提取的时间段内每家公司的股票波动率。但我不知道这应该是什么样子。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)