Login Page - Create Account

Support Board


Date/Time: Fri, 26 Apr 2024 16:45:34 +0000



Post From: orders disappear/not transmitted to IB

[2015-11-20 02:48:24]
Sierra Chart Engineering - Posts: 104368
We are just about ready with release. We do have it solved.

And we did hear from Interactive Brokers, and their comments are noted, and we do acknowledge that the patch we put in many years ago, did have a problem crossing from 2015 to 2016.

This is what we told IB:
Thank you for the information. This is understood.

However, what we would suggest is that because there are three different ways of specifying a market when requesting market data and placing an order, according to what you have given below, for the same futures contract, that you provide a complete contract specification in the UpdatePortfolio message.

You acknowledge (see quotation below), that you are not relaying the Contract Year and Month. Only last trade date. But yet an API client is capable of subscribing using the Contract Year and Month. This is the inconsistency.

The problem is we have to do special processing to take the Last Trade Date and Local Symbol and extract out the correct Year and Month to match it up with the contract specification used when placing the order.

Furthermore, we have even seen for Local Symbol this format: "ZN MAR 11". This is based upon our notes. Although we could be mistaken about this since it was from a while ago. Perhaps it was for another trading service.

From Interactive Brokers:
-----
We do not relay year and month identifiers for positions, see below for a snippet of a log showing the updatePortfolio():

TX 16:04:36:776 JTS-EServerSocket-2117: [0:101:101:1:0:7:8:INFO] Sending portfolio entry.
TX 16:04:36:776 JTS-EServerSocket-2117: [0:101:101:1:0:7:8:DET] [7;8;CL;FUT;20151221;0;0;USD;CLF6;1;41.74500275;41745.0;41752.31;-7.31;0.0]
TX 16:04:36:776 JTS-EServerSocket-2117: [0:101:101:1:0:7:8:INFO] Portfolio entry sent.

As you can see we relay the Last Trade Date. We also have a separate parameters for contractMonth and lastTradeDate (see contract Details example above).
-----

Additional comments:

It is quite clear, that the contract specifications provided in a Portfolio/Position Update message, are incomplete. What is the point of providing the last trading date but not providing the other contract details like the Contract Year and Month.

Furthermore, there was a point many years ago, where Interactive Brokers changed the expiration date to the last trade date creating this problem. These are the kind of changes which lead to instability for existing users.

So in conclusion, it is not even possible to subscribe to market data and to place an order using CL-201601-NYMEX-USD-1000 which is a very detailed contract specification and can be auto generated, and then simply and reliably match up the Interactive Brokers Portfolio/Position update with it.

We have accomplished this, but it is not a simple solution which we can always rely on to work in all cases.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2015-11-20 03:25:40