- ago
Hello,

I am running into a very strange and frustrating problem with only one particular contract. I am trying to trade the Ultra 10-Year US Treasury Note, but WL will only show me the March contract. The current most traded contract is the June contract, but WL says, "Could not obtain historical data for symbol: TNM24". It gives the same error for every month except the March contract.

I also tried using IQFeed's data and then translating the symbol with no luck. I get the error "Could not identify a contract for TN".

I would like to blame IB, but when I enter the symbol "TNM4" on IB's TWS the correct contract comes up. So I am wondering if there is some translation error or something else strange going on. Does anyone have any idea what might be going on here?

Thanks,
Dandude

0
279
Solved
10 Replies

Reply

Bookmark

Sort
Cone8
 ( 23.52% )
- ago
#1
Hmmm. Same here.
I'm not sure why yet, but IB isn't recognizing that contract. Maybe something changed with the specs?

Update: I'm not getting any CBOT contracts.
0
- ago
#2
Any ideas as to the cause?

I am getting even more weird behavior as I am looking at the charts.

The IQFeed chart for @TN#C is missing data and/or some bars are rolled up into eachother. On my hourly chart each bar is not an hour but rather two hours. Now I don't know what data or parameters my strategy is working on or works on.

Here is a screenshot of the IB chart next to the IQfeed chart in WL.



0
- ago
#3
This could be because I do not have the CBOT real time data.

However, I thought that IQfeed provided delayed data even without the real time subscription.

Edit: Upon further investigation, I do not think it is my subscription because when I move to other timeframes, I do not see the same discontinuity.
0
Cone8
 ( 23.52% )
- ago
#4
Any ideas as to the cause? No.

Those 2-hour bars are another first. We'll have to look into it.
0
- ago
#5
I'm sure you are aware, but I am finding the same problem with other CBOT contracts on the 1 hr chart.

Actually I am finding it on all of my charts for the 1hr on Futures contracts that trade 23hrs a day.
0
Cone8
 ( 23.52% )
- ago
#6
Right, the "2-hour 60-minute bars" is not an IQFeed issue. It has something to do with scaling while assigned to CBOT (or probably any 23-hour market). 24-hour cryptos, for example, aren't affected.

As a work-around (until a fix comes), since IQFeed always timestamps with EST, assign these symbols to the Currencies market in Market & Symbols. You may need to right click and refresh the chart so that the new Market is recognized.

Timestamps for IB will be in the market time zone, so you may need to create a copy of Currencies and use CST to assign to CBOT symbols. But I still don't know what we're missing to properly identify those CBOT contracts at IB.
0
Cone8
 ( 23.52% )
- ago
#7
Okay, I figured out what going on for CBOT... they've normalized the Local Symbol Name to the way other futures venues do it.

Here's how you can fix it right now:
1. Close WealthLab.
2. Open IBContracts.txt, look for your contract record, and make this change to the LocalSymbol field:

CODE:
IS: TNM24=TN|USD|FUT|CBOT||TN JUN 24|202406||0|1000 CHANGE TO: TNM24=TN|USD|FUT|CBOT||TNM4|202406||0|1000

The next Build for the IB Provider will adapt to that change, but you need to fix all of these that exist in the IBContracts.txt.
0
- ago
#8
Thanks for all the help Cone!

Edit: I did change the market to currencies and the symbol is still on Futures mode. I will report if this doesn't work, but I expect it will!

The only issue with assigning these symbols to currencies is that in order to get an accurate backtest I need them to take on the Futures mode changes and details. Is it possible to use both of these settings simultaneously?

0
Cone8
 ( 23.52% )
- ago
#9
I didn't follow that. You're just assigning the Market. The rest of the contract details don't change.
1
Cone8
 ( 23.52% )
- ago
#10
Build 87 is ready with the fix for the hourly bars.
0
Best Answer

Reply

Bookmark

Sort