2017-05-27 179 views

回答

1

您可以按照我以前的post,这可能会帮助你。

我想:

library(quantmod) 
# Create an object containing the Pfizer ticker symbol 
symbol <- "PFE"  
# Use getSymbols to import the data 
getSymbols(symbol, src="yahoo", auto.assign=T) 
# because src='google' throws error, yahoo was used, and even that is down 

当我尝试过其他来源,它的工作:

# "quantmod::oanda.currencies" contains a list of currencies provided by Oanda.com 
currency_pair <- "GBP/CAD"  
# Load British Pound to Canadian Dollar exchange rate data 
getSymbols(currency_pair, src="oanda") 
str(GBPCAD)  

,似乎有与谷歌问题和雅虎,而我们使用quantmod PKG。

我会建议你使用“Quandl”代替。 PLZ转到Quandl网站,免费注册和创建API密钥,然后在下面复制:

# Install Quandl 
install.packages("Quandl") 
# or from github 
install.packages("devtools") 
library(devtools) 
install_github("quandl/quandl-r") 

# Load the Quandl package 
library(Quandl) 

# use API for full access 
Quandl.api_key("xxxxxx") 

# Download APPLE stock data 
mydata = Quandl::Quandl.datatable("ZACKS/FC", ticker="AAPL") 

对于HDFC在BSE,你可以使用:

hdfc = Quandl("BSE/BOM500180") 

了解更多详情:

https://www.quandl.com/data/BSE-Bombay-Stock-Exchange?keyword=HDFC 
0

雅虎失败后,我切换到eodhistoricaldata.com,几个星期前我发现了一个很好的替代方案(https://eodhistoricaldata.com/),其API与Yahoo Finance非常相似。

基本上,几乎所有的R脚本,我用我只是改变了这一点:

URL <- paste0("ichart.finance.yahoo.com/table.csv?s=", symbols[i]) 

到:

URL <- paste0("eodhistoricaldata.com/api/table.csv?s=", symbols[i]) 

然后加入一个API密钥,它会以同样的方式工作如前。我为它节省了大量的R脚本。