quantmod getSymbols google 重复错误

quantmod getSymbols google duplicate bug

我在尝试使用 getSymbols().

为 google 来源提取数据时不断收到错误消息

基本上,2003 年 12 月 28 日至 30 日的日期是 "missing",然后它将最小日期默认为 2001,而不是我指定的最小日期。

是否有解决此错误的方法,以便我可以正确且完整地从 google 中提取数据作为我的 getSymbols 函数的来源?

请看下面我的代码:

install.packages("quantmod")
library(quantmod)

ticks <- c("XLF", "XLK")

getSymbols(ticks, src = "google", 
       from = as.Date("1999-12-01"), to = as.Date("2017-05-11"))

以下是我收到的警告信息:

Warning message: In getSymbols.google(Symbols = c("XLF", "XLK"), env = , : google duplicate bug - missing Dec 28,29,30 of 2003

这与关于重复项的警告无关。相反,Google Finance 似乎将您一次可以下载的观察数量限制为 ~4000。

如果你去他们的historical prices page for XLF, select a date range larger than 4000 days, and click the Download to spreadsheet link,就会发生这种情况。

目前,您可以通过多次调用 getSymbols 来解决此问题,每次调用的历史记录少于 4000 天,然后合并结果。

类似于:

from <- "1999-12-01"
to <- "2017-05-11"
for (tick in ticks) {
  one <- getSymbols(tick, src = "google", from = from, to = "2010-12-31", auto.assign = FALSE)
  two <- getSymbols(tick, src = "google", from = "2011-01-01", to = to, auto.assign = FALSE)
  assign(tick, rbind(one, two))
}