CME Globex Matching Algorithm Steps

CME Globex Matching Algorithm Steps

CME Globex uses several steps to allocate fills to resting orders when an aggressing order arrives at the order book. These allocation steps are grouped into an order of operations called a Matching Algorithm.

The trading engine assigns the algorithm applied to the given product. Depending upon matching conditions, a step can be omitted from an algorithm, or included multiple times within the sequence. The rules for each step are consistent across all algorithms.

Algorithm steps are sequenced such that all quantity is allocated by the end of the algorithm process. If there is more quantity aggressing than available (resting), CME Globex uses FIFO as an exception to the algorithm in place.

Contents

Algorithm Matrix

This matrix delineates the individual steps followed by CME Globex during allocation.

Algorithm

Operational Name

Step

1

2

3

4

5

6

7

A

Allocation Algorithm

(Pro Rata w/ Top)

TOP

Pro Rata

FIFO

 

 

 

 

C

Currency Roll

(Pro Rata w/o Top)

Pro Rata

FIFO

 

 

 

 

 

F

FIFO

FIFO

 

 

 

 

 

 

K

Configurable (Split FIFO/Pro Rata with LMM)

TOP

LMM

Split

FIFO*

Pro Rata*

Leveling*

FIFO

O

Pro Rata w/ Top and parameters

TOP

Pro Rata

FIFO

 

 

 

 

Q

Pro Rata w/ Top, Parameters, and LMM

TOP

LMM

Pro Rata

FIFO

 

 

 

S

LMM w/ Top

TOP

LMM

FIFO

 

 

 

 

T

LMM w/o Top

LMM

FIFO

 

 

 

 

 

*FIFO and Pro Rata percentages are determined by CMEG and calculated during Split. Leveling can be optionally on or off for K.

FIFO

FIFO stands for First In, First Out. During FIFO, resting orders are matched in timestamp order only. All orders are matched in the timestamp order in which they were received (i.e. earliest timestamp is first, followed by next earliest, etc.).

Order Modification Loss of Timestamp Priority with FIFO

A modified order loses its timestamp priority when any of these values are modified:

  1. Increase of working quantity of the order.

  2. Change of price.

  3. Change of account number.

Good Till Cancel Orders (GTC) with FIFO

A GTC order will retain its timestamp over subsequent trading sessions from initial entry (assuming no modifications that would cause loss of previous timestamp).

Display Quantity Orders with FIFO

A Display Quantity order is filled according to the working displayed quantity for its current timestamp. After a match event is complete, a Display Quantity order is refreshed with the lesser quantity of either:

1. The Display Quantity of the Order. 

2. The remainder of the order if equal to or less than the Display Quantity. 

3. The remainder of the Display Quantity in the event of a partial fill on that Display Quantity.

In addition, the Display Quantity order’s priority is refreshed to be the lowest of the remaining orders at the price level (order is placed at the end of the queue).

FIFO Example 1

Given:

  1. Orders in the below table are at the same price on the buy side.

  2. Earliest timestamp is Order 1, then order 2, etc.

  3. The sell aggressor is at the same price as the buy orders.

  4. The sell aggressor is a 50 lot.

The aggressing quantity is allocated to orders 1 + 2 (filling them). Order 3 receives a partial fill and will have 21 lots remaining after the match. The other orders receive no fill quantity.

Order

Working Quantity Before step

Remaining quantity after step

Order

Working Quantity Before step

Remaining quantity after step

1

5

0

2

9

0

3

57

21

4

4

4

5

28

28

6

300

300

FIFO Example 2

Given:

  1. Orders in the below table are at the same price on the buy side.

  2. Earliest timestamp is Order 1, then order 2, etc.

  3. The sell aggressor is at the same price as the buy orders.

  4. The sell aggressor is a 50 lot.

  5. Order 2 is a Display Quantity order with 90 additional unfilled lots displaying 10 at a time.

The aggressing quantity is allocated to orders 1 + 2 (filling them). Order 3 receives a partial fill and will have 21 lots remaining after the match. The other orders receive no fill quantity. After the match, order 2 would be refreshed to its display quantity of 10 at the lowest priority.

Order

Working Quantity Before step

Remaining quantity after step

Order # priority after the match

Quantity for each order after the match

Order

Working Quantity Before step

Remaining quantity after step

Order # priority after the match

Quantity for each order after the match

1

5

0

n/a

n/a

2

10

0

n/a

n/a (90 hidden quantity)

3

57

22

1

22

4

4

4

2

4

5

28

28

3

28

6

300

300

4

300

2

10

10

5

10 (80 hidden quantity)

Pro Rata

This step fills by proportion of the working order quantity compared to the entire quantity present at the price level at the time of a match. Therefore, larger orders will receive a larger percentage of a fill in this step.

Pro Rata is never the last step of an algorithm due to the required rounding; the Pro Rata step will always be followed by either a FIFO step or Leveling and FIFO steps.

Pro Rata Minimum (PR Min)

The Pro Rata step includes a parameter called Pro Rata Minimum. This is configured by CME Group as the minimum allocation eligible to participate in the Pro Rata step. Any orders that would execute less quantity than the PR Min will not get any fills in the Pro Rata step.

Allocation of lots to resting orders is done according to the following formula:

{Displayed working quantity of an order} / {Total working lots present} * {Match quantity} ≥ PR Min = allocation

Fractional lots received are rounded down prior to allocation.

GT Order with Pro Rata

GT Orders are treated the same as every other order at the price level during this step.

Display Quantity Orders with Pro Rata

Display Quantity orders only participate in Pro Rata based on their working displayed quantity.

Pro Rata Example

Given:

  1. Orders in the below table are at the same price on the buy side.

  2. Earliest timestamp is Order 1, then order 2, etc.

  3. The sell aggressor is at the same price as the buy orders.

  4. The sell aggressor is a 50 lot.

  5. The Pro Rata Minimum for this contract is 2.

The aggressing quantity is allocated based on the size of the resting orders. The largest order receives the largest allocation, followed by the second largest order, etc.

If any of these orders were Display Quantity with more quantity hidden, the calculation would not change.

Order

Working Quantity Before step

Math formula used to distribute lots

Results

Rounded down

Allocated lots

Remaining quantity after step

Order

Working Quantity Before step

Math formula used to distribute lots

Results

Rounded down

Allocated lots

Remaining quantity after step

1

5

5/403*50

0.62

0

0

5

2

9

9/403*50

1.11

1

0

9

3

57

57/403*50

7.07

7

7

50

4

4

4/403*50

0.49

0

0

4

5

28

28/403*50

3.47

3

3

25

6

300

300/403*50

37.22

37

37

263

LMM

The Lead Market Maker (LMM) step allocates a portion of a match event quantity to designated participants. Lead Market Makers have an agreement with CME to provide liquidity in certain products. In return for this liquidity, working orders or mass quotes in these products are entitled to a percentage of the match quantity during the LMM step.

Rules pertaining to the LMM percentage are:

  1. LMMs do not exist in futures products at CME Group.

  2. LMM percentages are proprietary between the designated party and CME Group.

  3. Products can have multiple LMMs assigned.

  4. The total LMM percentage assigned a product will not exceed a certain value. This value is proprietary to CME Group, differs by product, and is less than 50%.

  5. LMMs, by participating, are guaranteed their percentage of the match quantity rounded down to no less than one lot.

  6. If there is not enough quantity available to satisfy rule #5 above for all participating LMMs, the tiebreak is based on entry times of the participating orders.  The earlier timestamp(s) will receive the fill.

GTC Orders with LMM

GTC orders placed by an LMM are treated the same as any other LMM orders at their price level, according to the rules above.

Display Quantity Orders with LMM

Display Quantity Orders placed by LMMs are only entitled to their fill percentage on their displayed working quantity at the time of match.

LMM Example1

Given:

  1. Orders in the below table are at the same price on the buy side.

  2. Earliest timestamp is Order 1, then order 2, etc.

  3. The sell aggressor is at the same price as the buy orders.

  4. The sell aggressor is a 50 lot.

  5. Order 2 is placed by LMM A whose percentage is 5%.

  6. Order 3 is placed by LMM B whose percentage is 6%.

The aggressing quantity is multiplied by the LMM percentages to determine their allocation in this step. The value is rounded down to no less than one lot.

Order

Working Quantity Before step

Math formula used to distribute lots

Results

Rounded down

Allocated lots

Remaining quantity after step

Order

Working Quantity Before step

Math formula used to distribute lots

Results

Rounded down

Allocated lots

Remaining quantity after step

1

5

 

 

 

 

5

2A

9

50*.05

2.5

2

2

7

3B

57

50*.06

3

3

3

54

4

4

 

 

 

 

4

5

28

 

 

 

 

28

6

300

 

 

 

 

300

LMM Example 2

Given:

  1. Orders in the below table are at the same price on the buy side.

  2. Earliest timestamp is Order 1, then order 2, etc.

  3. The sell aggressor is at the same price as the buy orders.

  4. The sell aggressor is a 1 lot.

  5. Order 2 is placed by LMM A whose percentage is 5%.

  6. Order 3 is placed by LMM B whose percentage is 6%.

The aggressing quantity is multiplied by the LMM percentages to determine their allocation in this step. The value is rounded down to no less than one lot. In this example, after rounding we have two eligible LMMs but only one lot to distribute. Since there is a tie, the allocated lot goes to the earlier timestamped order.

Order

Working Quantity Before step

Math formula used to distribute lots

Results

Rounded down

Allocated lots

Remaining quantity after step

Order

Working Quantity Before step

Math formula used to distribute lots

Results

Rounded down

Allocated lots

Remaining quantity after step

1

5

 

 




How was your Client Systems Wiki Experience? Submit Feedback

Copyright © 2024 CME Group Inc. All rights reserved.