Reconciling NYSE TAQ Trade Messages with Daily Volume
Summary
The discussion addresses why summing trades only during regular New York market hours can produce a lower total than a published daily volume figure. For the NYSE end-of-day TAQ dataset described, the accepted answer says reported volume includes trades from before and after the regular session as well as trades during it.
A further complication is that some opening and closing trade messages duplicate volume already represented in normal trade messages. The suggested calculation is therefore to sum volumes across the dataset and subtract the volume in those duplicated opening and closing messages. The document concerns this specific data source and notes that its conclusion is dataset-specific; it does not establish that all exchanges or vendors define daily volume the same way. Correct handling depends on understanding the message types and conventions in the feed.
Key ideas
- NYSE end-of-day TAQ volume includes trades outside regular market hours.
- Some opening and closing messages duplicate volume found in regular trade messages.
- For this dataset, sum trade volumes and remove the duplicated opening and closing message volume.
- The described calculation is specific to NYSE end-of-day TAQ conventions.
Tags
Full text
# Does stock volume include shares traded during before/after market? # Does stock volume include shares traded during before/after market? I'm working on a program that find summary data given all trades during a day. However, for some reason, if I sum all the volume during market hour (9:30 -> 16:00, New York SE time), the total volume is noticeably less than the official values I can find (in this page for example: https://www.nasdaq.com/market-activity/stocks/nvda/historical). So, does the volume value in the page above include shares traded before/after market hours? Edit: I use data from here (https://www.nyse.com/market-data/historical/daily-taq), currently "download sample data" is not working. To calculate the volume, I loop over all lines in a TRADE file, parse the timestamp, then add the volume if the timestamp is inside 9:30 -> 16:00 Edit 2: there's a type of trade called "cross trade". Apparently the official volume calculation include data of before/after market housr but does not include this type of trade specifically ## Answer by Duke Le (score 1, accepted) https://quant.stackexchange.com/a/69086 Okay I have just found out how volume is calculated in NYSE EOD TAQ dataset. The volume includes all hours (including before/after market). However, some specific TRADE messages (such as opening/closing) are duplicated from normal messages, which cause them to be counted twice. Summary: sum all volumes, then minus the volume of opening/closing messages. This answer is specific to NYSE EOD TAQ dataset.
Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.