【发布时间】:2017-04-26 09:04:24
【问题描述】:
我有 300 多家公司,需要为他们计算每月回报,然后将其用作我数据集中的变量之一。 我从雅虎下载价格并使用 quantmod 包计算每月回报:
require(quantmod)
stockData <- lapply(symbols,function(x) getSymbols(x,auto.assign=FALSE, src='yahoo', from = '2000-01-01'))
stockDataReturn <- lapply(stockData,function(x) monthlyReturn(Ad(x)))
我遇到的问题是,一些公司的月底不同(由于交易暂停等),这反映在输出列表中:2013-12-30 用于公司 AAA,2013-12-31 用于公司 BBB 和样品的其余部分。
当我使用
合并列表时returns <- do.call(merge.xts, stockDataReturn)
它为 2013 年 12 月 30 日创建一个单独的行,其中包含除 AAA 公司之外的所有 NA。 我该如何解决这个问题?我的理解是,在合并之前我需要坚持使用月年格式作为索引。
理想情况下,我想要的是在monthlyReturn 阶段,它使用月初日期而不是月底。
【问题讨论】: