Back to Home

How the transfer of financial data on the Nasdaq American Exchange is organized: ITCH and OUCH protocols / ITI Capital Blog

data transfer protocols · ITCH · OUCH · stock market · exchanges · online trading · ios development

How the transfer of financial data on the Nasdaq American Exchange is organized: ITCH and OUCH protocols



    In our blog, we have already talked about the protocols for transferring financial information used on world exchanges . These were protocols such as FIX and FAST , which are widely used by stock exchanges around the world, as well as the proprietary protocols Plaza II and ASTS Bridge , which were created by specialists from the Russian exchanges RTS and MICEX, which later merged into the Moscow Exchange.

    Today we continue the cycle of materials and talk about the proprietary protocols of the Nasdaq ITCH and OUCH exchanges.

    Introduction: Two Sides of a Transaction


    When making each transaction on the exchange during electronic trading, two types of data are always involved in the process - incoming and outgoing. For the transmission of information each has its own protocols. Today we will talk about the two most popular of them that are used, for example, on the Nasdaq - these are the protocols and ITCH and OUCH.

    The ITCH protocol is a data transfer protocol that transfers information related to an order sent to the exchange, as well as service messages. Using this protocol, you can only exchange information, and not make trading operations.

    ITCH was created in the late 90s of the last century - at that time it was one of the most advanced financial data transfer protocols. Since then, it has established itself as a standard in the financial industry.

    In turn, the OUCH protocol allows Nasdaq traders to perform operations on the market - it can be used to place, execute or cancel trading orders. Since its inception, the protocol has been refined several times and has become a truly powerful tool.

    OUCH was created in 1997 so that traders can quickly integrate their trading software with Nasdaq and trade at high speeds. For the sake of the increase, some flexibility of the protocol was sacrificed.

    How OUCH Works


    The OUCH protocol transmits messages of a specific length between the trader and the exchange, in addition, there is the possibility of re-sending data in the event of a software or hardware failure. At the same time, messages from clients are processed by the exchange engine in the sequence in which they were received - the priority of the time of receipt is strictly respected.

    OUCH messages do not have a delivery guarantee - that’s why the resubmission feature was introduced, but to obtain such a guarantee, you can use lower-level protocols like SoupBinTCP and UFO. There are several types of data transmitted using the protocol, for which digital or alphanumeric representations are used.

    To create a trade order, the Enter Order Message is used - each order must have a token unique to each day. Below is an example of a message format - in this case, to enter a trade order:

    Enter Order Message
    NameOffsetLenValueNotes
    A type01"O"Enter Order Message Type Identifier
    Order Token114TokenAny information can act as a token, but every day for each OUCH account it must be unique.
    Buy / sell indicatorfifteen1Characters“B” - order to buy
    “S” - order to sell
    “T” - short sale, the client confirms the possibility of borrowing shares for their sale and subsequent repurchase within three working days
    Number of shares164IntegerThe total number of shares to be sold or bought must be greater than 1 and less than 1,000,000
    Stock208CharactersTicker of a financial instrument
    Price284IntegerThe price at which to conduct the transaction.
    Lifetime324IntegerThe number of seconds that an order must “live” before being automatically canceled.
    Trader id364CharactersThe field should contain only capital letters. The identifier of the trader under whose account the order was sent. One logical OUCH account can be used to enter orders from many traders
    Display401CharactersThis field displays the order display settings (Attributalbe-Price to Display, Anonymous-Price to Comply, etc.)
    Capacity411CharactersThere are 4 possible field values:
    “A” = agency
    “P” = principal
    “R” = riskless
    “O” = other
    Ability to transfer applications between Nasdaq markets (intermarket sweep eligibility)421Characters“Y” - yes
    “N” - no
    Minimal amount434IntegerThe minimum acceptable number of shares to buy or sell
    Cross Request Type471CharactersTypes of cross-orders are described (Opening cross, Closing cross, Supplemental Order, etc.)
    Customer type481CharactersAn optional field indicating that the order is intended for execution on the general market.

    There are also messages for:

    • Replace Orders (Replace Order Message);
    • Cancel Order Message;
    • Changing order parameters (Modify Order Message);

    In addition, there are a number of system messages. Here is some of them:

    • Message about events in the Nasdaq system (System Event Message) - in particular, they transmit information about the start of trading and closing of the trading day;
    • Notification of acceptance of the message - with its help, the fact that the order was accepted by the exchange trading system is confirmed;
    • Order replacement notification - reaction to the corresponding message from the trader;
    • Notification of the cancellation of an order - likewise, a reaction to a trader's team;
    • Notification of the execution of an order - information about the execution of an order;
    • Notification of a performance error - indicates the reason why the transaction could not be completed;
    • Notification of refusal to execute an order - the reasons for refusing to execute are indicated here.

    Nasdaq also has more flexible protocols like FIX, but alternatives outperform OUCH in performance and speed.

    How ITCH Works


    In turn, ITCH displays quotes and order information at all price levels for all securities and financial instruments traded on Nasdaq. In addition, ITCH messages contain information about which financial instruments will be traded on the current day, trading on which shares are suspended and other important official information.

    In addition to transmitting dynamic information about the order queue and quotes, the ITCH also contains information on market opening and closing prices, and even data on applications for participation in IPOs - for such orders, the message Net Order Imbalance Indicator is used.

    Among the existing types of ITCH messages:

    • System events - the beginning of trading, the closing of the market, the beginning and end of the work of the data feed, etc .;
    • Information about shares - trading status of financial instruments, etc.
    • Data market makers;
    • Information on stocks of securities on IPO;
    • etc.

    The following is an example of a message about adding new anonymized orders to the general order queue:



    In addition, information about canceling, changing or replacing orders is also transmitted using ITCH.

    There is an ITCH implementation specifically for FPGA-based trading systems - this data stream is distributed from a dedicated Nasdaq data center in New Jersey. In this case, the requirements for client connections is 10 or 40 gigabits, otherwise the data feed is not provided.

    As with OUCH, the Nasdaq exchange offers ITCH alternatives - for example, TotalView Aggregate, but other protocols do not allow you to receive such an extensive range of data.

    Conclusion


    The ITCH and OUCH protocols were created for use in the Nasdaq-OMX markets, however even this exchange provides other options for connecting clients. For example, to obtain market information (Market Data) and transmit trade data, the FIX and FAST protocols are used. At the same time, the ITCH and OUCH protocols are also applied on other exchange platforms - for example, exchanges in Austria , Turkey and Switzerland .

    In our next articles, we will continue to talk about existing exchange technologies, in particular, we will talk about the Simple Binary Encoding protocol, which, to some extent, is a continuation of the FIX business.

    PS ITinvest allows its customers to organize a connectionnot only to Russian, but also to foreign exchanges (for example, CME Group).

    Other materials about exchange technologies:

    Read Next