Duplicate: ambigious symbol in IB, was: MSFT symbol error

Hi Folks.... I'm trying to send a test MSFT buy order to IB and I'm getting the error "The contract description specified for MSFT is ambiguous". If I replace the "MSFT" symbol with "AMD" then a buy order is sent to IB without any problem. It looks like my IBDictionary.txt file is ok and includes the lines:

INTC,INTC-!NASDAQ, blah blah comment goes here
CSCO,CSCO-!NASDAQ, the same as above

The test code snippet:

ibc = GetTradingInterface("IB");

if( ibc.IsConnected() ) // check if connection to IB was successfull
   ibc.PlaceOrder("MSFT", "BUY", 100, "MKT", 0, 0, "DAY", False ); 

Error msg in IB Controller 1.3.8: "Error 200. The contract description specified for MSFT is ambiguous."

I've read several posts regarding symbols that trade on multiple exchanges (like MSFT). I also used the IB symbol search option Tomasz referenced in a post I found; however, the search returned the format that is already in the IBDictionary.txt file.

Any suggestions regarding why I can send an AMD buy order but can't send an MSFT buy order?


@mcescher, I was able to replicate your issue.
So, I did a test and MSFT seems to work using ISLAND as the primary exchange.
AFAIU, for Interactive Brokers the Island and Nasdaq monikers are the same thing.

In my code I used:


By the way, I got the same results using INTC and CSCO symbols.


Seems to be a duplicate of this thread, with Tomasz explanation & guidance:

IBDictionary.txt file is NOT used by IBController, it is used by IB DATA

1 Like

This thread is a duplicate of existing one: