@Homer All trades are passed through in both the streaming feeds and the historical trade data. Alpaca doesn’t filter anything out. If that specific trade didn’t appear it may have been in error.
To determine if a trade is exempt, look at the trade conditions which is attribute c. In the example, these conditions are [" ",“7”,“V”]. The condition “7” is what flags this as “Trade Through Exempt”. There are however many conditions which flag a trade as “Trade Through Exempt” and it’s a bit complicated. For this reason, there are reporting changes being proposed which would definitively flag a trade with a single condition “8”. These changes have not been adopted yet so, for now, if any of the following trade conditions are present the trade is “Trade Through Exempt”.
Trade Type Exempt
Qualified Contingent Trade (QCT)
Placeholder For 611
Corrected Consolidated Close
Trade Time Exempt
Form T (extended hours trade)
Sold (out of sequence)
Extended trading hours (Sold Out of Sequence)
At the risk of going into TMI (too much information as my kids say) I’ll explain why there are two tables. In general, there are two reasons why a trade can be exempt from the Trade Through Rule 611. First, because of the type of trade. For example a “4 derivatively priced” trade is a pre-arranged trade not based, directly or indirectly, on the quoted price of the security at the time of execution. This is exempt. Second, because of the time of the trade (or reporting of the trade). For example Rule 611 only applies to market hour trades so a “T Form T (extended hours trade)” is exempt. Likewise the “Sold” conditions “L”, “U” and “Z” are trades simply reported at the wrong time. Those too are exempt.
Originally, the numbers 4-9 were supposed to be qualifiers indicating if/why a trade was exempt. A trade would get a letter indicating the type of trade and then also a number indicating if/why the trade was exempt. However, some types of trades are always exempt (eg F and O) so one is just supposed to know that and a number isn’t added. Similarly, because of timing, some trades are exempt and again one is just supposed to know that (eg T and any of the “Sold” conditions) and a number isn’t added.
This all has created confusion which is why there is a current effort by the SEC to mandate the use of a single trade condition 8 to indicate definitively if a trade is exempt. it’s not implemented yet but maybe soon.
Hi thanks for the follow-up. I have coded based on the CTS and UTP specifications, which your website has links to.
The trade was not missed. I was actually trying to determine how to identify a trade through exemption when it is not explicitly stated in a feed because volume was not showing in several brokerage apps for the example in this thread. The reason, its a trade through exemption. Which leads to the question how does one identify one.
You can see that they state when volume should be updated and when price should be updated. 7, and V for example have “yes” under volume updated. To me this means you consider/count the volume but not the price due to the contingent trade in this case. But to the brokerage apps, these are trade through exemptions and they wouldn’t show it in intra-day trade volumes. Also, they stated because it was a contingent trade which both 7 and V represent. Are you stating that & qualified it as a trade through for Alpaca but V doesn’t?
If we all knew of explicit rules on what identifies as a trade through exemption it would be great. As you can see and guess, I am seeing different answers from different places.
Where is explicit definition of the types of trades that are trade through exempt or can I only go off of what you state above for now?
thanks for your feedback, appreciated!
Shared some links, added some brokerage stuff.