0

I have set reqMarketDataType(MarketDataType.DELAYED). But then I am getting

"Requested market data is not subscribed"

error while fetching delayed data.

// API Version 9.72 and later Launch EReader Thread
    m_reader = new EReader(client, m_signal);
    m_reader.start();
    new Thread() {
        @Override
        public void run() {
            processMessages();
        }
    }.start();

    Contract contract = new Contract();
    contract.symbol("GOOG");
    contract.exchange("SMART");
    contract.secType("STK");
    contract.currency("USD");

    // Create a TagValue list
    Vector<TagValue> mktDataOptions = new Vector<>();
    // Make a call to start off data retrieval
    client.reqMarketDataType(MarketDataType.DELAYED);
    client.reqMktData(1001, contract, null, false, mktDataOptions);

}
Aqueous Carlos
  • 445
  • 7
  • 20
  • 1
    Are you sure that setting the data type as delayed allows to request data from markets you didn't subscribe? I'm just speculating, but I would imagine that you always have to subscribe to the exchange where the symbol is, by logging in to Account Management. – SantiBailors Jan 05 '18 at 06:08

1 Answers1

0

Based on your market data type and error displayed, it is USA equity, you need to subscribe the market data. Please refer to the follow link:

The procedure to subscribe the market Data in IB

To use the market data page

  1. Click Manage Account > Trade Configuration >Market Data. Your current market data subscriber status (Professional or Non-Professional) is displayed in the page title. Market data subscriptions are organized by region (North America, Europe, Asia-Pacific).

The Market Data page appears.

enter image description here

  1. To sign up for additional market data subscriptions, click the tab for the region you want, click the check box for each subscription you wish to add, then click Back.

  2. If you have additional linked, duplicate or consolidated accounts, the Billable Account section appears on the page. Use this section to change the account that is billed for market data.

enter image description here

Select the account you want to be billed for market data, then click Change Billing Account. Beginning with the next billing cycle, your market data subscriptions will be billed to the account you selected.

  1. To unsubscribe from market data, click the check box for the subscription to clear the check mark, then click Back.Read and complete any Subscriber Agreement that appears, then click Back.

The Market Data page opens again, with your new selections updated and any pending subscriptions identified as such. Market Data subscription updates take effect immediately under normal circumstances.

https://www.interactivebrokers.com.hk/en/software/am/am/manageaccount/marketdatasubscriptions.htm

Subscription considerations for U.S. market data (Non-Professionals)

Generally speaking, clients trading a broad variety of product classes should consider the basic bundled subscription referred to as the US Securities Snapshot and Futures Value Bundle which costs USD 10 per month and provides quotes for a variety of U.S. stocks, stock indices, bonds, futures and futures options. The monthly fee for this subscription is waived for any month in which the account generates at least USD 30 in commissions.

https://ibkr.info/node/2840

Aqueous Carlos
  • 445
  • 7
  • 20