- ago
Should the data source reflect the stream selected? The stream selected is IB, however source indicates IQFeed..
0
519
Solved
39 Replies

Reply

Bookmark

Sort
- ago
#1
0
- ago
#2
No, it shouldn't. It always indicates the historical data source (IQFeed), not the streaming (which is IB).
0
Best Answer
Cone8
 ( 3.17% )
- ago
#3
If you're paying for IQFeed, it's just a mistake to use IB for Streaming.
Turn off the Stream, select IQFeed, and then turn it back on.
1
Glitch8
 ( 6.70% )
- ago
#4
No, you can mix and match as you like.
0
- ago
#5
Thanks.

If you recall I’m seeing price discrepancies between IQFeed and my broker IB. I have IQFeed running in one chart and IB in another.

I’m I the only one crazy enough to scalp futures? Others must be seeing this too.

I’m trading futures at $10 to $20 per point. I have my IB account tied to Collective2 where I manage a couple of accounts.

I developed an automated trading algorithm that was looking promising in simulation,but in practice I found a disconnect in the price between IQFeed and IB.

One of the trading websites for futures explained this same issue and setup just like I did to set the limit orders such to minimize the price discrepancies.

Anyway I’ve spent this week trying to understand this because the back tester and optimization is not valid if IB is producing different 1 and 5 minute tick data.
0
Glitch8
 ( 6.70% )
- ago
#6
Why not use IQFeed?
0
Cone8
 ( 3.17% )
- ago
#7
Right. See Post #3.

There's no secret about streaming data being different between a tick-by-tick provider (IQFeed) and one that isn't (IB). This blog article discusses that in detail:
All About WealthLab Intraday and Realtime Data Providers

Furthermore, I went through the trouble yesterday to show you that IB's historical data (for this test) was precisely the same as IQFeed's historical data, and, you can trade this IB data using Streaming Bars in the Strategy Monitor. Did you see this?
https://www.wealth-lab.com/Discussion/IQFeed-and-IBD-streaming-mismatch-12311#post6
0
- ago
#8
Thanks for the help.

I haven't figured it out yet.

I have data manager up with streaming Data Testbed displaying data with time stamp different than the time stamp on my chart. The Quotes and Price Trigger time stamp is the same.

I watched this morning IB was not streaming the same price data as IQFeed, so now I'm focused on the timestamps in the charts vs. what is displayed on Quotes and Price Triggers and streaming test bed.

I first noticed this when executing trades and seeing the trade show up on the chart at a different time.

I will keep at it

I've also toggled the historical data provider as noted by Eugene. For some reason my code runs fine with IQFeed, but with IB as historical provider I'm getting some historical data I calculate and store not populating.

Anyway, I'll see what I can do. It doesn't appear anyone is trying to do what I'm doing and has a example trade book.
0
Cone8
 ( 3.17% )
- ago
#9

The IB Provider will generally identify the market automatically, like CME, and the timestamps are adjusted for the market time zone. Therefore NQ/ES futures are CST.

Unless you specify markets for symbols that you request with IQFeed, the timestamps will be US Eastern - like in my example in the other thread, because I don't use IQFeed.

Let's assume this is your problem and you're mixing IB and IQFeed data. You need to make sure both providers are pointing to the same market. (The Market is displayed at the bottom of the chart too.) Create records like this one so that IQFeed timestamps are in the market time zone.


Important!
If you do it, you need to refresh (delete the cache) for these symbols at least. Since IQFeed downloads are quick, it's probably just best to start from scratch - right click IQFeed in the Historical Providers list > Delete Local Files.
0
Cone8
 ( 3.17% )
- ago
#10
And the result -

0
- ago
#11
Thanks. Did not know about this. I did get the CME for IB, but IQFeed I need to check.
0
- ago
#12


It says I have Real-Time, but my feed is coming in delayed.

So I need to see what is up tomorrow when they get back to work.
0
Cone8
 ( 3.17% )
- ago
#13
Call IQFeed to get the real time data. You might have to sign some exchange forms.

Re: CME
You need to create Symbols records for IQFeed symbols in the Market Manager like shown in Post #9. This is important so that the "Filter" doesn't filter data outside of U.S. Stock market hours.

The other option for globex futures is to ignore the market time zone, uncheck WealthLab's Pre/Post Filter, and let IQFeed's feed be in Eastern time - and make sure to use only IQFeed historical data and streaming (don't mix with IB).
0
- ago
#14
Well the emini is an additional price. I started with mini, but the leverage was more than I wanted so I switched to emini and never figured out why my trades were showing up at the wrong time on the chart as initially indicated in a past post.

1st I found IB was not read time, so I added that assuming my emini was real-time. This created additional confusion.

Thanks.
0
- ago
#15
Ironically the NQM25 using IQFeed and MNQM25 using IB track in price, but with different contract volume.
0
Cone8
 ( 3.17% )
- ago
#16
Let me stress this one last time (ad nauseum) because it sounds like you're still comparing IQFeed streaming to IB.

Most of the time (more than 50% - 95%), OHLC built from IB Streaming will be the same as IQFeed, i.e, they'll match historical bars. Volume will almost never be the same, but it will rhyme.

However, if you want to trade N-minute bars that match historical bars, do not use IB streaming - not in a chart and not in the S. Monitor.
But, you can use IB Streaming Bars in the S. Monitor. Those will match.

Lastly, if you're going to pay for IQFeed. Don't even use IB for data. Turn it off - uncheck it as a Historical Provider and make sure to select IQFeed for Streaming Charts. IB will pop up as a default for a new Streaming chart if it's connected and selected as the Broker in the Order Manager .
0
- ago
#17
Correct. IB is turned off. I’m only using IQFeed, since 2020.

Just feel like a Dumb Ass because I made assumptions and went about this completely the wrong way. I assumed my original IQFeed futures subscription was good for MNQ. But it is good for NQ. This is why the trades I sent a month ago or so did not show up at the correct time on the chart.

In December when I started with NQ and ES there was no delay.. Then I assumed there was some time issues between Collective2 and WL8. I was using WL8 using 5min for setups and Collective2 with 1min to place and entry and exit as the leverage was high a price moved profit/loss moved quickly.

Then I got side tracked with the delayed data and starting looking at IB vs. Collective2.

Just glad this was figured out and can move on.

Thanks.
0
- ago
#18
OK. I give up. I made a trade today and Collective2 logs the correct times. My WL8 chart show I opened and closed in 1st 5min bar.

I can live with that.
0
Cone8
 ( 3.17% )
- ago
#19
Give up on what? What are you not understanding?
0
- ago
#20
My original question back in December.
 
https://www.wealth-lab.com/Discussion/Timestamps-different-between-WL8-and-CS2-in-live-trading-12031



0
Cone8
 ( 3.17% )
- ago
#21
Let's take the first example and remember that WealthLab timestamps bars at the end-of-interval.

At precisely 10 AM, let's assume you placed a market order (you didn't specify). This trade will occur AFTER the bar that ends at 10:00, which is the 10:05 bar. On a 5-minute chart you can't tell if the trade happened at 10:00:00.001 or at 10:05:00.000. When the 10:05 bar finishes and appears in the chart, you'll see that a Market order filled at the opening price. Right?

Because the sell actually occurred at 10:17, presumably this was a stop or limit order and that means if WL generated the order it should have occurred on the 10:20 bar - but you said the WL "sell at 10:30". Given the data in the chart, is WL wrong?
Should it have occurred on the 10:20 bar?
What was the symbol and fill price?
Was it a full lot trade or fewer than 100 shares?
0
- ago
#22
Today I placed trade at 6:55 AM and closed at 6:56 AM. On my chart they showed up on the 1st opening 5min bar.

Is anyone using linking WL8 to an IB account that is also linked to Collective 2?
0
Cone8
 ( 3.17% )
- ago
#23
Me.

QUOTE:
Today I placed trade at 6:55 AM and closed at 6:56 AM.
No context.

Why change the subject? Let's work out what we were just talking about so you can get this straight.
0
- ago
#24
OK. I restarted WL8 and the trade is no longer the chart.. Next time I trade I will get the snap shot.

Basically on Collective 2 the trades occurred at 6:55 and 6:56 AM.

On WL8 chart they show both show up on the 6:35AM.

I understand +/- 5min variation but here is it off at least 15min.

0
- ago
#25
Here are the trades from IB and Collective 2.




0
Cone8
 ( 3.17% )
- ago
#29
QUOTE:
I restarted WL8 and the trade is no longer the chart..
Wait a minute. Is the strategy auto-trading to C2?
If the trade isn't in the chart, the problem is the strategy.

Every trade from WealthLab comes from a backtest. You should be able to run the strategy at any time right now and see the trades that went off today.
0
Cone8
 ( 3.17% )
- ago
#30
Here's my opening trade at C2 today. I even closed the strategy, opened it again and ran it just now. The chart provider is IB, so the time on the chart is CST (1-minute bars). The trade was a limit order that starts at the 08:30 open and was filled between 08:32 and 08:33, so you'll see it on the 08:33 bar.

0
- ago
#31
I traded that one this morning manually because I had to head off to work.

I do see the auto trades and can look at previous dates when I ran the auto trader and ran off to work.

I signed an agreement with IB stating I would monitor the auto trader.

Let me look at days I had the auto trader on
0
- ago
#32
I should be clear that I auto placed with limit order and adjusted the price in IB api.

Probably an important detail
0
- ago
#33
I'll subscribe to MNQ tomorrow. I'm very interested to see how this works because the simulation shows good results. I'm currently rank #16 on my SPDR strategy, but to get to the top I want to get this future strategy working. So far and no fault but my own, I still figuring things out.

Also I'm buried at work so it may take some time to what watch what is going on. I may optimize for 2 contracts for testing purposes. Below uses 5 contracts. Also with limit orders I don't aways get filled and that may be another issue to deal with down the road, but so far the auto trading is stranding open positions.


0
- ago
#34
Today I place a trade in the chart using the buy and sell buttons and the trades show up correctly. Also I have the full CME and trade MNQM25. I'll leave the system running in auto trading mode. When I get time, I'll go back repeat the previous experiment where I place limit orders from the chart, but I go into the IB API and change the price.
0
Cone8
 ( 3.17% )
- ago
#35
What do you expect to happen in a WealthLab backtest when you change the order prices outside the backtest? 🤯
0
- ago
#36
I have both a 1min chart and 5 min chart. On the 1min chart they are within the minute as expected.

Thanks for your being patience and helping troubleshoot this issue.
0
- ago
#37
ok. Auto trader enter trade, then it placed limit and stop, then I manually changed the stop in IB API and everything lines up perfectly.

I got to go.

Thanks - issue resolved.

Lesson Learned - Make sure your data is real -time. Pay the full $135 CME price if you want to trade the micro mini.
0
- ago
#38
Using the same technique. Chart running strategy and using the manual Buy/Sell buttons with limit orders and then going to IB to modify the limit orders.

I placed a trade a buy at limit., then sell at limit order.

The buy executed at 6:36AM and the Sell at 6:37AM

The buy showed up on previous day on the chart but the sell showed up a 6:38AM.

I later placed a trade at 9:48 and 9:49. These both show up correctly on the chart.

So from this experiment. I would say the only trades in the 1st 5min can show up at a different time for some reason using the technique above.

My strategy with autotrading enabled will not execute within the 1st 5min bar. I will take min 2 or 3 bars before it can decide what trade to place.

Anyway thanks again. I ran the optimizer last night and woke up with new parameters to use.

This platform has really come a long way and now even real-time trading works with amazing flexibility across WLB, IB and Collective 2.

0
Cone8
 ( 3.17% )
- ago
#39
You didn't mention it and I've been oblivious to it until now, but since you're entering trades manually and expecting to see those trades on the chart (that weren't created by your strategy), you must have enabled the Use Live Positions Trading Preference.

You can read plenty about that option in the Help (F1), but there's certainly no guarantee on which bar the trade shows up (for reason described in the documentation). Ultimately, it's based on when you started the Streaming chart and the price the broker (C2) reports for the position - which could be an average price of many trades and not necessarily the one you just created. In any case WL looks for the earliest bar that it can find to accommodate the broker's basis price for the position.
0

Reply

Bookmark

Sort