Join the 80,000 other DTN customers who enjoy the fastest, most reliable data available. There is no better value than DTN!

(Move your cursor to this area to pause scrolling)




"Previously I was using *******. IQFeed is WAY more economical, and for my charting needs is just as good, if not better." - Comment from Public Forum Post
"You have an excellent product !!!!!!" - Comment from Arely
"And by the way, have to say this. I love the IQFeed software. It's rock solid and it has a really nice API." - Comment from Thomas via RT Chat
"I was with ******* for 4 years at $230 a month, this is a huge savings for me, GOD BLESS YOU PEOPLE," - Comment from T.S. via Email
"Awesome response, as usual. It is a sincere and refreshing pleasure to do business with DTN, compared to your competition." - Comment from Ryan
"Thanks for all of your help. Great customer service deserves to be recognized which one the reasons I've been a customer of DTN for over 10 years!" - Comment from Stuart
"I cannot believe what a difference it makes trading with ProphetX!" - Comment from Bruce in Los Angeles
"My broker in Davenport suggested I give you a try as he uses your service and says its the best." - Comment from Bill via RT Chat
"I will tell others who want to go into trading that DTN ProphetX is an invaluable tool, I don't think anyone can trade without it..." - Comment from Luther
"This beats the pants off CQG, I am definitely switching to the ProphetX 3.0!" - Comment from Stephen
Home  Search  Register  Login  Recent Posts

Information on DTN's Industries:
DTN Oil & Gas | DTN Trading | DTN Agriculture | DTN Weather
Follow DTNMarkets on Twitter
DTN.IQ/IQFeed on Twitter
DTN News and Analysis on Twitter
»Forums Index »Archive (2017 and earlier) »Data and Content Support »Question on QQQ (and other) quotes
Author Topic: Question on QQQ (and other) quotes (16 messages, Page 1 of 1)

nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004


Posted: Sep 30, 2004 10:03 AM          Msg. 1 of 16
I'm trying to figure out what the "real" bid/ask is at any time.

Just did an analysis of message received for QQQ on Sept 27, but I see similar on other days.

Of approx 310,000 messages: 13,000 showed bid/ask crossed and 36,000 showed bid = ask. Observing watch list & level II today, I see situations where bid=ask on watch list, for example 35.15 and level 2 shows bid of 35.14 and ask of 35.16.

With 15.8% of messages showing "confusing" bid/ask, it's something I'd like to try and address in my application.

I don't think it's an IQfeed problem, since I get similar quotes on alternate feed, but wondering if there's a way using IQfeed to get a better sense of what the "real" bid ask is.

DTN_MarketData
-DTN's Market Data Experts-
Posts: 785
Joined: Jul 15, 2004


Posted: Sep 30, 2004 10:23 AM          Msg. 2 of 16
Due to the fact that QQQ is traded on AMEX and not Nasdaq, Level II is not going to give an accurate representation of all Bids and Asks on QQQ. Level II will provide Bids and Asks on Level II because Level II Market Makers wil be bid/asking on QQQ but there will Bids and Asks outside of the Level II Market Makers. This explains the discrepency between Level II and the Watchlist information. The Watchlist is the national market Best Bid/Ask. If you need further information, please reply.

Thanks,

Mike

nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004


Posted: Sep 30, 2004 10:32 AM          Msg. 3 of 16
What's going on when bid > ask?

DTN_MarketData
-DTN's Market Data Experts-
Posts: 785
Joined: Jul 15, 2004


Posted: Sep 30, 2004 02:22 PM          Msg. 4 of 16
That does happen on occasion. If you can give us a specific example we will track the problem and find out where the data came from.

nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004


Posted: Sep 30, 2004 07:46 PM          Msg. 5 of 16
Heck, if it was just a handful of data points I wouldn't bother to raise the issue.

I filtered the QQQ messages from 9:30 to 1 and got 14860 crossed bid/ask out of 292034 total messages. Thats a bit over 5%. I'll pump those to a file and email it to the address in your profile.

nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004


Posted: Sep 30, 2004 11:19 PM          Msg. 6 of 16
Sorry, I meant 9:30 to 4. I'm in CA, where mkt close is 1PM local time.

DTN_MarketData
-DTN's Market Data Experts-
Posts: 785
Joined: Jul 15, 2004


Posted: Oct 13, 2004 12:36 PM          Msg. 7 of 16
I've monitored QQQ for crossed bids and asks for the last week. I set up a filter to only show the condition when the Bid was higher than the Ask. In the last week, the filter never returned an instance when the Bid was higher than the Ask. If you are still seeing problems let me know but I can not replicate the problem here.

Thanks,

Mike Owen
Market Data Analyst

nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004


Posted: Oct 14, 2004 08:41 AM          Msg. 8 of 16
I see it happening regularly, not just with my app, but also in DTNIQ watchlist. I'll try and trap some instances with the time & sales app and email you some data.

If you set up watchlist and put bid column next to ask column, you shouldn't have to wait more than 10-15 minutes to see crossed bid/ask instance.

DTN_MarketData
-DTN's Market Data Experts-
Posts: 785
Joined: Jul 15, 2004


Posted: Oct 14, 2004 10:26 AM          Msg. 9 of 16
Ned,

You are correct there are instances when the Bid is Higher than the Ask. This is the product of the fact that the bids and asks are across multiple markets. For example, we received a quote message in which the BBO(Best Bid or Offer) bid was 35.65 coming from the American Stock Exchange and the BBO Ask was 35.64 coming from the Cincinnati Stock Exchange. If we accepted only bids/asks from the AMEX the problem would not be as prevelent but that would not be an accurate representation of the market. If you need further assistance on this issue, please contact me.

Mike

nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004


Posted: Oct 14, 2004 10:12 PM          Msg. 10 of 16
Mike:

I fully agree with you that that is the underlying cause of the crossed bids. Most anyone who has watched Level II sees this, but it usually pretty obvious that one side is in "error" as the time stamp is rather old, and the activity on that side is occuring above the ask or below the bid. My hunch is that there is a "ghost" bid or ask in the system which failed to clear properly.

With all respect, I disagree that this is a "accurate representation of the market". The issue is more pronounced with SPY's with 14% of the messages in a crossed state. With 64 million shares traded today, it's obviously a very liquid & active market. With firms like IB offering retail customers commission of 1 cent per share up to 500 shares and 0.5 cent per share over 500 shares, transaction costs can't be the issue. I can only guess internal trading desks must have cost very close to zero.

I just pulled tick data from today for SPY (eliminated after hours prints) and there are numerous (260) instances where the bid/ask is crossed by 5-9 cents. That's a huge amount to be crossed, and I find it hard to believe if it were accurate, that market makers or arbs wouldn't hit it and resolve it in the 2-5 cents range.

Getting back to the Q's, I sent you T&S data this morning which showed 177 prints (all at 9:47AM), all with the ask at 35.56 and the bid starting at 35.57, then the bid moved to 35.58. The majority of the last prints occurred above the ask, usually 1 cent above the bid. It's pretty obvious to me the "real" market had the ask above the bid.

Now let me be perfectly clear... I don't think this is erroneous reporting by IQFeed, since I see the same thing from IB feed. I think IQ is missing a huge opportunity to be better than the other quote providers by putting in some logic to detect this situation and provide an alternative bid/ask (in addition to, rather than instead of) which detects a "stuck" bid or ask, and see that the activity is occuring at a different price point.

Hope this makes sense,

Ned

DTN_Jay_Froscheiser
-VP, Product Operations-
Posts: 1746
Joined: May 3, 2004

DTN IQFeed/DTN.IQ/DTN NxCore


Posted: Oct 14, 2004 10:20 PM          Msg. 11 of 16
I would be very hesitant to put anything in that would filter this type of thing due to liability. It may be something we can look at along with the tick correction filters. With that, our plan isn't to arbitrarily filter data, instead, we will identify suspect trades so you, the client can do what you want with it. With quote volume however, doing that kind of analysis on the data stream would be very intense and we would have to be sure to have something effecient enough as to not slow quote delivery. This may be something best left to individual client software who wants/needs the functionality. It is much easier for you to do this filtering on a list of x stocks as opposed to us doing it on all stocks. You would have the same info available to you with the regional quote data.

Jay Froscheiser
DTN Market Access, LLC.

nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004


Posted: Oct 14, 2004 11:41 PM          Msg. 12 of 16
Jay:

I see regional info for last, but I don't see regional quote data for bid/ask.

I know you guys are sensitive bandwidth issues, but perhaps it makes sense to add a timestamp (with seconds) for the bid and ask. That way if a a bid or ask was "old" we geeks could consider it "suspect"?

Would you agree that a crossed bid/ask of 5 cents or more on an active issue like SPY is reason for concern???

Ned

nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004


Posted: Oct 15, 2004 08:21 AM          Msg. 13 of 16
I noodled this overnight, and will add my own timestamp for bid/ask. I'm very curious what the max duration on what I believe a "stale" bid or ask is.

Here's a small snippet of yesterday's T&S for SPY (I added the Crossed by column):

Last Bid Ask Crossed by
10/14/2004 14:47 110.75 3000 110.82 110.74 -0.08
10/14/2004 14:46 110.83 500 110.83 110.74 -0.09
10/14/2004 14:46 110.83 500 110.83 110.74 -0.09
10/14/2004 14:46 110.83 500 110.83 110.74 -0.09
10/14/2004 14:46 110.83 500 110.83 110.74 -0.09
10/14/2004 14:46 110.83 500 110.83 110.74 -0.09
10/14/2004 14:46 110.83 500 110.83 110.74 -0.09
10/14/2004 14:46 110.83 500 110.83 110.74 -0.09
10/14/2004 14:46 110.83 500 110.83 110.74 -0.09
10/14/2004 14:46 110.83 200 110.82 110.74 -0.08
10/14/2004 14:46 110.83 100 110.82 110.74 -0.08
10/14/2004 14:46 110.83 100 110.82 110.74 -0.08
10/14/2004 14:46 110.83 100 110.82 110.74 -0.08
10/14/2004 14:46 110.82 500 110.81 110.74 -0.07
10/14/2004 14:46 110.76 2300 110.81 110.74 -0.07

If I had excluded the first and last prints, one would assume the ask was in error. This type of condition makes me scratch my head.

nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004


Posted: Oct 15, 2004 08:24 AM          Msg. 14 of 16
Sorry, the columns formatted nicely in the editor. Column headers are:

Date, Time, Last, Last Size, Bid, Ask, Crossed by

skunk
-DTN Evangelist-
Posts: 249
Joined: May 7, 2004


Posted: Oct 15, 2004 09:38 AM          Msg. 15 of 16
I don't believe there is any problems with IQFeed handling of this condition. The problem is that the floor based exchanges (AMEX etc) are much slower to update their quotes than the electronic exchanges. This is a symptom of the problem resulting in the current "negotiations" about abolishing the trade through rule

nsolot
-DTN Guru-
Posts: 273
Joined: Sep 4, 2004


Posted: Oct 16, 2004 11:21 AM          Msg. 16 of 16
I agree, like I said my original post I don't think it's an IQfeed issue, but ultimately what we all want to know is at any point in time is what price an order can be reasonable expected to execute. I added some more analysis to my code and people may be surprised (or shocked) by what I found:

NOTE: All times are Pacific.
Oct 15
IQ QQQ max secs no update bid 63(08:20:46) ask 31(06:37:26)
IQ SPY max secs no update bid 111(09:57:22) ask 140(10:13:38)
IQ DIA max secs no update bid 93(12:37:23) ask 89(11:56:04)
Seconds in Crossed State QQQ 1388( 5.93%) SPY 2829(12.09%) DIA 490( 2.09%)

Oct 14
IQ QQQ max secs no update bid 44(09:34:12) ask 39(10:41:32)
IQ SPY max secs no update bid 70(09:34:25) ask 128(11:51:44)
IQ DIA max secs no update bid 147(09:31:52) ask 55(10:44:05)
Seconds in Crossed State QQQ 752( 3.21%) SPY 2737(11.70%) DIA 488( 2.09%)

Oct 13
IQ QQQ max secs no update bid 47(09:38:41) ask 29(12:55:20)
IQ SPY max secs no update bid 103(12:19:42) ask 129(11:28:02)
IQ DIA max secs no update bid 98(08:48:06) ask 72(07:58:40)
Seconds in Crossed State QQQ 1149( 4.91%) SPY 2329( 9.95%) DIA 410( 1.75%)

I put a time stamp for each bid & ask which updates whenever a price or size change occurs, then watched for the max interval between updates. For example:

IQ QQQ max secs no update bid 63(08:20:46) ask 31(06:37:26)

shows that no price or size change occured on the bid for 63 seconds ending at 8:20 AM, and no change on the ask for 31 seconds ending at 6:37 AM; 7 minutes after the market opens (usually a period of high activity).

For Seconds in Crossed State, I flagged every second of regular trading hours whether the bid/ask was crossed or normal. I find the % of time QQQ & SPY are crossed troublesome.

Last idea to run up the flagpole, and then I plan to put this topic to rest. How about creating an "electronic only" quote, for example QQQ.E, SPY.E, DIA.E which rather than showing the BBO from all markets, just the electronic market? In essence it would show the best bid/ask from the Level 2 display. With that info, I could try to resolve 1) a crossed bid/ask situation, and 2) a situation where the bid or ask appears to be "stale", especially with SPY which appears to have recurring instances of no bid/ask update for 1-2 minutes.
 

 

Time: Fri May 3, 2024 7:16 PM CFBB v1.2.0 11 ms.
© AderSoftware 2002-2003