use*_*156 1 api r quantmod yahoo-finance interactive-brokers
我一直在与盈透证券TWS和R合作,并且取得了不同的成功。
library(IBrokers)
IBConn <- twsConnect(port = xxxx)
currency_df = twsCurrency("NZD",currency = "USD")
test = reqHistoricalData(IBConn, Contract = currency_df, whatToShow ='BID_ASK', useRTH = "0", barSize = '1 min', duration="1 D", endDateTime = paste0(gsub("-","", reqCurrentTime(IBConn))," EST"))
plot(test$NZD.USD.Close)
library(quantmod)
plot(test$NZD.USD.Close)
chartSeries(test$NZD.USD.Close)
addBBands(n = 20, sd = 2, ma = "SMA", draw = 'bands', on = -1)
Run Code Online (Sandbox Code Playgroud)
效果很好,我可以下载当天的1分钟货币数据。
当我尝试获取公司的股票数据时就会出现问题
tws = twsConnect(port=7497)
symbol = twsSTK("AAPL")
data_AAPL = reqHistoricalData(tws, symbol)
print (data_AAPL)
Run Code Online (Sandbox Code Playgroud)
但是,我没有得到与该博客相同的结果(reqHistoricalData函数 -大约在页面的一半)。
我使用以下代码请求的其他数据运行了几个小时,并且我不得不在R控制台中单击“停止”。
tws <- twsConnect()
aapl.csv <- file("AAPL.csv", open="w")
# run an infinite-loop ( <C-c> to break )
reqMktData(tws, twsSTK("AAPL"),
eventWrapper=eWrapper.MktData.CSV(1),
file=aapl.csv)
close(aapl.csv)
close(tws)
Run Code Online (Sandbox Code Playgroud)
我的问题是,如何使用盈透证券R软件包下载AAPL股票的前1天或5分钟数据(开盘,高,低,收盘价)?我可以使用quantmod软件包收集每日数据,但是我想知道是否可以使用IBrokers软件包以Open High Low和Close的格式收集分钟数据。
注意:我正在使用盈透证券模拟交易帐户。
您没有获得与所提到的博客中相同的数据的原因是,您所引用的historical (i.e. reqHistoricalData(tws, symbol)数据是博客中的示例所指的market data ( i.e. reqMktData)是流式传输并且完全不同。要获取股票的历史日内数据(AAPL),您必须定义contract如下:
contract = twsContract(0,"AAPL","STK","SMART","ISLAND", "","0.0","USD","","","",NULL,NULL,"0”)
Run Code Online (Sandbox Code Playgroud)
例:
library(IBrokers)
IBConn <- twsConnect(port = 7497)
contract = twsContract(0,"AAPL","STK","SMART","ISLAND", "","0.0","USD","","","",NULL,NULL,"0")
data_AAPL = reqHistoricalData(IBConn, contract, whatToShow ='BID_ASK', useRTH = "0", barSize = '1 min', duration="1 D", endDateTime = paste0(gsub("-","", reqCurrentTime(IBConn))))
> head(data_AAPL)
AAPL.Open AAPL.High AAPL.Low AAPL.Close
2017-10-23 10:00:00 156.00 157.20 156.00 156.64
2017-10-23 10:01:00 155.99 156.65 155.95 156.64
2017-10-23 10:02:00 155.95 156.65 155.95 156.65
2017-10-23 10:03:00 155.95 156.65 155.95 156.65
2017-10-23 10:04:00 155.95 156.60 155.95 156.60
2017-10-23 10:05:00 155.95 156.62 155.95 156.60
AAPL.Volume AAPL.WAP AAPL.hasGaps AAPL.Count
2017-10-23 10:00:00 -1 -1 0 -1
2017-10-23 10:01:00 -1 -1 0 -1
2017-10-23 10:02:00 -1 -1 0 -1
2017-10-23 10:03:00 -1 -1 0 -1
2017-10-23 10:04:00 -1 -1 0 -1
2017-10-23 10:05:00 -1 -1 0 -1
Run Code Online (Sandbox Code Playgroud)
别忘了用twsDisconnect(IBConn):-) 关闭连接