25.11.2014 Views

ISE Spread Book Feed Specification - ISE.com

ISE Spread Book Feed Specification - ISE.com

ISE Spread Book Feed Specification - ISE.com

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>ISE</strong> Options Exchange<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> <strong>Specification</strong><br />

For use with FIX software version 5.0<br />

Issue date: June, 2008<br />

Version: 1.0<br />

Produced by:<br />

International Securities Exchange, Inc.<br />

60 Broad Street, New York NY 10004<br />

www.ise.<strong>com</strong><br />

Copyright 2007 International Securities Exchange, Inc. All rights reserved. No part of this<br />

document may be reproduced without a written permission of International Securities Exchange,<br />

Inc.


Table of Contents<br />

1 Introduction ..............................................................................................................................4<br />

1.1 About <strong>ISE</strong> <strong>Spread</strong>s ® ........................................................................................................4<br />

1.2 Overview of <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> ...............................................................................4<br />

1.3 Hours of Operation..........................................................................................................5<br />

1.4 Support and Connectivity ................................................................................................6<br />

2 <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> ............................................................................................................7<br />

2.1 Snapshot / Full Refresh.................................................................................................10<br />

2.2 Incremental Refresh - New order..................................................................................12<br />

2.3 Debit vs. Credit and Bid vs. Offer..................................................................................15<br />

2.4 Oversize snapshot messages.......................................................................................16<br />

2.5 Change order ................................................................................................................16<br />

2.6 Delete order...................................................................................................................17<br />

3 Message Formats ..................................................................................................................19<br />

3.1 FIX Message Headers ..................................................................................................19<br />

3.2 Market Data Incremental Refresh .................................................................................20<br />

3.3 Market Data Snapshot / Full Refresh............................................................................22<br />

3.4 Sequence Reset............................................................................................................24<br />

4 Communications ....................................................................................................................25<br />

4.1 Transmission Standards ...............................................................................................25<br />

4.2 Failover..........................................................................................................................25<br />

4.3 Production IP Groups....................................................................................................26<br />

4.4 Testing IP Groups .........................................................................................................26<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 2


About This Document<br />

This document is a programmer’s reference guide intended to aid in the development and<br />

integration of the <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> feed. It is intended to cover the general business behavior of<br />

the <strong>ISE</strong> <strong>Spread</strong> order book feed and the technology standards and techniques employed to<br />

provide this service.<br />

Intended Audience<br />

This document is for programmers, analysts and IT managers who are developing <strong>ISE</strong> <strong>Spread</strong><br />

<strong>Book</strong> feed client applications.<br />

Related Documents<br />

The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> makes use of the FIX protocol version 5.0.<br />

Document Description Location<br />

Financial Information<br />

Exchange Protocol v5.0<br />

Describes the industry standard<br />

for broker – institution<br />

www.fixprotocol.org/specificatio<br />

ns/<br />

<strong>com</strong>munication.<br />

FIX Protocol Internet site Provides a central repository for www.fixprotocol.org<br />

FIX documents.<br />

<strong>ISE</strong> Internet site<br />

Provides exchange information<br />

for members.<br />

www.ise.<strong>com</strong><br />

Document History<br />

Version<br />

Version 1.0<br />

Change History<br />

Initial Release<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 3


1 Introduction<br />

1.1 About <strong>ISE</strong> <strong>Spread</strong>s ®<br />

<strong>ISE</strong> <strong>Spread</strong>s ® is an innovative technology that enables all market participants to trade smarter by<br />

providing efficient and liquid markets for multi-legged strategies including Complex, Buy-write and<br />

Delta Neutral orders. The fully electronic order book was launched in 2003 and offers immediate<br />

execution in over 1000 products.<br />

The <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> provides subscribers with a <strong>com</strong>plete view of all <strong>com</strong>plex orders on the<br />

<strong>ISE</strong> <strong>Spread</strong> book. The feed consists of spread order information including instrument data,<br />

spread ratio, net price and order quantity.<br />

Orders are NOT aggregated at each price level. All orders of the same type are grouped together<br />

with a <strong>com</strong>mon SecurityID assigned to that type and shown in Bid/Offer format.<br />

The spread book broadcast service is based on industry and technology standards including<br />

Financial Information exchange (FIX) protocol for business level messaging, and UDP IPv4<br />

standards for transmission of broadcast data dissemination. The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> is<br />

currently distributed by BT Radianz via the Radianz Shared Market Infrastructure, by NYSE<br />

Euronext Advanced Trading Solutions Secure Financial Transaction Infrastructure (SFTI®) and<br />

by SAVVIS.<br />

1.2 Overview of <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong><br />

The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> feed has two message types. An Incremental Refresh message that<br />

provides updates to the order book, and Full Refresh message that provides a snapshot of the<br />

order book. The term Snapshot and Full Refresh are interchangeable throughout this document.<br />

Snapshot messages are used to continuously cycle through the <strong>Spread</strong> Order <strong>Book</strong> every two<br />

minutes throughout the day and always reflect the state of the order book as at the last<br />

Incremental Refresh message<br />

The following information is sent out for each spread order:<br />

• Security ID<br />

• Refresh Indicator<br />

• Number of legs<br />

• Time in force<br />

• Net Price<br />

• Quantity<br />

• Order ID<br />

• Special Order type<br />

• Interest Only<br />

The following information is sent out for each leg of the spread order:<br />

• OPRA Code<br />

• CFI Code<br />

• Expiration Date<br />

• Strike Price<br />

• Leg Side<br />

• Leg Ratio<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 4


The data feed is being Multicast over various networks in an A-feed / B-feed format, similar to<br />

OPRA. The market data is distributed over 2 multicast addresses. There is no need to request<br />

retransmissions of lost packets. If a packet is lost or if you are late to join the data feed, you will<br />

wait for a <strong>com</strong>plete cycle of the Snapshot / Full Refresh messages to ensure that the order book<br />

data is accurate.<br />

The messages are defined using the FIX.5.0 standard for market data, and follow the best<br />

practices outlined by the FIX Market Data Working Group.<br />

For more information about the FIX 5.0, please refer to the following web sites:<br />

http://fixprotocol.org/specification.<br />

1.3 Hours of Operation<br />

Normal trading hours for the <strong>ISE</strong> Options market are from 9:30am to 4:00pm ET and 4:15pm ET<br />

for Index Options.<br />

The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> is brought online each day at approximately 7:00am ET and<br />

continues to broadcast information throughout the trading day. The services stop broadcasting at<br />

5:00pm ET.<br />

Time<br />

7:00am<br />

<strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> Activity<br />

The <strong>Spread</strong> <strong>Book</strong> feed begins.<br />

All spread orders of the same type and the inverse of that type are assigned a<br />

<strong>com</strong>mon SecurityID so that like orders can be shown in an order book format.<br />

A Full Refresh message is sent for the first order of each type and establishes the<br />

Security ID for that type.<br />

As new orders are entered into the system leading to the market open. Incremental<br />

Refresh messages are sent out for orders that are added/changed/modified on the<br />

book.<br />

Full Refresh messages are disseminated continuously with a <strong>com</strong>plete refresh of the<br />

<strong>Spread</strong> Order <strong>Book</strong> every two minutes.<br />

9:30am<br />

The Market opens and regular trading begins.<br />

Incremental Refresh messages are sent to update the book as the market changes.<br />

Full refresh messages are sent continuously with a <strong>com</strong>plete refresh of the market<br />

every two minutes.<br />

4:00pm/<br />

4:15pm<br />

6:00pm<br />

Regular trading ends.<br />

Market Data Snapshot Full Refresh messages continue to be disseminated with end<br />

of day information.<br />

The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> stops disseminating Full Refresh messages.<br />

Table 1 - Normal Processing Schedule<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 5


1.4 Support and Connectivity<br />

<strong>ISE</strong> support for the <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> is available from 8 am to 6 pm (Eastern Time) on market<br />

days and the contacts are as follows:<br />

<strong>ISE</strong> Contacts<br />

Business Issues 212 897-8160 bizdev@ise.<strong>com</strong><br />

Technical Support 212 897-0284 <strong>com</strong>puteroperations@ise.<strong>com</strong><br />

FIX Support 212 897-0244, #2 tms@ise.<strong>com</strong><br />

The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> is currently distributed by BT Radianz via the Radianz Shared Market<br />

Infrastructure, by NYSE Euronext Advanced Trading Solutions Secure Financial Transaction<br />

Infrastructure (SFTI®) and by SAVVIS. We re<strong>com</strong>mend a 10 MB redundant connection with an<br />

aggregate of 20 MB of bandwidth, which represents 100% head room based on the peak data<br />

rates as of January 2008. The contacts for support and connectivity are as follows:<br />

BT Radianz Inc.<br />

Edmond Esquilin 212 415 4664 edmond.esquilin@bt.<strong>com</strong><br />

Support 877 882-1497<br />

SFTI (Secure Financial Transaction Infrastructure) contacts at NYSE Euronext Advanced<br />

Trading Solutions<br />

Sales 212 244-5551 sales@transacttools.<strong>com</strong><br />

Support 800 873-7422 SFTI@SIAC.<strong>com</strong><br />

SAVVIS<br />

Sales 800-463-8294 Team<strong>ISE</strong>@savvis.net<br />

Support 888-638-6771<br />

For additional information please send email to bizdev@ise.<strong>com</strong>.<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 6


2 <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong><br />

This section describes the <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong>, the different messages that are sent by <strong>ISE</strong><br />

and how they are used to maintain the <strong>Spread</strong> Order <strong>Book</strong>. The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> provides<br />

subscribers with a full view of the <strong>ISE</strong> <strong>Spread</strong> Order <strong>Book</strong> where all orders are assigned to<br />

SecurityID (Tag 48). SecurityIDs are created when orders with unique structure characteristics<br />

are entered into the <strong>Spread</strong> Order <strong>Book</strong>.<br />

Structure characteristics:<br />

• Series Legs – A maximum of 4 options legs (series) plus a cash equity leg<br />

• Ratio of each leg<br />

• Side of each leg (buy/sell)<br />

Example of a SecurityID and inverse orders<br />

Order<br />

Buy 1 GOOG9JAN600.0C<br />

Sell 2 GOOG9JAN650.0C<br />

Buy 1 GOOG9JAN700.0P<br />

If this is the first time an order of this leg/ratio/side <strong>com</strong>position is entered a new randomly<br />

generated Security is created and disseminated through with the Full Refresh.<br />

Security example: 0de0f330-a80e-4595-8ea1-d34f2774f9cb<br />

If this is NOT the first time an order of this leg/ratio/side <strong>com</strong>position is entered then an<br />

Incremental Refresh with a “MDUpdateAction” of “New” is disseminated where the Incremental<br />

references an existing “SecurityID”.<br />

If the following inverse order is entered an Incremental Refresh with an “MDUpdateAction” of<br />

“New” is disseminated where the Incremental Refresh references same Security ID of 0de0f330-<br />

a80e-4595-8ea1-d34f2774f9cb.<br />

Sell 1 GOOG9JAN600.0C<br />

Buy 2 GOOG9JAN650.0C<br />

Sell 1 GOOG9JAN700.0P<br />

The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> feed utilizes following FIX message types as listed in the table below.<br />

MsgType<br />

(tag=35)<br />

X<br />

Message Name<br />

Market Data Incremental<br />

Refresh<br />

Notes<br />

The MDUpdateAction tag indicates the usage<br />

of the message type:<br />

• MDUpdateAction = 0 - New order<br />

• MDUpdateAction = 1 - Change order<br />

• MDUpdateAction = 2 - Delete order<br />

W Market Data Snapshot /<br />

Full Refresh<br />

Snapshots of all order on the book.<br />

4 Sequence Reset Indicates the message sequence number is<br />

being reset.<br />

Table 2 - Market Data Messages<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 7


The message formats are based on the FIX.5.0 specification, with some extensions as noted in<br />

Section 3.<br />

Incremental with MDUpdateAction – New - Is used to add new orders to structures (securities)<br />

that are already defined on the feed. There should never be an Incremental with<br />

MDUpdateAction – New without reference to an existing “SecurityID” (Tag48)<br />

Incremental with MDUpdateAction – Change – Is used to update an order when order quantity<br />

is decreased. For an increase in quantity an Incremental with a MDUpdateAction of Delete<br />

followed by a Incremental with a New is sent out.<br />

Incremental with MDUpdateAction – Delete – Is used to delete orders from structures<br />

(SecurityID) or to increase the quantity of existing orders. Deletes can be sent out for the<br />

following reasons<br />

1. Order has traded out <strong>com</strong>pletely<br />

2. Order has been altered up in quantity or has been traded partially – Note Incremental<br />

with MDUpdateAction of new is sent out with the new quantity<br />

3. Order has been deleted<br />

4. Order Price – Increase or decrease – For an increase or decrease in price an<br />

Incremental with a MDUPdateAction of Delete followed by a Incremental with a New is<br />

sent out.<br />

In the event that all order size has been traded/deleted for a SecurityID the feed must continue to<br />

publish the SecurityID through the Full Refresh Message. This Full Refresh message should<br />

continue to distribute information regarding the structure and will have tag 268 NoMDEntries = 0.<br />

The <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> <strong>com</strong>mences each day at 07:00 AM EST with a Snapshot Message for<br />

each order in the book followed by an Incremental Refresh Message. The ‘Snapshot’ message is<br />

sent for each series every two minutes. Incremental Refresh messages will now insert price and<br />

quantity into the order books. Each message has one instruction (MDUpdateAction) that can be<br />

to add, change or delete an order.<br />

The following is an example of a spread order posted on the <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong>:<br />

ID B/S Ratio Qty Price Valid<br />

ALL8DEC47.5C<br />

ALL8DEC52.5C<br />

Buy<br />

Sell<br />

1<br />

1<br />

10 2.75 Day<br />

Following Snapshot message is sent out with the SecurityID of the spread order. If this is the first<br />

time an order of this leg/ratio/side <strong>com</strong>position is entered then Full refresh message always has<br />

MD entries field set to 0 and refresh indicator set to 1.<br />

Tag<br />

Tag Name Value Description<br />

Number<br />

Standard FIX Header MsgType = “W”<br />

48 SecurityID 653c34f6-ac00-436ca065-3ba12fb0debd<br />

Security identifier value.<br />

22 SecurityIDSource 99 Valid values:<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 8


Tag<br />

Tag Name Value Description<br />

Number<br />

Standard FIX Header MsgType = “W”<br />

99 – GUID<br />

911 TotNumReports 1 Total number of Market<br />

Data reports.<br />

1 (Default)<br />

963 MDReportID 1 Unique identifier for<br />

Market Data report<br />

1 (Default)<br />

1187 RefreshIndicator 1 Default value is set to 0.<br />

When set to 1, the<br />

message should be<br />

processed. When set to<br />

0, the message could be<br />

processed.<br />

555 NoLegs 2 Number of legs<br />

> 600 LegSymbol ALL This is the underlying<br />

symbol and not the 3<br />

char OCC trading symbol<br />

602 LegsSecurityID ALLEY FULL OPRA CODE<br />

603 LegsSecurityIDSource J J – Options Price<br />

Reporting Authority (for<br />

Option legs)<br />

608 LegCFICode OC OC-Option Call [OPT]<br />

611 LegMaturityDate 20080517 Maturity Date (only for<br />

Option legs in<br />

YYYYMMDD format)<br />

612 LegStrikePrice 47.5 0 - 99999999.9999 (only<br />

for Option legs)<br />

624 LegSide 1 1-Buy<br />

623 LegRatioQty 1 must be an integer >=1<br />

> 600 LegSymbol ALL This is the underlying<br />

symbol and not the 3<br />

char OCC trading symbol<br />

602 LegsSecurityID ALLEX FULL OPRA CODE<br />

603 LegsSecurityIDSource J Identifies class or source<br />

of the Security<br />

J – Options Price<br />

Reporting Authority (for<br />

Option legs)<br />

608 LegCFICode OC OC-Option Call [OPT]<br />

611 LegMaturityDate 20080517 Maturity Date (only for<br />

Option legs in<br />

YYYYMMDD format)<br />

612 LegStrikePrice 52.5 0 - 99999999.9999 (only<br />

for Option legs)<br />

624 LegSide 2 2-Sell<br />

623 LegRatioQty 1 must be an integer >=1<br />

268 NoMDEntries 0 Number of entries<br />

following for this strategy.<br />

Incremental Refresh Message is sent following Snapshot with MD update Action set to 0<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 9


Tag Number Tag Name Value Description<br />

Standard FIX Header MsgType = “X”<br />

268 NoMDEntries 1 Number of entries<br />

following.<br />

Valid value: 1<br />

> 279 MDUpdateAction 0 0 – New<br />

48 SecurityID 653c34f6-ac00-436ca065-3ba12fb0debd<br />

Security identifier value.<br />

GUID in this case. (Same<br />

as Snapshot)<br />

22 SecurityIS Source 99 99 – GUID<br />

269 MDEntryType 0 Bid<br />

270 MDEntryPx 2.75 Entry price for the Order<br />

271 MDEntrySize 10 Quantity or Volume<br />

represented by the Market<br />

Data Entry<br />

59 Time In Force 0 Day<br />

37 Order ID 726DB618:1623CA44 Order ID assigned by <strong>ISE</strong><br />

9202 Special Order R<br />

Regular order<br />

Type<br />

10 CheckSum Trailer<br />

Full Refresh Messages are being continuously sent such that feed subscriber receives Full<br />

Refresh Messages for every spread orders on the book every two minutes. The Full Refresh<br />

message always reflects the state of the last Incremental Refresh Message.<br />

Snapshot messages can be ignored unless the field ‘Refresh Indicator’ has the value ‘1’. This is<br />

used in the event of a system failure that requires the <strong>ISE</strong> to send snapshots for all orders to<br />

refresh the order book or when an order with new leg/ratio/side <strong>com</strong>position added throughout the<br />

day.<br />

2.1 Snapshot / Full Refresh<br />

A Snapshot message is used to send a <strong>com</strong>plete picture of the order book. Prior to market<br />

opening the Snapshot is sent to provide an initial view of spread order book. A Snapshot of entire<br />

order book is sent every two minutes to provide an initial state for applications as they connect to<br />

the data feed, and it also serves as a heartbeat mechanism so that client applications can<br />

constantly check that they are receiving data.<br />

Snapshot / Full Refresh Example - An example of a Snapshot following the opening would be<br />

as follows:<br />

Tag Tag Name Value Description<br />

Number<br />

Standard FIX Header MsgType = “W”<br />

48 SecurityID e450bcfe-6d2b-4053- Security identifier value.<br />

83c9-24603c2f5408<br />

22 SecurityIDSource 99 Valid values:<br />

99 – GUID<br />

911 TotNumReports 1 Total number of Market Data<br />

reports.<br />

1 (Default)<br />

963 MDReportID 1 Unique identifier for Market Data<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 10


Tag Tag Name Value Description<br />

Number<br />

Standard FIX Header MsgType = “W”<br />

report<br />

1 (Default)<br />

1187 RefreshIndicator 1 Default value is set to 0. When<br />

set to 1, the message should be<br />

processed. When set to 0, the<br />

message could be processed.<br />

555 NoLegs 2 Number of legs<br />

> 600 LegSymbol ALL This is the underlying symbol<br />

and not the 3 char OCC trading<br />

symbol<br />

602 LegsSecurityID ALLEY FULL OPRA CODE<br />

603 LegsSecurityIDSourc<br />

e<br />

J<br />

J – Options Price Reporting<br />

Authority (for Option legs)<br />

608 LegCFICode OC OC-Option Call [OPT]<br />

611 LegMaturityDate 20080517 Maturity Date (only for Option<br />

legs in YYYYMMDD format)<br />

612 LegStrikePrice 47.5 0 - 99999999.9999 (only for<br />

Option legs)<br />

624 LegSide 1 1-Buy<br />

623 LegRatioQty 1 must be an integer >=1<br />

> 600 LegSymbol ALL This is the underlying symbol<br />

and not the 3 char OCC trading<br />

symbol<br />

602 LegsSecurityID ALLEX FULL OPRA CODE<br />

603 LegsSecurityIDSourc<br />

e<br />

J<br />

Identifies class or source of the<br />

Security<br />

J – Options Price Reporting<br />

Authority (for Option legs)<br />

608 LegCFICode OC OC-Option Call [OPT]<br />

611 LegMaturityDate 20080517 Maturity Date (only for Option<br />

legs in YYYYMMDD format)<br />

612 LegStrikePrice 52.5 0 - 99999999.9999 (only for<br />

Option legs)<br />

624 LegSide 2 2-Sell<br />

623 LegRatioQty 1 must be an integer >=1<br />

268 NoMDEntries 3 Number of entries following for<br />

this strategy.<br />

> 269 MDEntryType 0 Bid<br />

270 MDEntryPx 10.50 Entry price for the Order<br />

271 MDEntrySize 10 Quantity or Volume represented<br />

by the Market Data Entry<br />

59 Time In Force 0 Day<br />

37 Order ID 726DB618:1623CA44 Order ID assigned by <strong>ISE</strong><br />

9202 Special Order Type R Regular order<br />

> 269 MDEntryType 0 Bid<br />

270 MDEntryPx 10.60 Entry price for the Order.<br />

271 MDEntrySize 50 Quantity or Volume represented<br />

by the spread order.<br />

59 Time In Force 0 Day<br />

37 Order ID 726DB618:1623CA44 Order ID assigned by <strong>ISE</strong><br />

9202 Special Order Type R Regular order<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 11


Tag Tag Name Value Description<br />

Number<br />

Standard FIX Header MsgType = “W”<br />

> 269 MDEntryType 0 Bid<br />

270 MDEntryPx 10.70 Entry price for the Order<br />

271 MDEntrySize 10 Quantity or Volume represented<br />

by the spread order.<br />

59 Time In Force 1 GTC<br />

37 Order ID 726DB618:1623CA44 Order ID assigned by <strong>ISE</strong><br />

9202 Special Order Type R Regular order<br />

10 Checksum Trailer<br />

The Information being conveyed above represents following snapshot of the <strong>Spread</strong> <strong>Book</strong>:<br />

ID B/S Ratio Qty Price I/E Valid<br />

ALL8DEC47.5C Buy 1<br />

10 10.50 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

50 10.60 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C<br />

ALL8DEC52.5C<br />

Buy<br />

Sell<br />

1<br />

1<br />

10 10.70 E GTC<br />

2.2 Incremental Refresh - New order<br />

Incremental Refresh Example 1 – A new order added to existing SecurityID:<br />

State of the book before a new order is entered:<br />

ID B/S Ratio Qty Price I/E Valid<br />

ALL8DEC47.5C Buy 1<br />

10 10.50 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

50 10.60 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C<br />

ALL8DEC52.5C<br />

Buy<br />

Sell<br />

1<br />

1<br />

10 10.70 E GTC<br />

A new Customer order for 20 contracts is added to spread book to buy ALL Dec 47.5 and sell<br />

Dec 52.5 calls. The order is priced at $10.80.<br />

Tag Number Tag Name Value Description<br />

Standard FIX Header MsgType = “X”<br />

268 NoMDEntries 1 Number of entries following.<br />

Valid value: 1<br />

> 279 MDUpdateAction 0 0 – New<br />

48 SecurityID 653c34f6-ac00-436ca065-3ba12fb0debd<br />

22 SecurityID Source 99 99 – GUID<br />

269 MDEntryType 0 Bid<br />

Security identifier value. GUID<br />

in this case. (Same as<br />

Snapshot)<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 12


Tag Number Tag Name Value Description<br />

Standard FIX Header MsgType = “X”<br />

270 MDEntryPx 10.80 Entry price for the Order<br />

271 MDEntrySize 20 Quantity or Volume represented<br />

by the Market Data Entry<br />

59 Time In Force 0 Day<br />

37 Order ID 726DB618:1623CAAR Order ID assigned by <strong>ISE</strong><br />

9202 Special Order R<br />

Regular order<br />

Type<br />

10 CheckSum Trailer<br />

State of the book after the order is entered:<br />

ID B/S Ratio Qty Price I/E Valid<br />

ALL8DEC47.5C Buy 1<br />

10 10.50 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

50 10.60 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

10 10.70 E GTC<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C<br />

ALL8DEC52.5C<br />

Buy<br />

Sell<br />

1<br />

1<br />

20 10.80 E Day<br />

Incremental Refresh Example 2 – A new spread order for IBM.<br />

This example shows an order arriving with different spread structure for IBM for the first time in<br />

current trading session.<br />

State of the book before a new order is entered:<br />

ID B/S Ratio Qty Price I/E Valid<br />

ALL8DEC47.5C Buy 1<br />

10 10.50 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

50 10.60 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C<br />

ALL8DEC52.5C<br />

Buy<br />

Sell<br />

1<br />

1<br />

10 10.70 E GTC<br />

A new spread order for 10 contracts is added to the <strong>Spread</strong> Order <strong>Book</strong> to buy IBM October 95<br />

Call and sell October 100 Call. The order is priced at $20.95. This result in a full refresh message<br />

with new security ID followed by incremental refresh message to add price and quantity of the<br />

spread order.<br />

Tag Tag Name Value Description<br />

Number<br />

Standard FIX Header MsgType = “W”<br />

48 SecurityID e450bcfe-6d2b- Security identifier value.<br />

4053-83c9-<br />

24603c2f5408<br />

22 SecurityIDSource 99 Valid values:<br />

99 – GUID<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 13


Tag Tag Name Value Description<br />

Number<br />

Standard FIX Header MsgType = “W”<br />

911 TotNumReports 1 Total number of Market Data<br />

reports.<br />

1 (Default)<br />

963 MDReportID 1 Unique identifier for Market Data<br />

report<br />

1 (Default)<br />

1187 RefreshIndicator 1 Default value is set to 0. When set<br />

to 1, the message should be<br />

processed. When set to 0, the<br />

message could be processed.<br />

555 NoLegs 2 Number of legs<br />

> 600 LegSymbol IBM This is the underlying symbol and<br />

not the 3 char OCC trading symbol<br />

602 LegsSecurityID IBMVS FULL OPRA CODE<br />

603 LegsSecurityIDSource J J – Options Price Reporting<br />

Authority (for Option legs)<br />

608 LegCFICode OC OC-Option Call [OPT]<br />

611 LegMaturityDate 20081018 Maturity Date (only for Option legs<br />

in YYYYMMDD format)<br />

612 LegStrikePrice 95 0 - 99999999.9999 (only for Option<br />

legs)<br />

624 LegSide 1 1-Buy<br />

623 LegRatioQty 1 must be an integer >=1<br />

> 600 LegSymbol IBM This is the underlying symbol and<br />

not the 3 char OCC trading symbol<br />

602 LegsSecurityID IBMVT FULL OPRA CODE<br />

603 LegsSecurityIDSource J Identifies class or source of the<br />

Security<br />

J – Options Price Reporting<br />

Authority (for Option legs)<br />

608 LegCFICode OC OC-Option Call [OPT]<br />

611 LegMaturityDate 20081018 Maturity Date (only for Option legs<br />

in YYYYMMDD format)<br />

612 LegStrikePrice 100 0 - 99999999.9999 (only for Option<br />

legs)<br />

624 LegSide 2 2-Sell<br />

623 LegRatioQty 1 must be an integer >=1<br />

268 NoMDEntries 0 Number of entries following for this<br />

strategy.<br />

Incremental refresh message sent to add price and quantity of the order.<br />

Tag Number Tag Name Value Description<br />

Standard FIX Header MsgType = “X”<br />

268 NoMDEntries 1 Number of entries following.<br />

Valid value: 1<br />

> 279 MDUpdateAction 0 0 – New<br />

48 SecurityID e450bcfe-6d2b-<br />

4053-83c9-<br />

24603c2f5408<br />

Security identifier value. GUID in<br />

this case. (Same as Snapshot)<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 14


Tag Number Tag Name Value Description<br />

Standard FIX Header MsgType = “X”<br />

22 SecurityIS Source 99 99 – GUID<br />

269 MDEntryType 0 Bid<br />

270 MDEntryPx 20.95 Entry price for the Order<br />

271 MDEntrySize 10 Quantity or Volume represented by<br />

the Market Data Entry<br />

59 Time In Force 0 Day<br />

37 Order ID 726DB618:1623C Order ID assigned by <strong>ISE</strong><br />

AAR<br />

9202 Special Order Type R Regular order<br />

10 CheckSum Trailer<br />

State of the book after the order is entered:<br />

ID B/S Ratio Qty Price I/E Valid<br />

ALL8DEC47.5C Buy 1<br />

10 10.50 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

50 10.60 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

10 10.70 E GTC<br />

ALL8DEC52.5C Sell 1<br />

IBM8OCT95.0C<br />

IBM8OCT100.0C<br />

Buy<br />

Sell<br />

1<br />

1<br />

10 20.95 E Day<br />

2.3 Debit vs. Credit and Bid vs. Offer<br />

When a new SecurityID is created the following rules apply when determining the whether the<br />

SecurityID is broadcast as a Bid vs. Offer.<br />

1. If the net price of the order is a positive value then the structure (leg sides and ratio) of the<br />

SecurityID is created as entered into the book as a BID.<br />

Example:The following order is entered for a Debit of 9.00<br />

The feed publishes the following<br />

Buy 1 GOOG9JAN600.0C<br />

Sell 2 GOOG9JAN650.0C<br />

Buy 1 GOOG9JAN700.0P<br />

Buy 1 GOOG9JAN600.0C<br />

Sell 2 GOOG9JAN650.0C as a BID of 9.00<br />

Buy 1 GOOG9JAN700.0P<br />

2. If the net price of the order is a negative value then the structure (leg sides and ratio) of the<br />

SecurityID is created as an INVERSE of the entered into the book as an OFFER.<br />

Example:<br />

The following order is entered for a Credit of -9.00<br />

Sell 1 GOOG9JAN600.0C<br />

Buy 2 GOOG9JAN650.0C<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 15


Sell 1 GOOG9JAN700.0P<br />

The feed publishes the following **Note Inverse Structure**<br />

Buy 1 GOOG9JAN600.0C<br />

Sell 2 GOOG9JAN650.0C as an OFFER of 9.00<br />

Buy 1 GOOG9JAN700.0P<br />

NOTE: since the price is negative for the very first order in this structure, the inverse of in<strong>com</strong>ing<br />

structure is created, MDEntryType=OFFER & price = (-1) * order_price for the in<strong>com</strong>ing order.<br />

Throughout the trading day prices could be positive or negative. All prices would start positive at<br />

the start of the day and may move to negative prices.<br />

2.4 Oversize snapshot messages<br />

All orders that belong to a structure are sent in the Snapshot full refresh message. It is possible<br />

that the size of a full snapshot message exceeds the datagram packet size threshold of 1000<br />

bytes due to multiple orders in a structure. In this scenario, the full snapshot message would be<br />

broken into multiple full refresh messages and then written to the multicast address.<br />

Tags 911 (TotNumReports) and 963 (MDReportID) are used for <strong>com</strong>municating the number of<br />

refresh messages related to each security ID.<br />

For example, if there were 25 orders in one structure and each snapshot is set to disseminate 10<br />

orders, then the Full refresh message would be broken as follows:<br />

Msg 1: TotNumReport=3, MDReportID=1, FullRefreshMsg contains 10 orders<br />

Msg 2: TotNumReport=3, MDReportID=2, FullRefreshMsg contains 10 orders<br />

Msg 3: TotNumReport=3, MDReportID=3, FullRefreshMsg contains 5 orders<br />

2.5 Change order<br />

An Incremental Refresh Message with MDUpdateAction equal to “1” indicates a change to a<br />

posted order. This includes Price and/or Quantity update.<br />

Incremental Refresh Example 3 – Customer reduce quantity on existing order:<br />

State of the book before the execution:<br />

ID B/S Ratio Qty Price I/E Valid<br />

ALL8DEC47.5C Buy 1<br />

10 10.50 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

50 10.60 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

10 10.70 E GTC<br />

ALL8DEC52.5C Sell 1<br />

IBM8OCT95.0C<br />

IBM8OCT100.0C<br />

Buy<br />

Sell<br />

1<br />

1<br />

10 20.95 E Day<br />

The quantity of an existing buy order in IBM October 95 and 100 Calls is reduced from 10<br />

contracts to 5. The price remains the same ($20.95).<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 16


Tag Number Tag Name Value Description<br />

Standard FIX Header MsgType = “X”<br />

268 NoMDEntries 1 Number of entries following.<br />

Valid value: 1<br />

> 279 MDUpdateAction 1 1 – Change<br />

48 SecurityID e450bcfe-6d2b-4053-<br />

83c9-24603c2f5408<br />

Security identifier value. GUID in<br />

this case. (Same as Snapshot)<br />

22 SecurityIS Source 99 99 – GUID<br />

269 MDEntryType 0 Bid<br />

270 MDEntryPx 20.95 Entry price for the Order<br />

271 MDEntrySize 5 Quantity or Volume represented<br />

by the Market Data Entry<br />

59 Time In Force 0 Day<br />

37 Order ID 726DB618:1623CAAR Order ID assigned by <strong>ISE</strong><br />

9202 Special Order R<br />

Regular order<br />

Type<br />

10 CheckSum Trailer<br />

State of the book after the order is executed:<br />

ID B/S Ratio Qty Price I/E Valid<br />

ALL8DEC47.5C<br />

ALL8DEC52.5C<br />

ALL8DEC47.5C<br />

ALL8DEC52.5C<br />

ALL8DEC47.5C<br />

ALL8DEC52.5C<br />

IBM8OCT95.0C<br />

IBM8OCT100.0C<br />

Buy<br />

Sell<br />

Buy<br />

Sell<br />

Buy<br />

Sell<br />

Buy<br />

Sell<br />

1<br />

1<br />

1<br />

1<br />

1<br />

1<br />

1<br />

1<br />

10 10.50 E Day<br />

50 10.60 E Day<br />

10 10.70 E GTC<br />

5 20.95 E Day<br />

2.6 Delete order<br />

An Incremental Refresh (Message Type X) with MDUpdateAction equal to “2” is used to indicate<br />

an order delete.<br />

Incremental Refresh Example 4 – Existing order deleted on <strong>ISE</strong> by customer:<br />

State of the book before the execution:<br />

ID B/S Ratio Qty Price I/E Valid<br />

ALL8DEC47.5C Buy 1<br />

10 10.50 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

50 10.60 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

10 10.70 E GTC<br />

ALL8DEC52.5C Sell 1<br />

IBM8OCT95.0C<br />

IBM8OCT100.0C<br />

Buy<br />

Sell<br />

1<br />

1<br />

5 20.95 E Day<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 17


The order to buy IBM Oct95 calls and sell Oct 100 calls was deleted. <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong><br />

sends out a delete Incremental refresh message, specifying which order was deleted.<br />

Tag Number Tag Name Value Description<br />

Standard FIX Header MsgType = “X”<br />

268 NoMDEntries 1 Number of entries following.<br />

Valid value: 1<br />

> 279 MDUpdateAction 2 2 – Delete<br />

48 SecurityID e450bcfe-6d2b-4053-<br />

83c9-24603c2f5408<br />

Security identifier value. GUID<br />

in this case. (Same as<br />

Snapshot)<br />

22 SecurityIS Source 99 99 – GUID<br />

37 Order ID 726DB618:1623CAAR Order ID assigned by <strong>ISE</strong><br />

10 CheckSum Trailer<br />

State of the book after the delete message is received<br />

ID B/S Ratio Qty Price I/E Valid<br />

ALL8DEC47.5C Buy 1<br />

10 10.50 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C Buy 1<br />

50 10.60 E Day<br />

ALL8DEC52.5C Sell 1<br />

ALL8DEC47.5C<br />

ALL8DEC52.5C<br />

Buy<br />

Sell<br />

1<br />

1<br />

10 10.70 E GTC<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 18


3 Message Formats<br />

This section describes each message type in detail. Each message is described in its FIX format<br />

followed by an example of the message.<br />

3.1 FIX Message Headers<br />

Every message has a standard FIX.5.0 header with the following tags:<br />

Tag Field Name Req'd Comments<br />

8 BeginString Y Identifies beginning of new message and protocol<br />

version. ALWAYS FIRST FIELD IN MESSAGE.<br />

Valid value:<br />

FIX.5.0<br />

35 MsgType Y Defines message type.<br />

Valid values:<br />

W = Market Data – Snapshot/Full Refresh<br />

X = Market Data – Incremental Refresh<br />

34 MsgSeqNum Y Integer message sequence number.<br />

52 SendingTime Y Time of message transmission (always expressed in<br />

UTC (Universal Time Coordinated, also known as<br />

"GMT").<br />

Table 3 - FIX Message Headers<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 19


3.2 Market Data Incremental Refresh<br />

The Market Data Incremental Refresh message contains the fields listed in the following table<br />

below. The repeating group is noted by the “>” in the far left hand column.<br />

Tag Field Name Req'd Comments<br />

Standard Header Y MsgType = X<br />

268 NoMDEntries Y Number of entries following.<br />

Valid value: 1<br />

> 27 MDUpdateAction Y<br />

9<br />

Must be first field in this repeating group.<br />

Valid values:<br />

0 – New<br />

1 – Change<br />

2 – Delete<br />

Component Block <br />

> 48 SecurityID Y Security identifier value. GUID in this case.<br />

> 22 SecurityIDSource Y Valid values:<br />

99 – GUID<br />

End Block <br />

> 269 MDEntryType Y Type of Market Data Entry.<br />

Valid Values:<br />

0 – Bid<br />

1 – Offer<br />

> 270 MDEntryPx N Entry price for the Order.<br />

> 271 MDEntrySize Y Quantity or Volume represented by the Market Data<br />

Entry<br />

> 59 TimeInForce N For optional use when this Bid or Offer represents<br />

an order<br />

Valid values:<br />

0 – Day<br />

1 – Good Till Cancel (GTC)<br />

3 – Immediate Or Cancel (IOC)<br />

> 18 ExecInst N Can contain multiple instructions, space delimited<br />

Valid value:<br />

G – All or None<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 20


37 OrderID Y For optional use when this Bid, Offer, or Trade<br />

represents an order<br />

Valid value: LogB Order Number<br />

> 920<br />

2<br />

SpecialOrdType N Valid Values:<br />

R – Regular order (default)<br />

F - Facilitation order<br />

S – Unsolicited order<br />

Z – Interest order<br />

Table 4 - Market Data Incremental Refresh<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 21


3.3 Market Data Snapshot / Full Refresh<br />

The Market Data Snapshot message is used to refresh the book and contains the fields listed in<br />

the table below. The repeating group is noted by the “>” in the far left hand column.<br />

Tag Field Name Req' Comments<br />

d<br />

Standard Header Y MsgType = W<br />

Component Block <br />

48 SecurityID Y Security identifier value.<br />

22 SecurityIDSource Y Valid values:<br />

99 – GUID<br />

End Block <br />

911 TotNumReports N Total number of Market Data reports.<br />

1 (Default)<br />

963 MDReportID N Unique identifier for Market Data report<br />

1 (Default)<br />

1187 RefreshIndicator Y Default value is set to 0. When set to 1, the<br />

message should be processed. When set to 0, the<br />

message could be processed.<br />

555 NoLegs N Number of legs<br />

Component Block <br />

> 60 LegSymbol Y This is the underlying symbol and not the 3 char<br />

0<br />

OCC trading symbol<br />

> 60<br />

2<br />

> 60<br />

3<br />

> 60<br />

8<br />

> 61<br />

1<br />

> 61<br />

2<br />

> 62<br />

4<br />

LegSecurityID N FULL OPRA CODE<br />

LegSecurityIDSourc<br />

e<br />

N<br />

Identifies class or source of the Security<br />

Valid values:<br />

J – Options Price Reporting Authority (for Option<br />

legs)<br />

8 – Exchange Symbol (for Stock legs)<br />

LegCFICode Y OC-Option Call [OPT]<br />

OP-Option Put [OPT]<br />

ES-Equity Common Shares [CS]<br />

LegMaturityDate N Maturity Date (only for Option legs in YYYYMMDD<br />

format)<br />

LegStrikePrice N 0 - 99999999.9999 (only for Option legs)<br />

LegSide Y 1-Buy<br />

2-Sell<br />

3-Sell Short<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 22


62 LegRatioQty Y must be an integer >=1<br />

3<br />

< end of Instrument Leg ><br />

268 NoMDEntries Y Number of entries following for this strategy.<br />

> 269 MDEntryType Y Type of Market Data Entry.<br />

Valid Values:<br />

0 – Bid<br />

1 – Offer<br />

> 270 MDEntryPx N Entry price for the Order.<br />

> 271 MDEntrySize Y Quantity or Volume represented by the Market Data<br />

Entry<br />

> 59 TimeInForce N For optional use when this Bid or Offer represents<br />

an order<br />

Valid values:<br />

0 – Day<br />

1 – Good Till Cancel (GTC)<br />

3 – Immediate Or Cancel (IOC)<br />

> 18 ExecInst N Can contain multiple instructions, space delimited<br />

Valid value:<br />

G – All or None<br />

> 37 OrderID Y For optional use when this Bid, Offer, or Trade<br />

represents an order<br />

Valid value: LogB Order Number<br />

> 9202 SpecialOrdType N Valid Values:<br />

R – Regular order (default)<br />

F - Facilitation order<br />

S – Unsolicited order<br />

Z – Interest order<br />

Table 5 - Market Data Snapshot / Full Refresh<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 23


3.4 Sequence Reset<br />

Tag Field Name Req'd Comments<br />

Standard Header Y MsgType = 4<br />

123 GapFillFlag N Indicates that the Sequence Reset message is<br />

replacing administrative or application messages<br />

which will not be resent.<br />

Valid value:<br />

N – Reset mode<br />

36 NewSeqNo Y New sequence number<br />

If a Sequence Reset message is received the client should expect the next sequence number to<br />

be higher than NewSeqNo tag value.<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 24


4 Communications<br />

The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> is currently distributed by BT Radianz via the Radianz Shared Market<br />

Infrastructure and by NYSE Euronext Advanced Trading Solutions Secure Financial Transaction<br />

Infrastructure (SFTI®). These providers use advanced tele<strong>com</strong>munications protocols, and was<br />

designed to support a number of industry-standard protocols including IP and UDP as defined by<br />

the Internet Engineering Task Force (IETF). We expect additional extranet providers to distribute<br />

this data.<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> feed data is disseminated using multicast via two redundant lines (A and B)<br />

that are intended to provide a level of fault tolerance. We re<strong>com</strong>mend a 10 MB redundant<br />

connection with an aggregate of 20 MB of bandwidth, which represents 100% head room based<br />

on the peak data rates as of January 2008. A separate set of addresses and ports are used for<br />

functional testing.<br />

4.1 Transmission Standards<br />

The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> feed utilizes IP version 4 (IPv4) over UDP and Ethernet standards. The<br />

figure below illustrates the header information as defined in IETF RFC 791 (IPv4) and RFC 768<br />

(UDP) transmission protocol standards.<br />

Bits 0-7 8-15 16-23 24-31<br />

0<br />

32<br />

Source Address<br />

Destination Address<br />

64 Zeros Protocol<br />

Source Port<br />

Length<br />

96<br />

128<br />

160<br />

Data<br />

Figure 1 - UDP Header<br />

UDP Length<br />

Destination Port<br />

Checksum<br />

One or more encoded FIX.5.0 messages may be included in a single UDP packet.<br />

4.2 Failover<br />

The <strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> feed has been architected for fault tolerance by providing two redundant<br />

streams of data disseminated from two diversely located data centers. There is one feed from<br />

each site: ‘A’ feed from the A site/server and ‘B’ feed from the B site/server.<br />

When there has been a failure in the service at the <strong>ISE</strong> the ‘RefreshIndicator’ is set to ‘1’ which<br />

indicates that the subscriber should discard the contents in the order book and <strong>com</strong>pletely<br />

replace it with the contents of this Snapshot message. The ‘RefreshIndicator’ also allows the<br />

subscriber to only process Snapshots that are set to ‘1’ once the market is open.<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 25


4.3 Production IP Groups<br />

The table below identifies the primary and secondary multicast address and port information for<br />

the production <strong>com</strong>munication services.<br />

Primary (Group A) Secondary (Group B)<br />

Line Address Port Address Port<br />

1 233.104.73.97 53097 233.104.73.33 53033<br />

2 233.104.73.98 53098 233.104.73.34 53034<br />

Table 6: Production Multicast Lines<br />

4.4 Testing IP Groups<br />

A third sub-set of addresses and ports will be used to provide test data both during and after<br />

market hours but not on weekends. The following symbols are available on each IP address.<br />

Test Group and Symbols<br />

Address Port Symbols included<br />

1 233.104.73.161 53161 YHOO, IBM, QQQQ, INTC, SPY, MSFT, ALL,<br />

Table 7: Test Multicast Lines<br />

<strong>ISE</strong> <strong>Spread</strong> <strong>Book</strong> <strong>Feed</strong> 26

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!