IBrokers - reqMktData导致错误,说自动收报机是“不明确的”#34;

时间:2014-12-15 23:55:55

标签: r ibrokers tws

我试图在R上使用IBrokers API捕捉实时市场数据。

由于一个奇怪的原因,微软(MSFT)没有工作。

例如,这有效:

library("IBrokers")
tws <- twsConnect()
nms <- c("AAPL","YHOO")
reqMktData(tws, lapply(nms, twsSTK), tickGenerics="", snapshot=T)
twsDisconnect(tws)

但是,这不起作用:

library("IBrokers")
tws <- twsConnect()
nms <- c("AAPL","YHOO","MSFT")
reqMktData(tws, lapply(nms, twsSTK), tickGenerics="", snapshot=T)
twsDisconnect(tws)

错误信息如下:

2 3 200 The contract description specified for MSFT is ambiguous. 

然而,这不是一个模棱两可的股票代码,与YHOO和AAPL在同一个交易所。

有谁知道我需要做些什么来解决这个问题?谢谢。

2 个答案:

答案 0 :(得分:2)

为了解决这个问题,我只是将股票交易所指定为在纳斯达克交易模糊的单独代码。

tickers_nasdaq<-c("MSFT","INTC","CSCO")
reqMktData(tws, lapply(tickers_nasdaq, twsSTK, exch = "SMART", primary="NASDAQ", currency = "USD"), tickGenerics="", snapshot=T)

显然这不是理想的,但至少它是有效的。

答案 1 :(得分:0)

稍后回答......
不应指定主要交换,因为您将遇到其他符号问题,而是将m_localSymbol上的contract()指定为与{1}}相同的值m_symbol,在这种情况下:MSFT

https://www.interactivebrokers.com/en/software/api/apiguide/java/contract.htm