Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents
maxLevel4

Summary of iLink Execution Report - Fill Messaging Behavior

ScenarioBehavior
Aggressing OrderOne fill sent per trade price and per liquidity source regardless of how many counter-parties traded with
Resting Order (FIFO Market)For all order types other than Display Quantity, no change from today.
Resting Order (Non-FIFO Market)One fill sent with trade quantity aggregated from all match algorithm steps
Display Quantity (DQ) OrderOne fill sent with trade quantity aggregated from all refreshes

Opening Trade

All bids and asks receive one fill for each order in alternating sequence (i.e., BUY/SELL, BUY/SELL, etc.)

View a video of iLink Execution Report - Fill Messaging Behavior.

Fills for Aggressing Orders

When an aggressing order matches with multiple resting orders at the same price level, Execution Report - Fill messages are sent to the aggressor:

...

Execution Report - Fill messages are sent to resting order clients per trade per price level with the exceptions noted below in non-FIFO markets and for Display Quantity orders.

Liquidity Source

A liquidity source is the order or orders that provide the matching quantity to the aggressing order.

Panel
bgColor#FFFFE0
  • Multiple customer orders at the same price level are considered a single liquidity source.
  • An implied order may have multiple liquidity sources.

Example - Multiple Liquidity Sources

In this example, the total GEZ9 bid size is 1500, 1000 of which is customer order resting quantity. The other 500 lots are implied from two other liqudity sources.

...

Gliffy
nameconsolidated-fills-liquidity-source-2
pagePin7

Example - Aggressor Matches at Two Price Levels

This examples depicts a basic matching scenario showing Execution Report - Fill messages sent for aggressing and resting orders.

...

Info

For stop orders, each triggered stop order is treated as a new aggressor, and the order fills will be sent based on trade price and liquidity source.

Example: Aggressor Matches with Implied Orders

Given the markets below, with an aggressing Bid for 180 @9805 in GEH9:

...

Info

An off-tick implied is considered a different liquidity source from an on-tick implied order that is from the same spread + outright combination. For example:

SIH9 and SIM9 with a tick of 5 and SIH9-SIM9 spread with a tick of 1

Buy SIM9@10 + Buy spread@2 generate an implied bid in SIH9@12 which is rounded down to 10
Buy SIM9@10 + Buy spread@3 generate an implied bid in SIH9@13 which is rounded down to 10

Although the same spread and leg combination is used to generate multiple implieds at the same price, these are not consolidated and considered as a different liquidity source.

Example: Aggressor Matches with Implied Orders in Pro Rata Market

Given the markets below, with an aggressing Ask for 60 @ 9802 in ZCU1:

...

TraderTrade qty & priceDescriptionLiquidity Source

Trader X

24@9802 (ZCU1)

Aggressor

Implied1 Source

Trader B

16@9805 (ZCN1)

Within leg1 orders, 24 is allocated on a pro rata basis and the sequence is based on higher pro rata qty


Trader A

8@9805 (ZCN1)



Trader C

24@3 (ZCN1-ZCU1)

Spread



24@9805 (ZCN1)

Leg1 of spread



24@9802 (ZCU1)

Leg2 of spread


Trader X

20@9802 (ZCU1)

Aggressor

Customer Source

Trader H

12@9802 (ZCU1)

Within leg2 Customer orders, 20 is allocated on a pro rata basis and the sequence is based on higher pro rata qty


Trader G

8@9802 (ZCU1)



Trader X

16@9802 (ZCU1)

Aggressor

Implied2 Source

Trader D

16@9800 (ZCZ1)

Leg3


Trader F

12@2 (ZCU1-ZCZ1)

Spread



12@9802 (ZCU1)

Leg of the spread



12@9800 (ZCZ1)

Leg of the spread


Trader E

4@2 (ZCU1-ZCZ1)

Spread



4@9802 (ZCU1)

Leg of the spread



4@9800 (ZCZ1)

Leg of the spread


Aggressor Matches with Implied Orders in Pro Rata Market - Market Data Trade Summary Message

This diagram illustrates the market data Trade Summary generated from the match shown in the example above.

...

Info

The MDP 3.0 - Trade Summary message will always report trade information from an aggressor order first. See Aggressor Matches with Implied Orders in Pro Rata Market - Trade Summary Message for an example.

Fills for Resting Orders

This section describes the behavior of Execution Report - Fill messaging for resting orders.

FIFO vs Non-FIFO

Execution Report - Fill messages behave as follows for FIFO vs. Non-FIFO maekets.

...

Info
Resting order fills in non-FIFO markets are aggregated per aggressor order, trade price, and liquidity source.

Example - TOP/Pro Rata/FIFO

In the following example, these steps are used to match trades:

...

  • Fill Report 5 @ 9710 (Pro-rata)

Display Quantity Orders

With this release, in any matching scenario involving Display Quantity orders, the Execution Report - Fill messages for the Display Quantity order will be aggregated and sent after the non-display quantity order fills resulting from the match.

Info

Display Quantity resting order fills are sent per aggressor order, trade price and liquidity source.

Example: Hidden Quantity Filled

In this example an incoming aggressor order matches with 2 resting orders, including a Display Quantity order and a regular order.

...

  • 1 Fill Report  90 @ 1.0 (Instead of 9 Fill Reports 10 @ 1.0)

    • Display Quantity Order gets the fill report after regular order fills regardless of their display quantity refresh status

Example: Aggressor Quantity Equals Price Level Displayed Quantity

In this example an incoming aggressor order matches with multiple resting orders and the aggressor quantity equals the total displayed quantity.

...

Trader A - 7 @ 1.0 (Aggressor)
Trader C - 1 @ 1.0
Trader D - 5 @ 1.0
Trader B - 1 @ 1.0

Example: Aggressor Total Quantity Equals Price Level Total Quantity

In this example an incoming aggressor order matches with multiple resting orders and the aggressor quantity equals the price level total book quantity, including hidden quantity.

...

Trader A - 8 @ 1.0 (Aggressor)
Trader C - 1 @ 1.0
Trader D - 5 @ 1.0
Trader B - 2 @ 1.0

Example: Display Quantity Refresh

In this example an incoming aggressor order matches with 2 Display Quantity resting orders.

...

Trader B - 4 @ 1.0

Trader E - 6 @ 1.0

Opening Trade

For the opening trade, BUY and SELL Execution Report - Fill messages are sent for each order in alternating sequence (i.e., BUY/SELL, BUY/SELL, etc.).

...

  • Bid1 Fill 8@100
  • Ask1 Fill 5@100
  • Bid2 Fill 15@100
  • Ask2 Fill 6@100
  • Ask3 Fill 12@100

RFC Order

For an aggressor matching with an RFC order, aggressor fills are not sent per trade price per liquidity source, but per discrete order quantity filled.

iLink Execution Report - Fill Message Publishing Sequence

This table gives the iLink Execution Report - Fill message publishing sequence for the matching scenarios that may occur on CME Globex.

...