IBrokers - reqMktData 导致错误,提示股票代码“不明确”

Tre*_*eha 3 r tws ibrokers

我正在尝试使用 R 上的 IBrokers API 获取实时市场数据。

由于一个奇怪的原因,微软(MSFT)不起作用。

例如,这有效:

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

但是,这不起作用:

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

错误信息如下:

2 3 200 The contract description specified for MSFT is ambiguous. 
Run Code Online (Sandbox Code Playgroud)

然而,这并不是一个含糊的股票,并且与 YHOO 和 AAPL 位于同一交易所。

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

Tre*_*eha 5

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

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

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