|
ITCHCPP 1.6.0
High-Performance NASDAQ TotalView-ITCH 5.0 Parser & Market-Data Platform
|
Defines every ITCH 5.0 message struct, the Message variant, and the stream-printing helpers used to format them.
More...
#include <cstdint>#include <iostream>#include <string>#include <variant>#include <vector>
Include dependency graph for messages.hpp:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| struct | itch::SystemEventMessage |
System Event (S): signals a market or data-feed handler event. More... | |
| struct | itch::StockDirectoryMessage |
Stock Directory (R): the trading and listing reference data for a security, disseminated at the start of each trading day. More... | |
| struct | itch::StockTradingActionMessage |
Stock Trading Action (H): a change in the trading status of a security (halted, paused, quotation-only, or trading). More... | |
| struct | itch::RegSHOMessage |
Reg SHO Short Sale Price Test Restriction (Y): the Reg SHO short-sale restriction state for a security. More... | |
| struct | itch::MarketParticipantPositionMessage |
Market Participant Position (L): a market participant's (market maker's) status in a security. More... | |
| struct | itch::MWCBDeclineLevelMessage |
MWCB Decline Level (V): the Market-Wide Circuit Breaker breach points for the day. More... | |
| struct | itch::MWCBStatusMessage |
MWCB Status (W): notification that a Market-Wide Circuit Breaker level has been breached. More... | |
| struct | itch::IPOQuotingPeriodUpdateMessage |
IPO Quoting Period Update (K): the anticipated IPO quotation release time and price for a security. More... | |
| struct | itch::LULDAuctionCollarMessage |
LULD Auction Collar (J): the auction collar thresholds for a security in a Limit-Up Limit-Down trading pause. More... | |
| struct | itch::OperationalHaltMessage |
Operational Halt (h): an operational halt or resumption for a security on a specific market center. More... | |
| struct | itch::AddOrderMessage |
Add Order, No MPID Attribution (A): a new displayable order has been accepted and placed on the book. More... | |
| struct | itch::AddOrderMPIDAttributionMessage |
Add Order, With MPID Attribution (F): like Add Order, but attributed to a market participant. More... | |
| struct | itch::OrderExecutedMessage |
Order Executed (E): a resting order was executed in whole or in part at its display price. More... | |
| struct | itch::OrderExecutedWithPriceMessage |
Order Executed With Price (C): a resting order was executed at a price different from its display price (and may be non-printable). More... | |
| struct | itch::OrderCancelMessage |
Order Cancel (X): a partial cancellation reduced the shares of a resting order. More... | |
| struct | itch::OrderDeleteMessage |
Order Delete (D): a resting order was cancelled in its entirety and removed from the book. More... | |
| struct | itch::OrderReplaceMessage |
Order Replace (U): a resting order was replaced with a new order at a new reference number, size, and/or price (same side and security). More... | |
| struct | itch::NonCrossTradeMessage |
Trade, Non-Cross (P): an execution of a non-displayable order. More... | |
| struct | itch::CrossTradeMessage |
Cross Trade (Q): the result of a cross (opening, closing, halt/IPO cross) for a security. More... | |
| struct | itch::BrokenTradeMessage |
Broken Trade (B): a previously disseminated execution has been broken and should be removed from any trade record. More... | |
| struct | itch::NOIIMessage |
Net Order Imbalance Indicator (I): the imbalance and price-discovery data disseminated during the opening and closing crosses. More... | |
| struct | itch::RetailPriceImprovementIndicatorMessage |
Retail Price Improvement Indicator (N): the presence of retail price improvement interest on the bid, the offer, or both. More... | |
| struct | itch::DLCRMessage |
Direct Listing with Capital Raise Price Discovery (O): price-discovery data for a Direct Listing with a Capital Raise (DLCR) security. More... | |
Namespaces | |
| namespace | itch |
Typedefs | |
| using | itch::Message = std::variant< SystemEventMessage, StockDirectoryMessage, StockTradingActionMessage, RegSHOMessage, MarketParticipantPositionMessage, MWCBDeclineLevelMessage, MWCBStatusMessage, IPOQuotingPeriodUpdateMessage, LULDAuctionCollarMessage, OperationalHaltMessage, AddOrderMessage, AddOrderMPIDAttributionMessage, OrderExecutedMessage, OrderExecutedWithPriceMessage, OrderCancelMessage, OrderDeleteMessage, OrderReplaceMessage, NonCrossTradeMessage, CrossTradeMessage, BrokenTradeMessage, NOIIMessage, RetailPriceImprovementIndicatorMessage, DLCRMessage > |
| A variant able to hold any one of the ITCH 5.0 message structs. | |
Functions | |
| auto | itch::to_string (const char *source, size_t size) -> std::string |
| Converts a fixed-width character array to a string, trimming trailing spaces and NUL characters. | |
| auto | itch::print_impl (std::ostream &out, const SystemEventMessage &msg) -> void |
Per-message-type stream formatter family, used internally by print_message to dispatch to the correct overload for whichever alternative of Message it is given. | |
| auto | itch::print_impl (std::ostream &out, const StockDirectoryMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const StockTradingActionMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const RegSHOMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const MarketParticipantPositionMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const MWCBDeclineLevelMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const MWCBStatusMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const IPOQuotingPeriodUpdateMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const LULDAuctionCollarMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const OperationalHaltMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const AddOrderMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const AddOrderMPIDAttributionMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const OrderExecutedMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const OrderExecutedWithPriceMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const OrderCancelMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const OrderDeleteMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const OrderReplaceMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const NonCrossTradeMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const CrossTradeMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const BrokenTradeMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const NOIIMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const RetailPriceImprovementIndicatorMessage &msg) -> void |
| auto | itch::print_impl (std::ostream &out, const DLCRMessage &msg) -> void |
| auto | itch::print_message (std::ostream &out, const Message &msg) -> void |
Dispatches to the print_impl overload matching the active alternative of msg and writes its formatted representation to out. | |
| auto | itch::operator<< (std::ostream &out, const Message &msg) -> std::ostream & |
Streams a formatted representation of msg to out. | |
Variables | |
| constexpr int | itch::STOCK_LEN = 8 |
| constexpr double | itch::PRICE_DIVISOR = 10000.0 |
| constexpr double | itch::MWCB_PRICE_DIVISOR = 1.0E8 |
Defines every ITCH 5.0 message struct, the Message variant, and the stream-printing helpers used to format them.
The TotalView ITCH feed is composed of a series of messages that describe orders added to, removed from, and executed on Nasdaq, as well as Cross and Stock Directory information. Each message begins with a one-byte Message Type field that identifies the structure of the remainder of the message; this header defines one struct per message type, the Message variant able to hold any of them, and free functions to print a message to a stream.
Definition in file messages.hpp.