Versions Compared

Key

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

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 This topic describes CME STP support for CME FX Link trades with the introduction of FX Spot+.

Contents

Table of Contents
styleminLevelnone

Revision History

...

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

...

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

...

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

1
maxLevel6
outlinefalse
styledefault
typelist
printabletrue

Testing and Certification

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

Client System Impacts

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

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)

...

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

The following fields will be are added Trade Capture reports or existing fields populated with new 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)

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

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

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

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 is 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.

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

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 is 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 is 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 is 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 is 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 is 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 is populated with “Counter Party Longname”

...