This example shows how a book is built and updated. The book generally consists of a set of bid prices and ask prices, in which bids are descending and asks are ascending. The quantity and order count is provided at each price level.
The following table illustrates an initial market book:
Bid |
Ask | ||
Quantity |
Price |
Price |
Quantity |
100 |
9427.50 |
9428.00 |
40 |
500 |
9427.00 |
9428.50 |
600 |
750 |
9426.50 |
9429.00 |
850 |
400 |
9426.00 |
9429.50 |
350 |
300 |
9425.50 |
9430.00 |
150 |
Quantity on Buy Side Modified
The quantity of an order can be modified. The book will show an update to the size displayed:
Buy 90 @ 9427.50
Book Update Instruction
Book Update - Data Block
Tag Number |
Tag Name |
Value |
Description |
279 |
MDUpdateAction |
1 |
1=change. Type Market Data update action. |
269 |
MDEntryType |
0 |
0=bid. Type of Market Data entry. |
83 |
RptSeq |
|
Sequence number per Instrument update. |
1023 |
MDPriceLevel |
1 |
Price level 1. Position in the book. |
273 |
MDEntryTime |
|
Time of Market Data Entry. |
271 |
MDEntrySize |
90 |
Quantity or volume represented by the Market Data Entry. |
270 |
MDEntryPx |
9427.50 |
Price of the Market Data Entry. |
48 |
SecurityID |
|
Unique instrument ID as qualified by the exchange per tag 22-SecurityIDSource. |
Updated Book
Bid |
Ask | ||
Quantity |
Price |
Price |
Quantity |
90 |
9427.50 |
9428.00 |
40 |
500 |
9427.00 |
9428.50 |
600 |
750 |
9426.50 |
9429.00 |
850 |
400 |
9426.00 |
9429.50 |
350 |
300 |
9425.50 |
9430.00 |
150 |
Entire Order Canceled and New Order Entered
An entire order can be canceled, which removes the top of book, and a new order data block will be sent to fill the open price. The book will show the removal of price level 1, followed by an addition to price level 5. A delete data block will be sent for trades.
Note: Client systems should shift prices below the data block up to the price level vacated by the deleted price level. If all levels in the book are full, an add data block will be sent to fill in the last price level.
Cancel 90 @ 9427.50
Book Update Instruction
Book Update - Data Block 1
Tag Number |
Tag Name |
Value |
Description |
279 |
MDUpdateAction |
2 |
2=delete. Type Market Data update action. |
269 |
MDEntryType |
0 |
0=bid. Type of Market Data entry. |
83 |
RptSeq |
|
Sequence number per Instrument update. |
1023 |
MDPriceLevel |
1 |
Price level 1. Position in the book. |
273 |
MDEntryTime |
|
Time of Market Data Entry. |
271 |
MDEntrySize |
0 |
Quantity or volume represented by the Market Data Entry. |
270 |
MDEntryPx |
0 |
Price of the Market Data Entry. |
48 |
SecurityID |
|
Unique instrument ID as qualified by the exchange per tag 22-SecurityIDSource. |
Add 400@ 9425.00
Book Update Instruction
Book Update – Data Block 2
Tag Number |
Tag Name |
Value |
Description |
279 |
MDUpdateAction |
0 |
0=add. Type Market Data update action. |
269 |
MDEntryType |
0 |
0=bid. Type of Market Data entry. |
83 |
RptSeq |
|
Sequence number per Instrument update. |
1023 |
MDPriceLevel |
5 |
Price level 5. Position in the book. |
273 |
MDEntryTime |
|
Time of Market Data Entry. |
271 |
MDEntrySize |
400 |
Quantity or volume represented by the Market Data Entry. |
270 |
MDEntryPx |
9425.00 |
Price of the Market Data Entry. |
48 |
SecurityID |
|
Unique instrument ID as qualified by the exchange. |
Updated Book
Bid |
Ask | ||
Quantity |
Price |
Price |
Quantity |
500 |
9427.00 |
9428.00 |
40 |
750 |
9426.50 |
9428.50 |
600 |
400 |
9426.00 |
9429.00 |
850 |
300 |
9425.50 |
9429.50 |
350 |
400 |
9425.00 |
9430.00 |
150 |
New Order Entered at Same Price
A new order can be entered to a book at the same price level. The book will show an update:
New Order 3 @ 9427.00
Book Update Instruction
Book Update - Data Block
Tag Number |
Tag Name |
Value |
Description |
279 |
MDUpdateAction |
1 |
1=change. Type Market Data update action. |
269 |
MDEntryType |
0 |
0=bid. Type of Market Data entry. |
83 |
RptSeq |
|
Sequence number per Instrument update. |
1023 |
MDPriceLevel |
1 |
Price level 1. Position in the book. |
273 |
MDEntryTime |
|
Time of Market Data Entry. |
271 |
MDEntrySize |
503 |
Quantity or volume represented by the Market Data Entry. |
270 |
MDEntryPx |
9427.00 |
Price of the Market Data Entry. |
48 |
SecurityID |
|
Unique instrument ID as qualified by the exchange. |
Updated Book
Bid |
Ask | ||
Quantity |
Price |
Price |
Quantity |
503 |
9427.00 |
9428.00 |
40 |
750 |
9426.50 |
9428.50 |
600 |
400 |
9426.00 |
9429.00 |
850 |
300 |
9425.50 |
9429.50 |
350 |
400 |
9425.00 |
9430.00 |
150 |
New Best Price Entered
A new order can be entered to an existing book as a new best price. The data block indicates that a new order should be inserted at price level 1 (new best price). As a result, all orders on the book should be shifted down accordingly.
New Order 200 @ 9427.50
Book Update Instruction
Book Update - Data Block
Tag Number |
Tag Name |
Value |
Description |
279 |
MDUpdateAction |
0 |
0=new. Type Market Data update action. |
269 |
MDEntryType |
0 |
0=bid. Type of Market Data entry. |
83 |
RptSeq |
|
Sequence number per Instrument update. |
1023 |
MDPriceLevel |
1 |
Price level 1. Position in the book. |
273 |
MDEntryTime |
|
Time of Market Data Entry. |
271 |
MDEntrySize |
200 |
Quantity or volume represented by the Market Data Entry. |
270 |
MDEntryPx |
9427.50 |
Price of the Market Data Entry. |
48 |
SecurityID |
|
Unique instrument ID as qualified by the exchange per tag 22-SecurityIDSource. |
Updated Book
Bid |
Ask | ||
Quantity |
Price |
Price |
Quantity |
200 |
9427.50 |
9428.00 |
40 |
503 |
9427.00 |
9428.50 |
600 |
750 |
9426.50 |
9429.00 |
850 |
400 |
9426.00 |
9429.50 |
350 |
300 |
9425.50 |
9430.00 |
150 |