Versions Compared

Key

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

...

All users of CME Group Self Match Prevention agree that they have read and understand the functionality and limitations expressed in the CME Group Self Match Prevention FAQ, Client Systems Wiki, as well as Rule 534-Wash Trades Prohibited.

Noteinfo
  • SMP functionality is available on both CGW and MSGW sessions.
  • Customer messages with unregistered SMP IDs, or SMP IDs that are not registered to the submitting Executing Firm, will be rejected. Customers receiving rejects should contact their Clearing Firm Admin and/or stop submitting orders with SMP ID(s) until the issue is resolved.
CME Direct SMP
Info
title

CME Direct supports SMP and a Self-Match Protection feature at the firm and user level that only affects orders entered via CME Direct.

Contents

Table of Contents

Customer Registration

...

Self-Match Prevention functionality is applicable on the following Partner Exchange markets hosted on the CME Globex platform:

  • Dubai Gulf Mercantile Exchange (DMEGME)
  • Minneapolis Grain Exchange (MGEX)
  • Bursa Malaysia Derivatives (BMD)

...

  • Tag 8000 on the aggressing order always determines which order(s) is cancelled.
  • When tag 8000 is not present on the aggressing order, the resting order(s) is cancelled.
  • Tag 8000 on the resting order(s) do not determine which order(s) is cancelled.
Noteinfo

For Mass Quotes, Self-Match Prevention instruction indicating to cancel the resting or incoming (aggressing) side is not available. If SMP functionality is triggered, only resting quotes are cancelled.  

Tag 8000-SelfMatchPreventionInstruction can be submitted on the following messages and will acknowledged back on the corresponding Execution Reports:

  • New Order Single (tag 35-MsgType=D)
  • Order Cancel-Replace Request (tag 35-MsgType=G)

...

The following table illustrates how Self-Match Prevention functions based on the values for tag 7928-SelfMatchPreventionID and tag 8000-SelfMatchPreventionInstruction submitted in the originating message:

Originating Message

Execution Report

SMP ID tag 7928 is present

SMP Instruction tag 8000 valuetag 7928 is returnedtag 8000 valueResult

Yes

N (New)

Yes

N (New)

Self-Match prevented

Aggressing order cancelled

Yes

O (Old)

Yes

O (Old)

Self-Match prevented

Resting order cancelled

Yes

Not sent

Yes

Not returned

Self-Match prevented

Resting order cancelled

Yes

Invalid value

N/A

N/A

Session Level Reject sent for orders and cancel/replace

Business Level Reject sent for Mass Quotes

Yes – unregistered or not registered to Executing Firm ID

Not sent

N/A

N/A

Session Level Reject sent for orders and cancel/replace

Business Level Reject sent for Mass Quotes

No

N

No

Not returned

Self-Match occurs

No

O

No

Not returned

Self-Match occurs

No

Not sent

No

Not returned

Self-Match occurs

No

Invalid value

N/A

N/A

Session Level Reject sent for orders and cancel/replace

Business Level Reject sent for Mass Quotes

...

In the Execution Report - Order Cancel (tag 35-MsgType=8, tag 39-OrdStatus=4) message, tag 378-ExecRestatementReason indicates whether the resting or aggressing order was cancelled due to Self-Match Prevention.

Tag

NameReqFormatValuesDescription
378ExecRestatementReasonNInt (3)

103=Cancel Oldest (Resting) due to Self-Match Prevention

107=Cancel Newest (Aggressing) due to Self-Match Prevention

Identifies origin of the order cancel.

...

This scenario illustrates a FIFO market without a Self-Match event. A 1000-lot buy order (SMP ID:1234567 and FirmID:400) is entered at 1302, with a 'Cancel Resting' instruction.

Aggressing Buy Order

Remaining Quantity
Resting Sell OrdersAction

OrderSMP ID & Firm ID

1000

10-lot @ 1301

2345678 & 100

Executed 10-lot @1301

990

20-lot @ 1301

3456789 & 200

Executed 20-lot @1301

970

30-lot @ 1301

4567890 & 300

Executed 30-lot @1301

940

500-lot @ 1301

5678901 & 500

Executed 500-lot @1301

440

450-lot @ 1302

6789012 & 600

Executed 440-lot @1302
Aggressing buy order is fully filled. 

 

20-lot @ 1302

1234567 & 400 (Cancel Resting instruction)

 

 

30-lot @ 1302

7890123 & 700


FIFO Market with Cancel Resting

This scenario illustrates a Self-Match event in a FIFO market. A 1000-lot buy order (SMP ID:1234567 and FirmID:400) is entered at 1302, with a Cancel Resting instruction.

Aggressing Buy Order

Remaining Quantity
Resting Sell OrdersAction

OrderSMP ID & Firm ID

1000

10-lot @ 1301

2345678 & 100

Executed 10-lot @1301

990

20-lot @ 1301

3456789 & 200

Executed 20-lot @1301

970

30-lot @ 1301

4567890 & 300

Executed 30-lot @1301

940

500-lot @ 1301

5678901 & 500

Executed 500-lot @1301

440

10-lot @ 1302

6789012 & 600

Executed 10-lot @ 1302

430

20-lot @ 1302

1234567 & 400 (Cancel Aggressing instruction)

The aggressing order's instructions take priority and the resting 20-lot order is cancelled.

430

30-lot @ 1302

7890123 & 700

Executed 30-lot @ 1302

400



The aggressing buy order's remaining 400-lot @ 1302 rests on the order book.

Pro-Rata Market with Cancel Aggressing

This scenario illustrates a Self-Match event in a pro-rata market. A 1000-lot buy order (SMP ID:1234567 and FirmID:400) is entered at 1302, with a 'Cancel Aggressing' instruction.

Aggressing Buy Order

Remaining Quantity
Resting Sell OrdersAction

OrderSMP ID & Firm ID

1000

500-lot @ 1301

2345678 & 100

A potential self-match at price level 1302 is recognized and the Self-Match event is triggered even though the aggressing order would not have reached the resting self-match order.

The aggressing order's instructions take priority and the entire aggressing order is cancelled.

0

300-lot @ 1301

3456789 & 200


0

200-lot @ 1301

4567890 & 300


0

500-lot @ 1301

5678901 & 500



20-lot @ 1302

1234567 & 400, Cancel Resting instruction

Resting order at same price with same SMP ID triggers the cancel of the aggressing order per the aggressing Instruction

 

30-lot @ 1302

7890123 & 700

 

...

This scenario illustrates a Self-Match event in a pro-rata market. A 1000-lot buy order (SMP ID:1234567 and FirmID:400) is entered at 1302, with a 'Cancel Resting' instruction.

Aggressing Buy Order

Remaining Quantity
Resting Sell OrdersAction

OrderSMP ID & Firm ID

1000

500-lot @ 1301

2345678 & 100

A potential self-match at price level 1302 is recognized and the Self-Match event is triggered even though the aggressing order would not have reached the resting self-match order.

The aggressing order's instructions take priority and the resting order is cancelled even though it would not have matched.

The aggressing order is then matched according to standard priority rules.

Matched 500 @ 1301

500

300-lot @ 1301

3456789 & 200

Matched 300 @ 1301

200

200-lot @ 1301

4567890 & 300

Matched 200 @ 1301

0

500-lot @ 1301

5678901 & 500


0

20-lot @ 1301

1234567 & 400, Cancel Resting instruction

Resting order at same price with same SMP ID triggers the cancel of the resting order per the aggressing Instruction

...