我目前正在关注财经视频,而且我的时间是以下video的8:02分。我相信在视频作者已经完成下载数据方面我出错了。
我已粘贴下面的代码,您应该可以从Rstudio窗口运行而无需下载任何其他文件。
我首先使用quantmod包导入数据。
library(quantmod)
getSymbols("F", src="yahoo", periodicity = "monthly", from="2007-10-01", to="2012-11-01")
colnames(F) <- c("Open", "High", "Low", "Close", "Volume", "Adj")
这里我遇到了一个小问题,该视频在2012年10月1日开盘价为9.89,调整收盘价为9.88。当我查看我通过quantmod软件包下载的数据时,我在2012-10-01打开了12.380和Adj Close 8.915304。我完全理解在下载数据时可能存在值的差异,但为什么我通过quantmod包得到的值大不相同。
进一步
我去雅虎财经网站交叉检查价值观。以下是2012年10月1日的Yahoo link或雅虎在9月30日至2012年9月开盘价格为9.89,调整后收盘价格为8.92,非常接近于视频。
为什么通过quantmod导入不正确,这是漫长的一天,所以我假设我错过了一些东西。
答案 0 :(得分:3)
下载的quantmod数据会根据股息进行调整。最近查看每日价格,然后在2017年10月对股息进行修正:
aa <- getSymbols("F", src="yahoo", periodicity = "daily", from="2007-10-01", auto.assign = FALSE)
aa["2017-10/"]
通过时间回溯的股息会计导致yahoo和您下载的xts对象的价格变化。例如OHL价格调整了15美分,即股息前10月的股息大小。支付股息后,请注意雅虎和xts对象的OHL价格是如何相同的。
如果您想要在没有分红调整的情况下返回雅虎数据,请在getSymbols调用中将adjust
参数集添加到TRUE
(这是函数getSymbols.yahoo
/ {的passthru参数{1}}):
getSymbols.yahooj
如雅虎网站所述,似乎股票拆分在其网站上的数据中得到了解释。