2017-10-21 165 views
0

我一直在玩盈透證券交易平臺和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) 

哪個效果不錯,我可以下載當天1分鐘的貨幣數據。

的問題出現了,當我試圖站穩

tws = twsConnect(port=7497) 
symbol = twsSTK("AAPL") 
data_AAPL = reqHistoricalData(tws, symbol) 
print (data_AAPL) 

的庫存數據。但是,我沒有得到相同的結果,因爲這blogreqHistoricalData功能 - 大約一半,該頁面)。

使用下面的代碼請求的其他數據會運行數小時,並且我不得不在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) 

我的問題是,我怎麼能下載前幾天的1或5分數據爲AAPL股票(開放式,高,低,關閉),使用盈透證券[R包?我可以使用quantmod軟件包收集日常數據,但我想知道是否可以使用IBrokers軟件包以Open High Low和Close格式收集分鐘數據。

注意:我正在使用盈透證券模擬交易賬戶。

+0

據我所知,數據饋送是免費的貨幣,但要獲得股票數據,你需要訂閱。您能否使用交易平臺觀察AAPL的實時報價?當你爲AAPL調用reqHistoricalData時,你得到了什麼? – Janos

回答

3

你沒有得到與你提到的博客相同的數據的原因是,你指的是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」) 

例如:

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 

不要忘記關閉:-)

twsDisconnect(IBConn)連接
+0

感謝您的回覆,我已經運行了您擁有的代碼,並獲得了輸出爲NULL的head(data_AAPL)。我會檢查是否有連接錯誤 – user113156

+0

你檢查過你的端口號嗎?也許你正在另一個端口上運行你的交易平臺。 – hvollmeier