Matching Single-Sided Trades

This page describes the fields that will be used to match single-sided trades. These fields are the same across all asset classes. Any match criteria that is specific to an asset class is mentioned for the asset class.

Match Criteria for Outright Trades

The following fields are used for matching of single-sided outright trades.

Field

XPath

Description

Applicable to Security Type

Field

XPath

Description

Applicable to Security Type

Contract Attributes

Exchange

TrdCaptRpt/Instrmt/@Exch

The Exchange where the contract trades.

All

Security Type

TrdCaptRpt/Instrmt/@SecTyp

The Security Type

Supported Values:

FUT – Future

OPT – Option

FWD- Forward

All

Product ID

TrdCaptRpt/Instrmt/@ID

The Product ID assigned by Clearing

All

Maturity

TrdCaptRpt/Instrmt/@MMY

The Contract Period Code.

OTC FX Forwards – this field must contain the contract’s Fixing Date.

All

Put or Call

TrdCaptRpt/Instrmt/@PutCall

Put or Call for the Option

Supported Values:

0 – Put

1 – Call

OPT

Strike Price

TrdCaptRpt/Instrmt/@StrkPx

The Strike price of the Options Contract

OPT

Underlying Contract Attributes

Underlying Exchange

TrdCaptRpt/Undly/@Exch

The Exchange of the Underlying Product.

OPT

Underlying Security Type

TrdCaptRpt/Undly/@SecTyp

The Security Type of the Underlying.

Supported Values:

FUT – Future

FWD - Forward

MLEG – Spread/Combo

OPT

Underlying Product ID

TrdCaptRpt/Undly/@ID

The Product ID of the Underlying

OPT

Underlying Maturity

TrdCaptRpt/ Undly/@MMY

The contract period code of the underlying product.

OPT

Party Attributes

Trading Firm /Broker and corresponding trader ids

/TrdCaptyRpt/RptSide/Pty/ @R

/TrdCaptyRpt/RptSide/Pty/ @ID

Supported Values:

7 - Trading Firm

30 – Broker

36 – Trader ID

62 – Broker User ID

All

Opposite Trading Firm and corresponding trader IDs

/TrdCaptyRpt/RptSide/Pty/ @R

/TrdCaptyRpt/RptSide/Pty/ @ID

Supported Values:

17 – Opposite Trading Firm

37 – Opposite Trader ID

All

Other Trade Attributes

Buy Sell Code

/TrdCaptRpt/RptSide/@Side

Supported Values:

1 – Buy

2 – Sell

All

Trade Type

/TrdCaptRpt/RptSide/@TrdTyp

The Trade Type

All

Notional Amount/ Trade Qty

/TrdCaptRpt/@LastQty



All



/TrdCaptRpt/@LastPx

The Trade Price

All

Price Type

/TrdCaptRpt/@PxTyp



Supported Values:

1 – Percentage

2 - Unit



Original Trade Date

/TrdCaptRpt/@OrigTrdDt

The Original Trade Date. Typically specified if the trade date is less than the trade date.

All

Trade Sub Type

/TrdCaptRpt/@TrdSubTyp

Supported Values:

36 – Aged Deal

40 – Traded at settlement

All

Other Rules and Validation for Outright Matching

  • The Src attribute in the Instrument block is required on all trade submissions even though it is not a match criterion.

  • The Underlying (Undly) block must be specified for all Options contracts.

  • Party Role matching rules

  • Opposite Trading firm (Party Role 17) is always required. This is matched against the Trading firm or Broker Firm on the opposite trade.

  • An Opposite Trader ID (Party role 37) is required on single side trade submissions. This is matched against a Party Role 36 (specified for the Trading firm or Asset Manager Firm) or against Party Role 62 (specified for the Broker firm).

  • Quantity matching rules

  • The Quantity type (QtyTyp) is required even though it is not a match criterion.

  • Quantities can be specified in contracts or units as specified in the Quantity type by both sides. The quantities are converted to contract terms before matching.

  • An alternate Time Unit (TmUnit) is supported optionally for certain products. The quantity is standardized to the default time unit before the match.

  • OTC FX transactions can match only if the notional quantities are entered in the same currency terms (base or settlement).

  1. OTC FX Options prices on each side must be expressed in the same price method (PIPs price vs. Percentage price) in order to match.

  2. The negotiated price must be submitted. All the prices and amounts that were negotiated on must be specified by both sides for a match to occur. All other trades are matched on trade price.

If Original Trade Date (OrigTrdDt) is specified, the Trade Sub type (TrdSubTyp=36) must be specified. Original Trade Dates must be equal for two sides to match.

Match Criteria for Spread Trades

The following fields are used for matching of single-sided Spread trades.

Field

XPath

Description

Security Type

Field

XPath

Description

Security Type

Contract Attributes

Exchange

TrdCaptRpt/Instrmt/@Exch

The Exchange where the contract trades.

MLEG

Security Type

TrdCaptRpt/Instrmt/@SecTyp

The Security Type

Supported Values:

MLEG – Spread/Combo

MLEG

Leg Contract Attributes

Leg Exchange

TrdCaptRpt/TrdLeg/Leg/@Exch

The Exchange for the leg contract

MLEG

Leg Security Type

TrdCaptRpt/TrdLeg/Leg/ @SecTyp

The Security Type of the Underlying.

Supported Values:

FUT – Future

FWD- Forward

OPT – Option

MLEG

Product ID

TrdCaptRpt/TrdLeg/Leg/@ID

Leg Product Id

MLEG

Leg Maturity

TrdCaptRpt/Instrmt/TrdLeg /Leg/@MMY

The Contract Period Code.

OTC FX Forwards – this field must contain the contract’s Fixing Date.

MLEG

Leg Put or Call

TrdCaptRpt/Instrmt/TrdLeg /Leg/@PutCall

Put or Call for the Option

Supported Values:

0 – Put

1 – Call

MLEG (with Option leg)

Leg Strike Price

TrdCaptRpt/Instrmt/TrdLeg /Leg/@Strk

The Strike Price for the leg

MLEG (with Option leg)

Leg Buy Sell Code

TrdCaptRpt/Instrmt/TrdLeg /Leg/@Side

Supported Values:

1 – Buy

2 - Sell

MLEG

Leg Price Type

/TrdCaptRpt/TrdLeg/@PxTyp



If leg prices are specified, then the price type has to be specified for OTC FX Options

Supported Values:

1 = Percentage

2 = Per unit (standard convention)

MLEG (with OTC FX Option leg)

Leg Price

/TrdCaptRpt/TrdLeg/@LastPx

The Leg Price

MLEG

Leg Quantity

/TrdCaptRpt/TrdLeg/@LastQty

The trade Quantity associated with the leg

MLEG

Leg Underlying Contract Attributes

Underlying Exchange

TrdCaptRpt/TrdLeg/Undlys/Undly/@Exch

The Exchange of the Underlying Product

MLEG (with Option leg)

Leg Underlying Security Type

TrdCaptRpt/TrdLeg/Undlys/ Undly/@SecTyp

The Security Type of the leg Underlying.

Supported Values:

FUT – Future

FWD- Forward

MLEG (with Option leg)

Leg Underlying Product ID

TrdCaptRpt/ TrdLeg/Undlys/Undly/@ID

The Product ID of the leg Underlying

MLEG (with Option leg)

Leg Underlying Maturity

TrdCaptRpt/ TrdLeg/Undlys/Undly/@MMY

The contract period code of the leg underlying product.

MLEG (with Option leg)

Party Attributes

Trading Firm /Broker and corresponding trader ids

/TrdCaptyRpt/RptSide/Pty/ @R

/TrdCaptyRpt/RptSide/Pty/ @ID

Supported Values:

7 - Trading Firm

30 – Broker

36 – Trader ID

62 – Broker User Id

MLEG

Opposite Trading Firm and corresponding trader ids

/TrdCaptyRpt/RptSide/Pty/ @R

/TrdCaptyRpt/RptSide/Pty/ @ID

Supported Values:

17 – Opposite Trading Firm

37 – Opposite Trader ID

MLEG

Other Trade Attributes

Buy Sell Code

/TrdCaptRpt/RptSide/@Side

Supported Values:

1 – Buy

2 - Sell

MLEG

Trade Type

/TrdCaptRpt /@TrdTyp

The Trade Type

MLEG

Trade Price

/TrdCaptRpt/@LastPx

The Differential Price

MLEG

Original Trade Date

/TrdCaptRpt/@OrigTrdDt

The Original Trade Date. Typically specified if the trade date is less than the trade date.

MLEG

Trade Sub Type

/TrdCaptRpt/@TrdSubTyp

Supported Values:

36 – Aged Deal

40– Traded at settlement



Other Rules and Validation for Spread Matching

  • Party Role matching rules

  • Opposite Trading firm (Party Role 17) is always required. This is matched against the Trading firm or Broker Firm on the opposite trade.

  • An Opposite Trader ID (Party role 37) is required for single side trade submissions. This is matched against a Party Role 36 (specified for the Trading firm or Asset Manager Firm) or against Party Role 62 (specified for the Broker firm).

  • Quantity matching rules

  • Quantities must be specified at the leg level. Any quantity specified at the spread level is ignored.

  • The Quantity type (QtyTyp) is required even though it is not a match criterion.

  • Leg quantities can be specified in contracts or units as specified in the Quantity type by both sides. The quantities are converted to contract terms before matching.

  • An alternate Time Unit (TmUnit) is supported optionally for certain products. The quantity is standardized to the default time unit before the match.

  • OTC FX transactions can match only if the notional quantities are entered in the same currency terms (base or settlement).

  1. OTC FX Options prices on each side must be expressed in the same price method (PIPs price vs. Percentage price) in order to match.

  2. All trades are matched on trade price.

  3. If Original Trade Date (OrigTrdDt) is specified, the Trade Sub type (TrdSubTyp=36) must be specified. Original Trade Dates must be equal for two sides to match.

Price Matching Rules

  • Either the differential price or the leg prices must be submitted because it is used for matching. If both the leg prices and differential price are specified, the differential price is ignored and only the leg prices is used for matching purposes.

  • If a differential price is specified on the side (instead of leg prices), then both sides must specify the same differential price. Both price and sign must match (positive diffs can only match with positive diffs, negative diffs can only match with negative diffs).

4. If Original Trade date (OrigTrdDt) is specified on the trade, the Trade Sub type (TrdSubTyp 36 = Aged deal) must be specified.

5. Rules for specifying sides on spread trades for match

Both the submitters can specify the same buy sell code or the opposite buy sell code at the spread level.

If the buy sell code specified at the spread level are specified differently by each submitter

  • The buy sell code for the legs must match e.g. both the submitters must submit the same buy sell code for the leg contract.

  • The differential price if specified must be equal.



Note: The submitters can either provide leg prices or Diff Price. This is for illustration purposes only.

Submitter

Spread Buy Sell Code

Leg 1

Leg 2

Diff Px

Submitter

Spread Buy Sell Code

Leg 1

Leg 2

Diff Px

Buyer

Buy

Buy CL-K11

Sell CL- M11

2.00

Seller

Sell

Buy CL-K11

Sell CL- M11

2.00

If each submitter submits the same buy sell code

  • The buy sell code specified at the leg level by each submitter must be on the opposite side or reversed.

  • The differential price if specified must be equal.






How was your Client Systems Wiki Experience? Submit Feedback

Copyright © 2024 CME Group Inc. All rights reserved.