Well, we do get market data for "IBM" on exchange "NYSE" and we do not have very special market data subscriptions.
The only difference between our approach and the code snippet from Kanda Bongo is that we, as a matter of practice, never make Contract objects for requests ourselves. We rather make reqContractDetails queries with the smallest amount of information that uniquely identifies the instrument (such as symbol "IBM" on exchange "NYSE") and use the full featured contract object we receive from IBKR for subsequent requests (such as market data or order placement). The coontract we receive for "IBM" on "NYSE" below and it works great for requesting market data.
闯ü谤驳别苍
"contract" : {
??? "conid" : 8314,
??? "symbol" : "IBM",
??? "secType" : "STK",
??? "lastTradeDateOrContractMonth" : null,
??? "strike" : 0.0,
??? "right" : null,
??? "multiplier" : null,
??? "exchange" : "NYSE",
??? "primaryExch" : "NYSE",
??? "currency" : "USD",
??? "localSymbol" : "IBM",
??? "tradingClass" : "IBM",
??? "secIdType" : null,
??? "secId" : null,
??? "deltaNeutralContract" : null,
??? "includeExpired" : false,
??? "comboLegsDescrip" : null,
??? "comboLegs" : [ ]
}
toggle quoted message
Show quoted text
On Thu, May 19, 2022 at 11:40 AM, Colin B Maharaj wrote:
Look and you'll see in the code... exchange = "NYSE", guess what , you and most people do not have market data from "NYSE".?
I consider that to be premium and its a paid for subscription to IB.
Try ... exchange = "BATS" instead.
?