US EQUITIES TRADES AND QUOTES (“TAQ”) CSV Level 1 Overview Version 2.0 September 1, 2017 Copyright 2017 AlgoSeek, LLC. All rights reserved. 1 Contents INTRODUCTION .......................................................................................................... 3 SIP DATA FEED ............................................................................................................ 3 DATA DISTRIBUTION AND COLLECTION ............................................................. 3 NYSE AND NYSE MARKET (old AMEX).................................................................. 3 NASDAQ ........................................................................................................................ 4 CSV FILE FORMAT ...................................................................................................... 5 TIMESTAMP ................................................................................................................. 5 EVENT TYPE ................................................................................................................ 6 EXHCHANGE (MARKET CENTERS) ........................................................................ 7 CONDITIONS QUOTE/TRADE FLAGS. .................................................................... 8 TRADE CONDITIONS FLAGS .................................................................................... 8 QUOTE CONDITION FLAGS .................................................................................... 15 Copyright 2017 AlgoSeek, LLC. All rights reserved. 2 INTRODUCTION Trades and Quotes data with all top-of-book intraday quotes and trades for all listed stocks, ETNs, ETFs, ADRs and funds from 13+ U.S. exchanges and market places. All trades and quotes are normalized into single format feed where events are ordered by timestamp with millisecond resolution. The entire trading session includes early and late hours from 3:30 AM to 8:00 PM EST. SIP DATA FEED The data is collected from the SIP (Securities Information Processor) data, also known as the “Consolidated Feed”. The SIP was created to be the central, consolidated live stream and aggregator of every exchange’s best quotes (bids and offers) being offered and trades. Exchanges are prohibited by law from sending their quotes and trades to direct feeds before sending them to the SIP. In the highly fragmented world of U.S. equities, the SIP is an easy way for people to get a view of the current state of the market. More importantly, the SIP acts as the benchmark used by regulators and others to determine the NBBO (National Best Bid and Offer). The SIP has a long history. It was created by the 1975 amendments to the Exchange Act. The idea behind the SIP was to create a National Market System where investors and professionals would have access to real time price information. This was when access to real time quote information was difficult to come by, unlike today’s markets. DATA DISTRIBUTION AND COLLECTION Collection of US Equities data is dependent on where the stock is officially listed. When a stock goes “Public” (eg. IPO) it is officially listed on one exchange and then available for trading on multiple other exchanges. The listing Exchanges are NYSE, NYSE Market (old AMEX), NASDAQ and BATS. When subscribing to data from a vendor you are receiving the consolidated feed data which we describe here. Direct feeds from the exchanges are different and used by high frequency/ultra low latency trading firms with co-located computers. NYSE AND NYSE MARKET (OLD AMEX) Historically trade and quote data for stocks listed on NYSE and AMEX was distributed by the Consolidated Tape Association (CTA). The CTA has two services: Consolidated Tape System (CTS) : For Trades Consolidated Tape System (CQS) : For Quotes Any market center (Exchange, Dark Pool, etc) must report any Trades and Quotes for stocks that are officially listed on the NYSE or AMEX to CTA. Copyright 2017 AlgoSeek, LLC. All rights reserved. 3 To learn more, read: https://en.wikipedia.org/wiki/Consolidated_Tape_Association NASDAQ Nasdaq listed stocks have their quotes and trades reported through UTP (“unlisted trading privileges”). Under the UTP Plan, all U.S. exchanges, that quote and trade NASDAQ listed securities, must provide their data to a centralized securities information processor (SIP) for data consolidation and dissemination. NASDAQ, in its current role as the SIP for the UTP plan, supports following data feed products: UTP Quotation Data Feed (UQDF) provides best bid and offer (BBO) quotes from the UTP participants as well as the consolidated national best bid and offer (National BBO) quotes for securities listed on the NASDAQ Stock Market. UTP Trade Data Feed (UTDF) provides trade data from the UTP participants for securities listed on the NASDAQ Stock Market. Normalized Data AlgoSeek collects data from multicast CTS/CQS/UTDF/UQDF feeds, then normalizes it and consolidates the data to deliver it in a CSV format. Copyright 2017 AlgoSeek, LLC. All rights reserved. 4 CSV FILE FORMAT Each row has the following format: Date 20150128 Timestamp 09:31:01.723 EventType Ticker Price QUOTE ADT 33.95 BID Quantity 200 Exchange NYSE Conditions 00000001 Date: Date format is YYYYMMDD. Field is optional. Timestamp: Format HH:MM:SS.MMM. See “Timestamp” section below. EventType: The type of Event. See section “EventType” below. Ticker: Symbol. Price: The price of the Bid, Quote or Trade. Quantity. Number of shares. For some event types this can be 0. Exchange. The Exchange or reporting venue. See “Exchange” below. Conditions. See “Conditions” sections below. There are different Conditions for Quotes (Bid/Ask) and Trades. Example: 20150128,09:31:01.723,QUOTE BID,ADT,33.95,200,EDGX,00000001 20150128,09:31:01.723,QUOTE ASK,ADT,36.75,200,EDGX,00000001 20150128,09:31:01.723,QUOTE BID NB,ADT,35.25,7100,NYSE,00000800 20150128,09:31:01.723,QUOTE ASK NB,ADT,35.28,100,NYSE,00000800 20150128,09:31:01.725,TRADE NB,ADT,35.25,2667,NYSE,20000020 20150128,09:31:01.725,TRADE,ADT,35.28,43,NYSE,80000000 20150128,09:31:01.725,TRADE NB,ADT,35.25,4478,NYSE,20000020 TIMESTAMP The timestamps are in milliseconds. The normal format is HH:MM:SS.MMM where HH: Hour MM: Minute SS: Seconds MMM: Milliseconds Copyright 2017 AlgoSeek, LLC. All rights reserved. 5 For some special datasets, the Timestamp is Milliseconds since Midnight. The number of milliseconds since midnight EST. To convert to HHMMSS.MMM use the following: timestamp=milliseconds since midnight x = timestamp # Get millis ms=x mod 1000 # Get seconds x = ms / 1000 seconds = x mod 60 #Get Minutes x = x / 60 minutes = x mod 60 #Get hours x = x / 60 hours = x mod 24 EVENT TYPE EventType QUOTE BID QUOTE BID NB QUOTE ASK QUOTE ASK NB TRADE TRADE NB TRADE CANCELLED Description Exchange Best Bid Quote. Change in a market center’s best bid Exchange Best Bid Quote that is new NBBO. Change in a market center’s best bid Exchange Best Ask Quote. Change in a market center’s best ask. Exchange Best Ask Quote that is new NBBO. Change in a market center’s best ask. Trade at the Exchange or reported to market center. Trade at National Best Price Previous trade cancellation (reduce total traded volume by this amount). Trade corrections are constructed as a cancellation of the previous trade, with the corrected trade following the cancellation NB Note: NB refers to the National Best Bid Offer (“NBBO”). When a quote changes the NBBO you will see the following: Time 11:09:54.746 11:09:54.746 Text QUOTE BID QUOTE BID NB Symbol IBM IBM Price 166.18 166.18 Quantity Exchange 100 NASDAQ 100 NASDAQ Copyright 2017 AlgoSeek, LLC. All rights reserved. Flags 1 1 6 11:09:54.746 QUOTE ASK NB IBM 166.19 100 ARCA 1 NASDAQ new Bid changed the NBBO so the new NBBO is displayed as two rows showing the new NBBO. When reading the TAQ file the Quote Bid NB and Quote Ask NB repeat quotes already seen from the market center creating the quote. The consolidated feed sends the NBBO data as a separate feed from market center quotes. Sometimes you will be see a crossed NBBO (eg. the Bid=Offer) this happens when one side has updated and the other has not been printed yet. Typically you will see another NBBO print in the same millisecond with the correct market. AlgoSeek provides the data as it was received from the exchange but normalized and consolidated into one file. This means it is not perfect (for example crossed NBBO) but that it what happens in real trading and this data allows clients to simulate real trading. Clients can of course clean the data to meet their own objectives. “0” Bid and Ask Quote At Close. Exchanges may send Quote Bid/Ask with price of 0 on the close to indict it is the last Quote Bid/Ask of the normal market hours, for example: 20160128,16:00:01.004,QUOTE BID,IBM,0.00,0,BATS Y,00000001 20160128,16:00:01.004,QUOTE ASK,IBM,0.00,0,BATS Y,00000001 EXHCHANGE (MARKET CENTERS) Exchange NYSE AMEX NASDAQ OMX BX National Stock Exchange FINRA. (Internal crosses from Brokder Dealers, Dark Pools, etc) International Securities Exchange Direct Edge A Direct Edge X Chicago Stock Exchange New York Stock Exchange NYSE Arca NASDAQ OMX CBOE Stock Exchange NASDAQ OMX PSX BATS Y-Exchange Inc. BATS Exchange, Inc. Market Id Code A B C D I J K M N P T or Q W X Y Z Copyright 2017 AlgoSeek, LLC. All rights reserved. 7 CONDITIONS QUOTE/TRADE FLAGS. The conditions codes are for researchers who really want to dig into the consolidated feed data. This requires an expert level of knowledge and good coding skills. Each flag shows a particular condition applicable to the trade/quote. The flag value indicates a bit position of the flag value inside the unsigned 32-bit integer value. Note: There are two sets of condition flags listed below, one for Trades and the other for Bids/Quotes. TRADE CONDITIONS FLAGS Flags Description BIT mask position Settlement Type BIT mask tRegular A trade made without stated conditions is deemed regular way for settlement on the third business day following the transaction date. 0 00000000 00000000 00000000 00000001 tCash A transaction which requires delivery of securities and payment on the same day the trade takes place. A transaction that requires the delivery of securities on the first business day following the trade date. A Seller’s Option transaction gives the seller the right to deliver the security at any time within a specific period, ranging from not less than two calendar days, to not more than sixty calendar days. A security offered “Seller’s Option” may 1 00000000 00000000 00000000 00000010 2 00000000 00000000 00000000 00000100 3 00000000 00000000 00000000 00001000 tNextDay tSeller Copyright 2017 AlgoSeek, LLC. All rights reserved. 8 Flags Description BIT mask position BIT mask command a lesser price than if offered “Regular Way”. tYellowFlag tIntermarketSweep tOpeningPrints tClosingPrints tReOpeningPrints Market Centers will have the ability to identify regular trades being reported during specific events as out of the ordinary by appending a new sale condition code Yellow Flag (“Y”) on each transaction reported to the UTP SIP. The new sale condition “.Y” will be eligible to update all market center and consolidated statistics. 4 00000000 00000000 00000000 00010000 Reason for Trade-Through Exemption The transaction that 5 00000000 00000000 00000000 00100000 constituted the tradethrough was the execution of an order identified as an Intermarket Sweep Order. The trade that 6 00000000 00000000 00000000 01000000 constituted the tradethrough was a single priced opening transaction by the Market Center. The transaction that 7 00000000 00000000 00000000 10000000 constituted the tradethrough was a single priced closing transaction by the Market Center. The trade that 8 00000000 00000000 00000001 00000000 constituted the tradethrough was a single priced reopening transaction by the Market Center. Copyright 2017 AlgoSeek, LLC. All rights reserved. 9 Flags tDerivativelyPriced tFormT tSold tStopped Description BIT mask position BIT mask The transaction that 9 00000000 00000000 00000010 00000000 constituted the tradethrough was the execution of an order at a price that was not based, directly or indirectly, on the quoted price of the security at the time of execution, and for which the material terms were not reasonably determinable at the time the commitment to execute the order was made. Extended Hours/ Sequence Type Trading in extended 10 00000000 00000000 00000100 00000000 hours enables investors to react quickly to events that typically occur outside regular market hours, such as earnings reports. However, liquidity may be constrained during such Form T trading, resulting in wide bid-ask spreads. Sold Last is used when 11 00000000 00000000 00001000 00000000 a trade prints in sequence but is reported late or printed in conformance to the One or Two Point Rule. The transaction that 12 00000000 00000000 00010000 00000000 constituted the tradethrough was the execution by a trading center of an order for which, at the time of receipt of the order, the trading center had guaranteed an Copyright 2017 AlgoSeek, LLC. All rights reserved. 10 Flags tExtendedHours tOutOfSequence tSplit Description BIT mask position execution at no worse than a specified price (a “stopped order”), where: (i) The stopped order was for the account of a customer;(ii) The customer agreed to the specified price on an order-by-order basis; and (iii) The price of the tradethrough transaction was for a stopped buy order lower than the National Best Bid in the security at the time of execution, or for a stopped sell order higher than the National Best Offer in the security at the time of execution. Identifies a trade that 13 was executed outside of regular primary market hours and is reported as an extended hours trade. Identifies a trade that 14 takes place outside of regular market hours. Other Types An execution in two 15 markets when the specialist or Market Maker in the market first receiving the order agrees to execute a portion of it at whatever price is realized in another market to which the balance of the order is forwarded for execution. BIT mask 00000000 00000000 00100000 00000000 00000000 00000000 01000000 00000000 00000000 00000000 10000000 00000000 Copyright 2017 AlgoSeek, LLC. All rights reserved. 11 Flags tAcquisition tBunched tStockOption tDistribution tAveragePrice tCross tPriceVariation Description BIT mask position BIT mask A transaction made on the Exchange as a result of an Exchange acquisition. A trade representing an aggregate of two or more regular trades in a security occurring at the same price either simultaneously or within the same 60second period, with no individual trade exceeding 10,000 shares. Stock-Option Trade is used to identify cash equity transactions which are related to options transactions and therefore potentially subject to cancellation if market conditions of the options leg(s) prevent the execution of the stock-option order at the price agreed upon. Sale of a large block of stock in such a manner that the price is not adversely affected. 16 00000000 00000001 00000000 00000000 17 00000000 00000010 00000000 00000000 18 00000000 00000100 00000000 00000000 19 00000000 00001000 00000000 00000000 A trade where the price reported is based upon an average of the prices for transactions in a security during all or any portion of the trading day. Indicates that the trade resulted from a Market Center’s crossing session. Indicates a regular market session trade transaction that carries 20 00000000 00010000 00000000 00000000 21 00000000 00100000 00000000 00000000 22 00000000 01000000 00000000 00000000 Copyright 2017 AlgoSeek, LLC. All rights reserved. 12 Flags tRule155 tOfficialClose tPriorReferencePrice tOfficialOpen Description a price that is significantly away from the prevailing consolidated or primary market value at the time of the transaction. To qualify as a NYSE AMEX Rule 155, from time to time, a specialist may arrange for the sale, or purchase, of a block of security, or other large number of shares of securities, at a single “clean-up” price. Generally such a sale or purchase is outside of the current market. Such sale or trade is designated as a Rule 155 trade. Indicates the ‘Official’ closing value as determined by a Market Center. This transaction report will contain the market center generated closing price. A sale condition that identifies a trade based on a price at a prior point in time, i.e. more than 90 seconds prior to the time of the trade report. The execution time of the trade will be the time of the prior reference price. Indicates the ‘Official’ closing value as determined by a Market Center. This transaction report will contain the market BIT mask position BIT mask 23 00000000 10000000 00000000 00000000 24 00000001 00000000 00000000 00000000 25 00000010 00000000 00000000 00000000 26 00000100 00000000 00000000 00000000 Copyright 2017 AlgoSeek, LLC. All rights reserved. 13 Flags tCapElection tAutoExecution tTradeThroughExempt tOddLot Description center generated closing price. The CAP Election Trade highlights sales as a result of a sweep execution on the NYSE, whereby CAP orders have been elected and executed outside the best price bid or offer and the orders appear as "repeat" trades at subsequent execution prices. This indicator provides additional information to market participants that an automatic sweep transaction has occurred with repeat trades as one continuous electronic transaction. A sale condition code that identifies a NYSE trade that has been automatically executed without the potential benefit of price improvement. Denotes whether or not a trade is exempt (Rule 611) and when used jointly with certain Sale Conditions, will more fully describe the characteristics of a particular trade. Denotes the trade is an odd lot less than a 100 shares. BIT mask position BIT mask 27 00001000 00000000 00000000 00000000 28 00010000 00000000 00000000 00000000 29 00100000 00000000 00000000 00000000 31 10000000 00000000 00000000 00000000 Copyright 2017 AlgoSeek, LLC. All rights reserved. 14 QUOTE CONDITION FLAGS Flags qRegular qSlow qGap Description BIT mask position BIT mask This condition is used for the majority of quotes to indicate a normal trading environment. It is also used by the FINRA Market Makers in place of Quote Condition “O” to indicate the first quote of the day for a particular security. The condition may also be used when a Market Maker reopens a security during the day. This condition is used to indicate that the quote is a Slow Quote on both the Bid and Offer sides due to a Set Slow List that includes High Price securities. While in this mode, autoexecution is not eligible, the quote is then considered Slow on the Bid and Offer sides, and either or both sides can be traded through as per Regulation NMS. While in this mode, auto-execution is not eligible, the quote is then considered manual and non-firm in the Bid and Offer and 0 00000000 00000000 00000000 00000001 1 00000000 00000000 00000000 00000010 2 00000000 00000000 00000000 00000100 Copyright 2017 AlgoSeek, LLC. All rights reserved. 15 Flags Description qClosing qNewsDissemination qNewsPending qTradingRangeIndication either or both sides can be traded through as per Regulation NMS. This condition can be disseminated to indicate that this quote was the last quote for a security for that Participant. This regulatory Opening Delay or Trading Halt is used when relevant news influencing the security is being disseminated. Trading is suspended until the primary market determines that an adequate publication or disclosure of information has occurred. This condition is used to indicate a regulatory Opening Delay or Trading Halt due to an expected news announcement, which may influence the security. An Opening Delay or Trading Halt may be continued once the news has been disseminated. The condition is used to denote the probable trading range (bid and offer prices, no sizes) of a security that is BIT mask position BIT mask 3 00000000 00000000 00000000 00001000 4 00000000 00000000 00000000 00010000 5 00000000 00000000 00000000 00100000 6 00000000 00000000 00000000 01000000 Copyright 2017 AlgoSeek, LLC. All rights reserved. 16 Flags Description qOrderImbalance qClosedMarketMaker qVolatilityTradingPause qNonFirmQuote qOpeningQuote not Opening Delayed or Trading Halted. The Trading Range Indication is used prior to or after the opening of a security. This non-regulatory Opening Delay or Trading Halt is used when there is a significant imbalance of buy or sell orders. This condition is disseminated by each individual FINRA Market Maker to signify either the last quote of the day or the premature close of an individual Market Maker for the day. This quote condition indicates a regulatory Opening Delay or Trading Halt due to conditions in which a security experiences a 10% or more change in price over a five minute period. This quote condition suspends a Participant's firm quote obligation for a quote for a security. This condition can be disseminated to indicate that this quote was the BIT mask position BIT mask 7 00000000 00000000 00000000 10000000 8 00000000 00000000 00000001 00000000 9 00000000 00000000 00000010 00000000 10 00000000 00000000 00000100 00000000 11 00000000 00000000 00001000 00000000 Copyright 2017 AlgoSeek, LLC. All rights reserved. 17 Flags Description qDueToRelatedSecurity qResume opening quote for a security for that Participant. This non-regulatory Opening Delay or Trading Halt is used when events relating to one security will affect the price and performance of another related security (e.g., a call for redemption of a convertible preferred security or convertible debt security which could affect the related common security). This nonregulatory Opening Delay or Trading Halt is also used when nonregulatory halt reasons such as Order Imbalance, Order Influx and Equipment Changeover are combined with Due to Related Security on CTS. This quote condition along with zero-filled bid, offer and size fields is used to indicate that trading for a Participant is no longer suspended in a security which had been Opening Delayed or Trading Halted. BIT mask position BIT mask 12 00000000 00000000 00010000 00000000 13 00000000 00000000 00100000 00000000 Copyright 2017 AlgoSeek, LLC. All rights reserved. 18 Flags qInViewOfCommon qEquipmentChangeover qSubPennyTrading Description BIT mask position BIT mask This quote condition is used when matters affecting the common stock of a company affect the performance of the non-common associated securities, e.g., warrants, rights, preferred, classes, etc. Those securities, which must be of the same company, are globally Opening Delayed, Trading Halted, or No Open/No Resume for a Participant in view of the common stock. This non-regulatory Opening Delay or Trading Halt is used when the ability to trade a security by a Participant is temporarily inhibited due to a systems, equipment or communications facility problem or for other technical reasons. This non-regulatory Opening Delay or Trading Halt is used to indicate an Opening Delay or Trading Halt for a security whose price may fall below $1.05, possibly leading to 14 00000000 00000000 01000000 00000000 15 00000000 00000000 10000000 00000000 16 00000000 00000001 00000000 00000000 Copyright 2017 AlgoSeek, LLC. All rights reserved. 19 Flags Description qNoOpenNoResume qLimitUpLimitDownPrice Band qRepublishedLimitUpLimi tDownPriceBand qManual qFastTrading a sub-penny execution. This quote condition is used to indicate that an Opening Delay or a Trading Halt is to be in effect for the rest of the trading day in a security for a Participant. This quote condition is used to indicate that a Limit Up-Limit Down Price Band is applicable for a security. This quote condition is used to indicate that a Limit Up-Limit Down Price Band that is being disseminated is a ‘republication’ of the latest Price Band for a security. BIT mask position BIT mask 17 00000000 00000010 00000000 00000000 18 00000000 00000100 00000000 00000000 19 00000000 00001000 00000000 00000000 NASDAQ Specific 00000000 00010000 00000000 00000000 20 This indicates that the market participant is in a manual mode on both the Bid and Ask. While in this mode, automated execution is not eligible on the Bid and Ask side and can be traded through pursuant to Regulation NMS requirements. For extremely active periods of short duration. While in this mode, the UTP participant will enter 21 00000000 00100000 00000000 00000000 Copyright 2017 AlgoSeek, LLC. All rights reserved. 20 Flags qOrderInflux Description quotations on a “best efforts” basis. A halt condition used when there is a sudden order influx. To prevent a disorderly market, trading is temporarily suspended by the UTP participant. BIT mask position 22 BIT mask 00000000 01000000 00000000 00000000 Copyright 2017 AlgoSeek, LLC. All rights reserved. 21