google finance getprices网址可通过浏览器运行,但不能通过R

时间:2017-09-15 19:41:58

标签: r quotes fread google-finance

此网址https://finance.google.com/finance/getprices?i=60&p=1d&f=d,l,h&q=ALV会在Chrome中为一天的ALV返回预期的一分钟价格。

库(data.table); fread(" https://finance.google.com/finance/getprices?i=60&p=1d&f=d,l,h&q=ALV",sep =" / n")

一直工作到昨天(17/14/17)。现在它只返回标题信息,不返回一分钟数据。就像在一分钟数据之前插入了EOF一样。我也在R中尝试了getURL()和其他方法,结果相同。

有关如何在R中获取一分钟数据的任何建议?或者进入任何文件格式?

1 个答案:

答案 0 :(得分:0)

奇怪,这适用于我有RStudio版本1.0.136& R版本3.3.3:

library(data.table)
library(xts)

url = "https://finance.google.com/finance/getprices?i=60&p=1d&f=d,o,h,l,c,v&q=AAPL"    
data = tryCatch({ fread(url) }, error = function(cond) { return(NULL) })
if(is.null(data)) {
   print(paste('Error getting data from', url))
}

# swap columns since google places close price first 
data = data[,c(1,5,3,4,2,6)]
colnames(data) = c('Date','Open','High','Low','Close','Volume')
# get start unix time
data$Date = as.double(gsub('a','',data$Date))
# add to rest 
data$Date[-1] = data$Date[-1]*60 + data$Date[1]
# make xts
data = xts(data[,2:6], order.by = as.POSIXct(data$Date, origin='1970-01-01'))

这给了我最新的1分钟数据。