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)




"I would just like to say that IQFeed version 4 is running very well and I am very happy with its performance. I would also like to extend a big thanks for the fast and efficient help that I always receive. My questions and concerns are always addressed promptly. Way to go!" - Comment from Josh in CO.
"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
"IQ feed works very well, does not have all of the normal interruptions I have grown used to on *******" - Comment from Mark
"I am a hedge fund manager here. It’s funny, I have a Bloomberg terminal and a Bridge feed, but I still like having my DTN feed!" - Comment from Feras
"I use IQ Feed, Great stuff as far as data analysis information, storage and retrieval is concerned." - Comment from Public Forum
"This is an excellent value, the system is generous (allowing for 500 stocks) and stable (and really is tick-by-tick), and the support is fantastic." - Comment from Shirin via Email
"I have been using IQFeed now for a few years in MultiCharts and I have zero complaints. Very, very rare to have any data hiccups or anything at all go wrong." - Comment from Public Forum
"I ran your IQFeed DDE vs. my broker vs. a level II window for some slow-moving options. I would see the level II quote change, then your feed update instantaneously. My broker's DDE, however, would take as much as 30 seconds to update. I am not chasing milliseconds, but half a minute is unacceptable." - Comment from Rob
"You are either overstaffed or people just don't have problems with your feed because customer support always answers the phone quickly." - Comment from Jay via Email
"Just a quick one to say I'm very impressed so far :) The documentation for developers is excellent and I've quickly managed to get an app written to do historical downloads. The system is very robust and pretty quick considering the extent of data that's available. The support guys have been very helpful too, in combination with the forums it's been plain sailing so far!" - Comment from Adam
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 »NEW IQFEED FORUMS »Data Questions »Curious about L1 feed fields Tick and Most Recent Trade Aggressor
Author Topic: Curious about L1 feed fields Tick and Most Recent Trade Aggressor (5 messages, Page 1 of 1)

mkvalor
-Interested User-
Posts: 24
Joined: Oct 6, 2020

Keep your tools sharp.


Posted: Sep 24, 2022 09:19 PM          Msg. 1 of 5
I have been tinkering with the L1 dynamic fields my custom app consumes from IQFeed and I was curious about one thing:

If my application keeps track of the qualified trade values in the "Most Recent Trade" field, is there really any benefit to consuming the "Tick" or "Most Recent Trade Aggressor" fields in the feed? My custom system holds onto the last sent qualified "Most Recent Trade" value, so when a new Qualified Trade message comes through, my code can easily deduce whether the new trade value is higher, lower, or the same.

This seems clear enough, but I hate to assume. So, is there some additional benefit/information conveyed in these fields I am not aware of, besides the relative value of the current qualified trade vs the previous qualified trade?

-Mark D. Valor

DTN_Gary_Stephen
-DTN Guru-
Posts: 394
Joined: Jul 3, 2019


Posted: Sep 27, 2022 07:24 AM          Msg. 2 of 5
The "Tick" field explicitly tells you if the current tick is up, down, or no change from the most recent last qualified trade. If you are storing the value of each tick, you can determine this yourself if you want to, but keep in mind the tick field only applies to last-eligible trades. The Message Contents field will tell you which ones these are. (Or you can use Last instead of Most Recent, which will only return last-eligible trades).

As for trade aggressor, this field can contain information you can't simply infer your self. The CME and ICE exchanges will explicitly report who the trade aggressor is in a given trade. For other exchanges, this can usually be inferred by comparing the last price to the bid and ask price. So if you're not using the trade aggressor field, you're not getting the explicit trade aggressor information ICE and CME provide.

So Trade Aggressor does include some information you can't just infer for ICE and CME exchanges.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist

mkvalor
-Interested User-
Posts: 24
Joined: Oct 6, 2020

Keep your tools sharp.


Posted: Oct 22, 2022 07:45 PM          Msg. 3 of 5
Thanks for the reply Gary. Yes, for "Tick" I meant tracking previous trades with Message Contents having trade identifier 'C'.

Would you please help my newbie mind understand what kinds of factors lead to my code not being able to infer the trade aggressor? As you said,

Quote: For other exchanges, this can usually be inferred by comparing the last price to the bid and ask price.


Do the CME and ICE exchanges have additional hidden pools of trades (or some other obscured forms of data) which do not come through the IQFeed L1 stream, making the generic strategy ineffective for them? Or is it simply that -- since those two exchanges do provide the explicit aggressor, it's less error prone to use that instead of relying on custom client code?


-Mark D. Valor
Edited by mkvalor on Oct 23, 2022 at 07:53 AM

DTN_Gary_Stephen
-DTN Guru-
Posts: 394
Joined: Jul 3, 2019


Posted: Oct 26, 2022 11:55 AM          Msg. 4 of 5
Quote: what kinds of factors lead to my code not being able to infer the trade aggressor?


Sometimes the Last price is between the Bid and Ask price. When it doesn't match either, and when the symbol isn't on the ICE or and CME, the trade aggressor can't be inferred.

Quote: Do the CME and ICE exchanges have additional hidden pools of trades (or some other obscured forms of data) which do not come through the IQFeed L1 stream, making the generic strategy ineffective for them? Or is it simply that -- since those two exchanges do provide the explicit aggressor, it's less error prone to use that instead of relying on custom client code?


As far as I know, it's the latter. I'm not aware of any hidden data that would make this method ineffective. I look at it this way: why wouldn't you want to use the data the exchange provides? It's more authoritative, and less processing for your app to do.

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist

mkvalor
-Interested User-
Posts: 24
Joined: Oct 6, 2020

Keep your tools sharp.


Posted: Nov 14, 2022 03:00 PM          Msg. 5 of 5
Ah, I hadn't thought of the wider spread situation since I mostly trade markets where that is rare (during the hours when I am active). Thank you for your explanation.

-Mark D. Valor
 

 

Time: Tue April 23, 2024 11:29 PM CFBB v1.2.0 13 ms.
© AderSoftware 2002-2003