使用getSymbols下载所有可用数据

时间:2015-09-13 09:09:33

标签: r warnings quantmod

我想从Yahoo Finance下载几个股票的完整数据历史,但我始终只从2007-01-03开始获取数据。例如:

> library(quantmod)
> e <- new.env() 
> getSymbols( "MSFT", src="yahoo", env=e)
[1] "MSFT"
Warning message:
In download.file(paste(yahoo.URL, "s=", Symbols.name, "&a=", from.m,  :
  downloaded length 137552 != reported length 200
> e$MSFT[1,]
#            MSFT.Open MSFT.High MSFT.Low MSFT.Close MSFT.Volume MSFT.Adjusted
# 2007-01-03     29.91     30.25     29.4      29.86    76935100      24.28526

我搜索了有关“已下载长度!=报告长度”警告的stackoverflow问题,我找到this question,但那里的解决方案无法解决问题。

1 个答案:

答案 0 :(得分:2)

问题是from的默认值为"2007-01-01" getSymbols.yahoo(以及许多其他getSymbols个功能)。如果您想要所有可用的历史记录,请设置from = "1900-01-01"

R> getSymbols("MSFT", from="1900-01-01")
# [1] "MSFT"
R> MSFT[1,]
#            MSFT.Open MSFT.High MSFT.Low MSFT.Close MSFT.Volume MSFT.Adjusted
# 1986-03-13  25.49952  29.24928 25.49952   27.99936  1031788800      0.068281