andrewm has contributed to 34 posts out of 20086 total posts
(0.17%) in 2,239 days (0.02 posts per day).
20 Most recent posts:
You might find this thread helpful:
http://forums.dtn.com/index.cfm?page=topic&topicID=5679
> You'll find that when you use that mechanism for liquid instruments > the quality of data becomes lacking due to the high frequency aspects of the data.
Agreed that it's not perfect however it's much better than nothing which is effectively what we have now for historical intraday quotes on thinly traded products such as nearly all equity option contracts.
> Collecting data real-time during the day allows you to catch the stream as it happens
Except:
You can only collect as many symbols as your account is permissioned for. If you decide to test a new strategy on 6 months of historical data you must first spend 6 months collecting it. If you want to know how your new strategy would have performed during some historical event when you weren't collecting data on that particular symbol, too bad.
> I believe DTN's choice of quote at trade storage is a reasonable trade-off.
It may work for @ES and SPY but for a product that rarely trades it's mostly useless. The data storage requirements for snapshotting the BBO would be minimal since snapshots would only need to include changed quotes. Even if the symbol's quote changed every second, 23 hours a day and 100 byte records were stored that's only 8MB/day/symbol. Actual sizes would be far smaller.
Being able to see historical bid/ask changes only when a trade happens makes intraday analysis of thinly traded products impossible.
It forces users who need this data to stream subscriptions and capture them in real time locally. That's an unreliable solution over the internet and something users should not be wasting their time building.
IQ Feed could snapshot the BBO once per second and make that historical data available via the API or better as an EOD FTP file for subscribers. It could be a replay of a realtime feed that coalesces ticks into buckets sent at a maximum update frequency of 1 sec. Even 5 second snapshots would be ok.
For now I call a python script every 5 mins to dump the 5MS output for CBOE to a file and compress it. If anyone wants that script, let me know. Edited by andrewm on Apr 7, 2021 at 10:53 PM
It would be great if 5MS, etc would include !ENDMSG! like some other commands do.
edit: disregard. It does have it. Edited by andrewm on Mar 13, 2021 at 02:59 AM
The docs say:
5 Minute Snapshot Summary - Retrieves a snapshot of the current market data for all symbols in a Security Type and Exchange Group. NOTE: The timing of the snapshot is not guaranteed, but data will be gathered every 5 minutes.
What does that mean? If I issue a 5MS command every 5 minutes at times ending :06, :11, :16, etc will I get the 1 minute old snapshot?
Thanks
Bid and ask time would just be the update time of the value. If a bid is updated at 10am and I generate a 5-min summary 2 hours later that file generated at noon would show 10:00 bid time. If there have been no bids or offers that day the bid or ask value and time would show an empty field ",," not a zero value ",0,"
Please let me know if those bid/ask values carry over from previous 5-min periods. Thanks a lot.
Are the fields "Open,High,Low,Close" in these 5 min files the OHLC values for the full day? They're not the 5-min bar OHCL values, right?
Is any bid or ask value shown sure to be from the current trading day because any bids/offers resting in the book are cancelled at EOD?
Could you add bid-time and ask-time fields to these files?
The problem with HTX for bid/ask is it's the bid/ask at the time of the last trade so in this case it's a month old:
HTX,FAS2018I10,1 2020-08-03 12:03:13.727032,25.35,1,3,25.35,25.55,45940803,C,150,20,0,3, !ENDMSG!,
Looking at EDS, FDS and 5MS summary messages they say:
[Security Type] - Required – A number representing the desired security type. (Futures, equities, spots)
Are those the only 3 supported security types? I need equity options. Ideally I'd like to request an entire options chain based on the underlying ticker and get back the current BBO for each contract.
Those HTX messages give me the last trade price. I also need the most recent bid & ask. Is there a way to request only the most recent L1 Summary Message?
Thanks Gary. That looks like what I needed.
Until you set the protocol, HTX works on some symbols but not others. A bug?
HTX,ZSL,1 2020-08-28 19:01:42,7.3800,350,1744488,7.3500,7.3800,826423094,0,0,E, !ENDMSG!,
HTX,IBM,1 !ENDMSG!,
S,SET PROTOCOL,6.1 S,CURRENT PROTOCOL,6.1
HTX,IBM,1 2020-08-28 19:04:37.451031,125.3000,30,3099795,125.0900,125.3000,1246452042,O,19,8717,0,28, !ENDMSG!,
Is there some way to globally force all API connections to use 6.1 by default so we don't have to do SET PROTOCOL on each connection?
How can I request just 1 quote on a symbol? or do I have to subscribe, wait for some quotes, unsubscribe?
How's IQ Feed running on Wine? Any known problems, instability, etc?
Looks like the ListedMarkets ("SLM") reply has been expanded to include group ID info since I last looked ages ago. I guess that's what's being used here. Right?
What's the difference between Exchange ID vs Listed Market in the Fundamental msg?
Please document the difference better here: http://www.iqfeed.net/dev/api/docs/Level1FundamentalMessage.cfm
Actually a protobuf+gRPC API would be best. Then I don't have to build + maintain decoders for IQ's data protocols.
Currently dates are like 07/26/2019. In some future version of the API they should be yyyy-mm-dd
Historical bid/ask changes should really be included. Maybe not every bid/ask size change, but at least if the price level changes we should see that in the feed. Maybe coalesce the size changes to some max frequency if necessary.
Yes a binary protocol would be better. I suspect that the Windows IQ Feed client probably gets fed binary data but then serves it as ASCII.
What is the max chars a symbol field can be?
|