/
CME STP Impacts for CME FX Link

CME STP Impacts for CME FX Link

Effective Sunday, April 13 (trade date April 14), CME Group will launch CME FX Spot+, a new tradable FX spot instrument, leveraging CME FX Link liquidity to bring together OTC spot FX and FX futures.

This topic provides CME STP Impacts for CME FX Link trades with the introduction of FX Spot+.

Contents

Revision History

Date

Description

Date

Description

Tuesday, March 25, 2025

added 461-CFICode to Modification to Fields for CME FX Link Spot Leg

Wednesday, March 5, 2025

526-SecondaryClOrdID, /TrdCaptRpt/RptSide/@ClOrderID2 added to New fields section.

updated Party role changes to add SubType=”5” for Party Role=”90”.

updated Party role changes to add SubType=”16” for Party Roles=”90”.

Wednesday, January 29, 2025

Testing and Certification updated - Certification is not required. Testing is strongly encouraged for CME FX Link client systems.

Wednesday, January 29, 2025

Updated introduction with Production date of Sunday, April 13, 2025 (trade date April 14).

Tuesday, December 3, 2024

Updated CME FX Link Spot Leg fields with FIX tag / FIXML examples:

  • 60-TransactionTime (/TrdCaptRpt/@TxnTm)

  • 1012-SideTrdRegTimestamp (/TrdCaptRpt/RptSide/TrdRegTS/@TS)

  • 779-LastUpdateTime (/TrdCaptRpt/@LastUpdateTm) 

Wednesday, November 6, 2024

Initial publication of this topic.

Key Events and Dates

Date

Milestone

Date

Milestone

November 11, 2024

 

Available in New Release

For the complete release schedule, see CME FX Spot Plus Launch Schedule in New Release.

TBA

Available in AutoCert+

Sunday, April 13

Production launch

Testing and Certification

Certification is not required. Testing is strongly encouraged for CME FX Link client systems.

Client System Impacts

This section describes client impacts for FX Link and FX Spot+.

Field Impacts for CME FX Link Trades

This section describes the CME STP FIX/FIXML field impacts for clients who subscribe to Trade Capture Report (FIX: tag 35-MsgType=AD, FIXML: /TrdCaptRpt) for CME FX Link Trades. To receive CME FX Link Leg level trades Client systems should use Leg level subscription (FIX: tag 442-MultiLegReportingType=2, FIXML:/TrdCaptRptReq/@MLegRptTyp=2) in Trade Capture Report Request (FIX: tag 35-MsgType=AQ, FIXML: /TrdCaptRptReq)

Spread level trade subscriptions (FIX: tag 442-MultiLegReportingType=3, FIXML:/TrdCaptRptReq/@MLegRptTyp=3) are not supported.

A CME FX Link spread trade results in the following leg trades:

  • CME FX Futures leg trade with Exchange = "CME" (FIX: tag 207-SecurityExchange, FIXML:/TrdCaptRpt/Instrmt/@Exch) and SecurityType = "FUT" (FIX: tag 167-SecurityType, FIXML:/TrdCaptRpt/Instrmt/@SecTyp)

  • CME FX Spot+ leg trade with Exchange = "FXS" (FIX: tag 207-SecurityExchange, FIXML:/TrdCaptRpt/Instrmt/@Exch) and SecurityType = "FXSPOT" (FIX: tag 167-SecurityType, FIXML:/TrdCaptRpt/Instrmt/@SecTyp)

There are no changes to CME FX Futures leg trade in CME STP FIX/FIXML.

In order to keep the FX STP API consistent the FX Spot Leg Trade Capture Report of the FX Link spread will be updated by adding, deprecating and modifying fields.

New Fields for CME FX Link Spot Leg

The following fields will be added Trade Capture reports or existing fields populated with new values.

FIX Tag

FIXML Attribute

Data Type

Description

Values

FIX Tag

FIXML Attribute

Data Type

Description

Values

99103-PostTradeType

/TrdCaptRpt/@PostTrdTyp

int

Identifies the type of ticket. 

FX SPOT Give Up Tickets are also known as synthetic tickets; those in which either the FXSPOT firm faces their Trading Firm or when the Trading Firm faces a FX SPOT firm or where the CCP faces the FX SPOT Firm.

FX SPOT Prime Broker Tickets are solely when the FX SPOT firm faces their credit parent broker.

  • 4 - Central Counter Party Firm (First Side) to FX Spot Firm and between Trading Firm and FX Spot Firm

  • 6 - FX Spot firm (first side) to Central Counter Party (Settlement Firm)

526-SecondaryClOrdID

/TrdCaptRpt/RptSide/@ClOrdID2

string

Provided only to credit suppliers, populated with clients ClOrdID (Tag 11) value.

 

20057-TradePriceStatus

/TrdCaptRpt/@PxStat

int

Status of the Price

0 - Final

854-QtyTyp

/TrdCaptRpt/@QtyTyp

int

Indicates the type of quantity being represented in the Last Quantity. The quantity type defaults to what is specified in the contract specifications.

0 - Notional FX

120-SettlCurrency

/TrdCaptRpt/@SettlCcy

Currency

Currency code of settlement denomination.

 

64-SettlDate

/TrdCaptRpt/@SettlDt

LocalMktDate

Specific date of trade settlement (SettlementDate).

Value format follows Protocol. FIX: YYYYMMDD, FIXML: YYYY-MM-DD.

 

63-SettlType

/TrdCaptRpt/@SettlTyp

String

Settlement Type of trade. 

0 = Spot 

15-Currency

/TrdCaptRpt/@Ccy

Currency

3 character ISO code of the dealt currency.

 

2490-TradeNumber

/TrdCaptRpt/@TrdNum

int

The FXS+ Deal ID - Common to all participants involved in a deal. 

 

10037-TradingQuantity

/TrdCaptRpt/@TrdgQty

Qty

Notional traded amount always expressed in terms of base currency regardless of dealt currency. Currently only trading in base currency is supported.

 

20060-VenueSubType

/TrdCaptRpt/@VenuSubTyp

Char

Identifies the subtype of the venue where a trade was executed.

C - Central limit order book 

37725-FXCurrencySymbol

/TrdCaptRpt/Instrmt/@FXCcySym

String

Currency pair in CCY1/CCY2 format.

 

37513-GUID

/TrdCaptRpt/Instrmt/@GUID

String

Globally unique Instrument identifier.

 

460-Product

/TrdCaptRpt/Instrmt/@Prod

int

Indicates the type of product the security is associated with. See also the CFICode (461) and SecurityType (167) fields.

4 - CURRENCY

1191-PriceUnitOfMeasure

/TrdCaptRpt/Instrmt/@PxUOM

String

Used to provide context to the PxUOM fields.

Ccy

1717-PriceUnitOfMeasureCurrency

/TrdCaptRpt/Instrmt/@PxUOMCcy

Currency

3 character ISO code of the base currency.

 

455-SecurityAltID

/TrdCaptRpt/Instrmt/AID/@AltID

String

Alternate Security identifier value for this security of SecurityAltIDSource (456) requires SecurityAltIDSource.

 

456-SecurityAltIDSource

/TrdCaptRpt/Instrmt/AID/@AltIDSrc

String

Identifies the class or source of the SecurityAltID (455) value. Required if SecurityAltID is specified.

8 - Exchange Symbol

9373-LiquidityFlag

/TrdCaptRpt/RptSide/@LqdtyFlg

Int

Indicates if an order was submitted for market making obligation as required for MIFID.

0 - False

1028-ManualOrderIndicator

/TrdCaptRpt/RptSide/@ManOrdInd

Boolean

Indicates if the order was created manually or through API.

  • N - No

  • Y - Yes

10027-SideRegulatoryTradeID

10028-SideRegulatoryTradeIDSource

→ 10029-SideRegulatoryTradeIDEvent=0

→ 10030-SideRegulatoryTradeIDType=0

/TrdCaptRpt/RptSide/RegTrdID/@ID

/TrdCaptRpt/RptSide/RegTrdID/@Src

(@Evnt="0" & @Typ="0")

String

Fully formed Unique Trade Identifier (UTI) Regulatory Trade ID.

Legal entity Identifier (LEI) populated in Source.

213800Y1KZLBMHGMTJ05 

1119-RootPartyRole="73"

1118-RootPartyIDSource="G"

1117-RootPartyID="GLBX"

/TrdCaptRpt/[@R="73" AND @Src="G"]@ID="GLBX"

Char

Root Party group identifies the Market Identifier Code (MIC) Code.

  • Role = "73" (Execution Venue)

  • Source = "G" (Market Identifier Code)

Modification to Fields for CME FX Link Spot Leg

The following fields on the FX Spot+ leg will be updated.

FIX Tag

FIXML Attribute

Change Reason

Current Value

New value

FIX Tag

FIXML Attribute

Change Reason

Current Value

New value

1832-ClearedIndicator

/TrdCaptRpt/@Clrd

Spot Leg not cleared at CME Clearing.

1 - Cleared

0 - Not Cleared

828-TradeType

/TrdCaptRpt/@TrdTyp

FX Spot+ is a tradable product and not OTC.

54 - OTC / Large Notional Off Facility Swap

0 - Regular Trade

107-SecurityDescription

/TrdCaptRpt/Instrmt/@Desc

 Updated naming convention for FX Spot+.

E.g. VALUE DATED GBPUSD SPOT FX

E.g. FXSPOT.GBP/USD

55-ProductSymbol

/TrdCaptRpt/Instrmt/@Sym

E.g. FXBPV415

E.g. GBPUSDZ5031

60-TransactionTime

/TrdCaptRpt/@TxnTm

Updated timestamps with nanosecond precision and trailing "Z" removed to be consistent with FIX UTCTimestamp data type.

FIXML Format: 2024-10-15T08:49:40.000000000Z

FIX Format: 20241015-08:49:40.000000000Z

FIXML Format: 2024-10-15T08:49:40.755178582

FIX Format: 20241015-08:49:40.755178582

1012-SideTrdRegTimestamp

/TrdCaptRpt/RptSide/TrdRegTS/@TS

FIXML Format: 2024-10-15T08:49:40.000000000Z

FIX Format: 20241015-08:49:40.000000000Z

FIXML Format: 2024-10-15T08:49:40.755178582

FIX Format: 20241015-08:49:40.755178582

779-LastUpdateTime

/TrdCaptRpt/@LastUpdateTm

No change in time precision but trailing "Z" removed to be consistent with FIX UTCTimestamp data type.

FIXML Format: 2024-10-15T08:49:40.199000000Z

FIX Format: 20241015-08:49:40.199000000Z

FIXML Format: 2024-10-10T15:43:53.655000000

FIX Format: 20241010-15:43:53.655000000

461-CFICode

/TrdCapRpt/Instmt/@CFI

Update value to be consistent across all Spot trades

FFXCNO

IFXXXP

Depreciated Fields for CME FX Link Spot Leg

The following fields/values will not be present in FX Spot Leg.

FIX Tag

FIXML Attribute

Reason

FIX Tag

FIXML Attribute

Reason

22-ProductCodeSource

/TrdCaptRpt/Instrmt/@Src

Previously set to H - Clearing House/Clearing Organization.

As the Spot leg is not cleared this field is deprecated.

864-NoEvents

→ 855-EventDateType

→ 866-EventDateValue

/TrdCaptRpt/Instrmt/Evnt/@Dt

/TrdCaptRpt/Instrmt/Evnt/@EventTyp

Event Block is deprecated.

The date value for EventType=121(Fixing Date) will be populated in Settlement date
(FIX: 64-SettlDate, FIXML:/TrdCaptRpt/@SettlDt).

200-MaturityMonthYear

/TrdCaptRpt/Instrmt/@MMY

Not relevant for FX Spot.

541-MatDt

TrdCaptRpt/Instrmt/@MatDt

Not relevant for FX Spot.

Changes to Party Block for CME FX Link Spot Leg 

Party block fields will be updated as follows for CME FX Link Spot leg.

FIX Tag

FIXML Attribute

Change Type / Values

FIX Tag

FIXML Attribute

Change Type / Values

452-PartyRole="1"

447-PartyIDSource="D"

→ 523-PartySubID

→ 803-PartySubIDType=5

/TrdCaptRpt/RptSide/Pty[@R="1" AND @Src="D"]/Sub[@Typ="5"]/@ID

The SubID will be populated with the "FXS+ Spot Executing Firm LongName".

452-PartyRole="1"

447-PartyIDSource="D"

→ 523-PartySubID

→ 803-PartySubIDType=84

/TrdCaptRpt/RptSide/Pty[@R="1" AND @Src="D"]/Sub[@Typ="84"]

84 - FXS+ Spot Executing Firm LEI

(New role indicating the type of SubID)

452-PartyRole="4"

/TrdCaptRpt/RptSide/Pty[@R="4"]/@ID

PartyRole=4 (Clearing Firm) will not be populated and replaced by PartyRole=90(Counterparty Public ID) and SubRole=1000 (Counterparty ID).

452-PartyRole="12"

/TrdCaptRpt/RptSide/Pty[@R="12"]/@ID

PartyRole=12 (Executing Trader) will not be populated and replaced by PartyRole=36 (Entering Trader)

452-PartyRole="21"

/TrdCaptRpt/RptSide/Pty[@R="21"]/@ID

Party ID's for Party Roles 21 (Clearing Organization) and 22 (Exchange) are removed.

452-PartyRole="22"

/TrdCaptRpt/RptSide/Pty[@R="22"]/@ID

452-PartyRole="36"

/TrdCaptRpt/RptSide/Pty[@R="36"]/@ID

Entering trader populated in PartyID with PartyRole=36 (Entering Trader)

Replaces PartyRole=12 (Executing Trader)

452-PartyRole="90"

/TrdCaptRpt/RptSide/Pty[@R="90"]

New PartyRole = 90 (Counterparty Public ID). Denotes the type of PartyID.

452-PartyRole="90"

447-PartyIDSource="D"

→ 523-PartySubID

→ 803-PartySubIDType="1000"

/TrdCaptRpt/RptSide/Pty[@R="90" AND @Src="D"]/Sub[@Typ="1000"]/@ID

New PartySubIDType = 1000 (Counterparty ID). Denotes the type of SubID.

452-PartyRole="90"

447-PartyIDSource="D"

→ 523-PartySubID

→ 803-PartySubIDType="84"

/TrdCaptRpt/RptSide/Pty[@R="90" AND @Src="D"]/Sub[@Typ="84"]/@ID

New PartySubIDType = 84 (Counterparty LEI). Denotes the type of SubID.

452-PartyRole="90"

447-PartyIDSource="D"

→ 523-PartySubID

→ 803-PartySubIDType="1003"

/TrdCaptRpt/RptSide/Pty[@R="90" AND @Src="D"]/Sub[@Typ="1003"]/@ID

New PartySubIDType = 1003 (Prime Broker Indicator).

This SubID will be populated with "Y", when applicable, otherwise, the SubIDType block is not set.

452-PartyRole="90"

447-PartyIDSource="D"

→ 523-PartySubID

→ 803-PartySubIDType="16"

TrdCaptRpt/RptSide/Pty[@R="90" AND @Src="D"]/Sub[@Typ="16"]/@ID

New PartySubIDType = 16 (BIC)

SubID will be populated with BIC code.

452-PartyRole="90"

447-PartyIDSource="D"

→ 523-PartySubID

→ 803-PartySubIDType="5"

/TrdCaptRpt/RptSide/Pty[@R="90" AND @Src="D"]/Sub[@Typ="5"]/@ID

The PartySubID will be populated with “Counter Party Longname”

 

Related content




How was your Client Systems Wiki Experience? Submit Feedback

Copyright © 2024 CME Group Inc. All rights reserved.