Overview
In order to ensure that MarketFactory does not impede the exchange of regulatory information between trading counterparties and intermediaries (ECNs), we ensure that all regulatory fields that are specified in a Venue API are supported in the Whisperer Enterprise API, and mapped.
Rather than provide a loose, generic (i.e. obfuscated) mechanism to convey these fields, Whisperer Enterprise makes explicit provision for SEF, EMIR, MIFID and SFTR requirements as different categories, each with explicit provision for every field, across the trading lifecycle and through the deal/leg/allocation trade structure, as detailed in Message Structure below.
It needs to be understood that there is significant variation in the interpretation and implementation of all regulatory requirements across the market. By ensuring that all variants are accommodated, it follows that the Whisperer API offers a clear view of market best practice, and the potential impact to Customers intending to integrate with a wide range of Venues.
Another very important implication is that just because a regulatory field is specified in the Whisperer API for a particular message and product type does not mean that it will be populated or supported by every Venue. Similarly, it may well be that our Customers have differing views of their regulatory obligations, such that they do not all need to publish particular fields to a given Venue, or use the regulatory details provided by the Venue, internally.
In order to accommodate this variation, Whisperer Enterprise behaves as follows:
- If a regulatory field on an inbound Venue message is not populated, then it is because the Venue does not provide it.
- If a regulatory field is populated on an outbound SBE message from the Client , but the Venue does not support it, then it will be ignored.
- Reporting obligations bilaterally agreed between Customer and Venue may vary between Maker and Taker roles. The Whisperer API is agnostic to this.1
Message Structure
Regulatory timestamps are populated in the message TransactTime, when available.
Clients may reference or populate all other regulatory fields for appropriate messages via the use of dedicated repeating groups containing key/value pairs, at the appropriate level within the message structure:
RegulatoryBodies
This field in the main message body provides an explicit indication whether or not SEF, EMIR or MiFID fields are populated elsewhere in the message structure and provides the message reader - either Whisperer or the Client with an explicit means of deciding whether or not this request/trade requires further regulatory processing.
If the Client believes that they are submitting a trade on MTF (an NDF for example), then they should set the flag for MiFID.
Flags are ordered SEF EMIR MiFID SFTR. If connecting via FIX Protocol, this would be represented as : "N N Y N"
Regulatory Fields
NoBodyRegulatoryFields, NoLegRegulatoryFields and NoAllocRegulatoryFields groups contain sequences of key/value pairs, with keys of type BodyRegulatoryKey, LegRegulatoryKey and AllocRegulatoryKey, respectively.
ISINs
For swaps, ISINs are maintained at the Leg level in the API.
Product-level ISINs are sometimes still supported, but most of the venues have completely moved away from that now, due to regulatory clarifications provided, as per MiFID II and FX Swaps June2017.pdf.
A Body-Level PackageID should (but usually isn't) be provided to link the two legs together.
Should we receive a single top-level ISIN only for a swap, we will populate this in both Legs for consistency of reference. Should we receive three ISINs (both legs and a single top-level one), the per-leg ones will be used and the top-level one delivered as a passthru-field, just in case.
| Message | Parent Group | Name |
|---|---|---|
| QuoteRequest | - | NoBodyRegulatoryFields |
| NoLegs | NoLegRegulatoryFields | |
| NoLegAllocs | NoAllocRegulatoryFields | |
| Quote | - | NoBodyRegulatoryFields |
| MassQuote | - | NoBodyRegulatoryFields |
| NewOrderMultileg | - | NoBodyRegulatoryFields |
| NoLegs | NoLegRegulatoryFields | |
| NoLegAllocs | NoAllocRegulatoryFields | |
| ExecutionReport | - | NoBodyRegulatoryFields |
| NoLegs | NoLegRegulatoryFields | |
| NoLegAllocs | NoAllocRegulatoryFields | |
| ExecutionAcknowledgement | - | NoBodyRegulatoryFields |
| NoLegs | NoLegRegulatoryFields |
For more detail reference the SBE Schema.
Venue-Specific Details
The table below sets out what Regulatory keys are supported by Venue and Message
| Venue | Message | Parent Group | Regulatory Key | Comments | ||
|---|---|---|---|---|---|---|
| FXall QuickTrade | QuoteRequest | NoBodyRegulatoryFields | SEFDataRepository | |||
| FXall QuickTrade | QuoteRequest | NoBodyRegulatoryFields | SEFFinancialEntityDefinition | |||
| FXall QuickTrade | QuoteRequest | NoBodyRegulatoryFields | SEFCustomerTypeIndicator | |||
| FXall QuickTrade | QuoteRequest | NoBodyRegulatoryFields | SEFIsBlock | |||
| FXall QuickTrade | QuoteRequest | NoBodyRegulatoryFields | MiFIDTradingCapacity | |||
| FXall QuickTrade | QuoteRequest | NoBodyRegulatoryFields | MiFIDNonPriceFormingTrade | |||
| FXall QuickTrade | QuoteRequest | NoLegRegulatoryFields | LegSEFUSI | |||
| FXall QuickTrade | QuoteRequest | NoAllocRegulatoryFields | AllocSEFUSIPrefix | |||
| FXall QuickTrade | QuoteRequest | NoAllocRegulatoryFields | AllocSEFUSI | |||
| FXall QuickTrade | QuoteRequest | NoAllocRegulatoryFields | AllocMiFIDConversionFlag | |||
| FXall QuickTrade | QuoteRequest | NoAllocRegulatoryFields | AllocMiFIDNonPriceFormingTrade | |||
| FXall QuickTrade | NewOrderMultileg | NoBodyRegulatoryFields | SEFDataRepository | |||
| FXall QuickTrade | NewOrderMultileg | NoBodyRegulatoryFields | SEFFinancialEntityDefinition | |||
| FXall QuickTrade | NewOrderMultileg | NoBodyRegulatoryFields | SEFCustomerTypeIndicator | |||
| FXall QuickTrade | NewOrderMultileg | NoBodyRegulatoryFields | SEFIsBlock | |||
| FXall QuickTrade | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDTradingCapacity | |||
| FXall QuickTrade | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDNonPriceFormingTrade | |||
| FXall QuickTrade | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSI | |||
| FXall QuickTrade | NewOrderMultileg | NoAllocRegulatoryFields | AllocSEFUSIPrefix | |||
| FXall QuickTrade | NewOrderMultileg | NoAllocRegulatoryFields | AllocSEFUSI | |||
| FXall QuickTrade | NewOrderMultileg | NoAllocRegulatoryFields | AllocMiFIDConversionFlag | |||
| FXall QuickTrade | NewOrderMultileg | NoAllocRegulatoryFields | AllocMiFIDNonPriceFormingTrade | |||
| FXall QuickTrade | ExecutionAck | NoBodyRegulatoryFields | SEFDataRepository | |||
| FXall QuickTrade | ExecutionAck | NoBodyRegulatoryFields | SEFFinancialEntityDefinition | |||
| FXall QuickTrade | ExecutionAck | NoBodyRegulatoryFields | SEFCustomerTypeIndicator | |||
| FXall QuickTrade | ExecutionAck | NoBodyRegulatoryFields | SEFIsBlock | |||
| FXall QuickTrade | ExecutionAck | NoBodyRegulatoryFields | MiFIDTradingCapacity | |||
| FXall QuickTrade | ExecutionAck | NoBodyRegulatoryFields | MiFIDNonPriceFormingTrade | |||
| FXall QuickTrade | ExecutionAck | NoLegRegulatoryFields | LegSEFUSI | |||
| Currenex RFS | Quote Request | NoBodyRegulatoryFields | SEFClearer | |||
| Currenex RFS | Quote Request | NoLegRegulatoryFields | LegMiFIDConversionFlag | |||
| Currenex RFS | Quote Request | NoAllocRegulatoryFields | AllocMiFIDLEI | |||
| Currenex RFS | Quote | NoBodyRegulatoryFields | SEFClearer | |||
| Currenex RFS | Quote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| Currenex RFS | Quote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| Currenex RFS | Quote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| Currenex RFS | Quote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| Currenex RFS | NewOrderMultileg | NoBodyRegulatoryFields | SEFDataRepository | |||
| Currenex RFS | NewOrderMultileg | NoBodyRegulatoryFields | SEFClearer | |||
| Currenex RFS | NewOrderMultileg | NoBodyRegulatoryFields | SEFIsBlock | |||
| Currenex RFS | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDPackageTradeFlag | |||
| Currenex RFS | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDPackageID | |||
| Currenex RFS | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSIPrefix | |||
| Currenex RFS | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSI | |||
| Currenex RFS | NewOrderMultileg | NoLegRegulatoryFields | LegEMIRUTIPrefix | |||
| Currenex RFS | NewOrderMultileg | NoLegRegulatoryFields | LegEMIRUTI | |||
| Currenex RFS | NewOrderMultileg | NoLegRegulatoryFields | LegMiFIDTVTIC | |||
| Currenex RFS | NewOrderMultileg | NoAllocRegulatoryFields | AllocSEFUSIPrefix | |||
| Currenex RFS | NewOrderMultileg | NoAllocRegulatoryFields | AllocSEFUSI | |||
| Currenex RFS | NewOrderMultileg | NoAllocRegulatoryFields | AllocEMIRUTIPrefix | |||
| Currenex RFS | NewOrderMultileg | NoAllocRegulatoryFields | AllocEMIRUTI | |||
| Currenex RFS | NewOrderMultileg | NoAllocRegulatoryFields | AllocMiFIDTVTIC | |||
| Currenex RFS | NewOrderMultileg | NoAllocRegulatoryFields | AllocMiFIDLEI | |||
| Currenex RFS | ExecutionReport | NoBodyRegulatoryFields | SEFClearer | |||
| Currenex RFS | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| Currenex RFS | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| Currenex RFS | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| Currenex RFS | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| Currenex RFS | ExecutionAck | NoBodyRegulatoryFields | MiFIDIlliquidInstrumentWaiver | |||
| Currenex RFS | ExecutionAck | NoLegRegulatoryFields | LegMiFIDISIN | |||
| 360T_TEX | QuoteRequest | NoBodyRegulatoryFields | SEFTakerIsUSPerson | |||
| 360T_TEX | QuoteRequest | NoBodyRegulatoryFields | SEFDataRepository | |||
| 360T_TEX | QuoteRequest | NoBodyRegulatoryFields | SEFIsLargeTrade | |||
| 360T_TEX | QuoteRequest | NoBodyRegulatoryFields | SEFRequiredTransaction | |||
| 360T_TEX | QuoteRequest | NoBodyRegulatoryFields | SEFClearingExempted | |||
| 360T_TEX | QuoteRequest | NoBodyRegulatoryFields | SEFClearer | |||
| 360T_TEX | QuoteRequest | NoBodyRegulatoryFields | MiFIDProductISIN | |||
| 360T_TEX | QuoteRequest | NoBodyRegulatoryFields | MiFIDPackageTradeFlag | |||
| 360T_TEX | QuoteRequest | NoLegRegulatoryFields | LegMiFIDISIN | |||
| 360T_TEX | QuoteRequest | NoAllocRegulatoryFields | AllocMiFIDLEI | |||
| 360T_TEX | Quote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| 360T_TEX | Quote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| 360T_TEX | Quote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| 360T_TEX | Quote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| 360T_TEX | Quote | NoBodyRegulatoryFields | MiFIDTradingCapacity | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | SEFTakerIsUSPerson | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | SEFDataRepository | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | SEFIsLargeTrade | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | SEFRequiredTransaction | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | SEFClearingExempted | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | SEFClearer | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDProductISIN | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDILargeInScaleWaiver | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDIlliquidInstrumentWaiver | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDSizeSpecificWaiver | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDILargeInScaleDeferral | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDIlliquidInstrumentDeferral | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDSizeSpecificDeferral | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDPackageTradeFlag | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDSystematicInternaliser | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDRiskReductionOrderFlag | |||
| 360T_TEX | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSIPrefix | |||
| 360T_TEX | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSI | |||
| 360T_TEX | NewOrderMultileg | NoLegRegulatoryFields | LegEMIRUTI | |||
| 360T_TEX | NewOrderMultileg | NoLegRegulatoryFields | LegMiFIDISIN | |||
| 360T_TEX | NewOrderMultileg | NoLegRegulatoryFields | LegMiFIDTVTIC | |||
| 360T_TEX | NewOrderMultileg | NoAllocRegulatoryFields | AllocSEFUSIPrefix | |||
| 360T_TEX | NewOrderMultileg | NoAllocRegulatoryFields | AllocSEFUSI | |||
| 360T_TEX | NewOrderMultileg | NoAllocRegulatoryFields | AllocEMIRUTI | |||
| 360T_TEX | NewOrderMultileg | NoAllocRegulatoryFields | AllocMiFIDTVTIC | |||
| 360T_TEX | NewOrderMultileg | NoAllocRegulatoryFields | AllocMiFIDLEI | |||
| 360T_TEX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| 360T_TEX | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| 360T_TEX | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| 360T_TEX | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| 360T_TEX | ExecutionReport | NoBodyRegulatoryFields | MiFIDPackageTradeFlag | |||
| 360T_TEX | ExecutionReport | NoBodyRegulatoryFields | MiFIDSystematicInternaliser | |||
| 360T_TEX | ExecutionReport | NoBodyRegulatoryFields | MiFIDTradingCapacity | |||
| 360T_TEX | ExecutionReport | NoLegRegulatoryFields | LegSEFUSIPrefix | |||
| 360T_TEX | ExecutionReport | NoLegRegulatoryFields | LegSEFUSI | |||
| 360T_TEX | ExecutionReport | NoLegRegulatoryFields | LegEMIRUTI | |||
| 360T_TEX | ExecutionReport | NoLegRegulatoryFields | LegMiFIDTVTIC | |||
| 360T_TEX | ExecutionReport | NoAllocRegulatoryFields | AllocSEFUSIPrefix | |||
| 360T_TEX | ExecutionReport | NoAllocRegulatoryFields | AllocSEFUSI | |||
| 360T_TEX | ExecutionReport | NoAllocRegulatoryFields | AllocMiFIDTVTIC | |||
| bloomberg_fxgo_maker | QuoteRequest | NoBodyRegulatoryFields | SEFTakerIsUSPerson | |||
| bloomberg_fxgo_maker | QuoteRequest | NoBodyRegulatoryFields | SEFDataRepository | |||
| bloomberg_fxgo_maker | QuoteRequest | NoLegRegulatoryFields | LegMiFIDISIN | |||
| bloomberg_fxgo_maker | QuoteRequest | NoAllocRegulatoryFields | AllocMiFIDLEI | Batch Only | ||
| bloomberg_fxgo_maker | Quote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| bloomberg_fxgo_maker | Quote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| bloomberg_fxgo_maker | Quote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| bloomberg_fxgo_maker | Quote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| bloomberg_fxgo_maker | MassQuote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| bloomberg_fxgo_maker | MassQuote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| bloomberg_fxgo_maker | MassQuote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| bloomberg_fxgo_maker | MassQuote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoBodyRegulatoryFields | SEFTakerIsUSPerson | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoBodyRegulatoryFields | SEFDataRepository | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDIlliquidInstrumentWaiver | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDSizeSpecificWaiver | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDIlliquidInstrumentDeferral | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDLargeInScaleWaiver | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDLargeInScaleDeferral | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDSizeSpecificDeferral | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDPackageID | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSIPrefix | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSI | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoLegRegulatoryFields | LegEMIRUTIPrefix | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoLegRegulatoryFields | LegEMIRUTI | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoLegRegulatoryFields | LegMiFIDISIN | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoLegRegulatoryFields | LegSFTRSecuritiesFinancingTransactionFlag | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoAllocRegulatoryFields | AllocSEFUSIPrefix | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoAllocRegulatoryFields | AllocSEFUSI | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoAllocRegulatoryFields | AllocEMIRUTIPrefix | |||
| bloomberg_fxgo_maker | NewOrderMultileg | NoAllocRegulatoryFields | AllocEMIRUTI | |||
| bloomberg_fxgo_maker | ExecutionReport | NoBodyRegulatoryFields | SEFTakerIsUSPerson | |||
| bloomberg_fxgo_maker | ExecutionReport | NoBodyRegulatoryFields | SEFDataRepository | |||
| bloomberg_fxgo_maker | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| bloomberg_fxgo_maker | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| bloomberg_fxgo_maker | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| bloomberg_fxgo_maker | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| bloomberg_fxgo_maker | ExecutionReport | NoLegRegulatoryFields | LegSEFUSIPrefix | |||
| bloomberg_fxgo_maker | ExecutionReport | NoLegRegulatoryFields | LegSEFUSI | |||
| bloomberg_fxgo_maker | ExecutionReport | NoLegRegulatoryFields | LegEMIRUTIPrefix | |||
| bloomberg_fxgo_maker | ExecutionReport | NoLegRegulatoryFields | LegEMIRUTI | |||
| bloomberg_fxgo_maker | ExecutionAck | NoBodyRegulatoryFields | MiFIDIlliquidInstrumentWaiver | |||
| bloomberg_fxgo_maker | ExecutionAck | NoBodyRegulatoryFields | MiFIDSizeSpecificWaiver | |||
| bloomberg_fxgo_maker | ExecutionAck | NoBodyRegulatoryFields | MiFIDIlliquidInstrumentDeferral | |||
| bloomberg_fxgo_maker | ExecutionAcK | NoBodyRegulatoryFields | MiFIDSizeSpecificDeferral | |||
| bloomberg_fxgo_maker | ExecutionAcK | NoLegRegulatoryFields | LegSEFUSIPrefix | |||
| bloomberg_fxgo_maker | ExecutionAck | NoLegRegulatoryFields | LegSEFUSI | |||
| bloomberg_fxgo_maker | ExecutionAck | NoLegRegulatoryFields | LegEMIRUTIPrefix | |||
| bloomberg_fxgo_maker | ExecutionAck | NoLegRegulatoryFields | LegEMIRUTI | |||
| bloomberg_fxgo_maker | ExecutionAck | NoLegRegulatoryFields | LegMiFIDISIN | |||
| bloomberg_fxgo_maker | ExecutionAck | NoLegRegulatoryFields | LegSFTRSecuritiesFinancingTransactionFlag | |||
| Fidessa_Orders | NewOrderMultiLeg | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| Fidessa_Orders | NewOrderMultiLeg | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| Fidessa_Orders | NewOrderMultiLeg | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| Fidessa_Orders | NewOrderMultiLeg | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| Fidessa_Orders | NewOrderMultiLeg | NoBodyRegulatoryFields | MiFIDLiquidityProvisionFlag | |||
| Fidessa_Orders | NewOrderMultiLeg | NoBodyRegulatoryFields | MiFIDSystematicInternaliser | |||
| Fidessa_Orders | NewOrderMultiLeg | NoBodyRegulatoryFields | MiFIDRiskReductionOrderFlag | |||
| Fidessa_Orders | NewOrderMultiLeg | NoBodyRegulatoryFields | MiFIDTradingCapacity | |||
| Fidessa_Orders | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| Fidessa_Orders | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| Fidessa_Orders | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| Fidessa_Orders | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| Fidessa_Orders | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDLiquidityProvisionFlag | |||
| Fidessa_Orders | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDSystematicInternaliser | |||
| Fidessa_Orders | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDRiskReductionOrderFlag | |||
| Fidessa_Orders | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDTradingCapacity | |||
| Fidessa_Orders | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| Fidessa_Orders | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| Fidessa_Orders | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| Fidessa_Orders | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| Fidessa_Orders | ExecutionReport | NoBodyRegulatoryFields | MiFIDLiquidityProvisionFlag | |||
| Fidessa_Orders | ExecutionReport | NoBodyRegulatoryFields | MiFIDSystematicInternaliser | |||
| Fidessa_Orders | ExecutionReport | NoBodyRegulatoryFields | MiFIDRiskReductionOrderFlag | |||
| Fidessa_Orders | ExecutionReport | NoBodyRegulatoryFields | MiFIDTradingCapacity | |||
| Fidessa_Orders | ExecutionReport | NoLegRegulatoryFields | LegMiFIDTVTIC | |||
| LMAX | MassQuote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| LMAX | MassQuote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| LMAX | MassQuote | NoBodyRegulatoryFields | MiFIDTradingCapacity | |||
| LMAX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| LMAX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| LMAX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| LMAX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| LMAX | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDTradingCapacity | |||
| FXSpotStream | NewOrderMultileg | NoLegRegulatoryFields | LegEMIRUTIPrefix | |||
| FXSpotStream | NewOrderMultileg | NoLegRegulatoryFields | LegEMIRUTI | |||
| FXSpotStream | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDSystematicInternaliser | |||
| FXSpotStream | ExecutionReport | NoLegRegulatoryFields | LegEMIRUTIPrefix | |||
| FXSpotStream | ExecutionReport | NoLegRegulatoryFields | LegEMIRUTI | |||
| FXSpotStream | ExecutionReport | NoLegRegulatoryFields | LegMiFIDISIN | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDSystematicInternaliser | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDLargeInScaleWaiver | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDLargeInScaleDeferral | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDIlliquidInstrumentWaiver | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDIlliquidInstrumentDeferral | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDSizeSpecificWaiver | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDSizeSpecificDeferral | |||
| FXSpotStream | ExecutionReport | NoBodyRegulatoryFields | MiFIDSizeSpecificDeferral | |||
| cboefx_fixproxy : Taker | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSI | Required only for NDF's | ||
| cboefx_fixproxy : Maker | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSI | Required only for NDF's | ||
| cboefx_fixproxy : Maker | ExecutionReport | NoLegRegulatoryFields | LegSEFUSI | Required only for NDF's | ||
| cboefx_fixproxy : Maker | ExecutionAck | NoLegRegulatoryFields | LegSEFUSI | Required only for NDF's | ||
| cboefx_fixproxy : FullAmount Taker | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSI | Required only for NDF's | ||
| cboefx_fixproxy : FullAmount Maker | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSI | Required only for NDF's | ||
| cboefx_fixproxy : FullAmount Maker | ExecutionAck | NoLegRegulatoryFields | LegSEFUSI | Required only for NDF's | ||
| cboefx_fixproxy : CboeCentral Taker | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSI | Required only for NDF's | ||
| ebs_market_ilink3_sbe | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDLiquidityProvisionFlag | NDF only - If Applicable | ||
| ebs_market_ilink3_sbe | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | NDF only - Either MiFIDInvestmentDecisionMakerAsNaturalPerson or MiFIDInvestmentDecisionMakerAsAlgorithm to be populated if Mifid eligible | ||
| ebs_market_ilink3_sbe | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | NDF only - Either MiFIDInvestmentDecisionMakerAsNaturalPerson or MiFIDInvestmentDecisionMakerAsAlgorithm to be populated if Mifid eligible | ||
| ebs_market_ilink3_sbe | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | NDF only - Either MiFIDExecutingDecisionMakerAsNaturalPerson or MiFIDExecutingDecisionMakerAsAlgorithm to be populated if Mifid eligible | ||
| ebs_market_ilink3_sbe | NewOrderMultileg | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | NDF only - Either MiFIDExecutingDecisionMakerAsNaturalPerson or MiFIDExecutingDecisionMakerAsAlgorithm to be populated if Mifid eligible | ||
| ebs_market_ilink3_sbe | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDLiquidityProvisionFlag | NDF only - If Applicable | ||
| ebs_market_ilink3_sbe | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | NDF only - Either MiFIDInvestmentDecisionMakerAsNaturalPerson or MiFIDInvestmentDecisionMakerAsAlgorithm to be populated if Mifid eligible | ||
| ebs_market_ilink3_sbe | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | NDF only - Either MiFIDInvestmentDecisionMakerAsNaturalPerson or MiFIDInvestmentDecisionMakerAsAlgorithm to be populated if Mifid eligible | ||
| ebs_market_ilink3_sbe | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | NDF only - Either MiFIDExecutingDecisionMakerAsNaturalPerson or MiFIDExecutingDecisionMakerAsAlgorithm to be populated if Mifid eligible | ||
| ebs_market_ilink3_sbe | MultilegOrderCancelReplaceRequest | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | NDF only - Either MiFIDExecutingDecisionMakerAsNaturalPerson or MiFIDExecutingDecisionMakerAsAlgorithm to be populated if Mifid eligible | ||
| baml_instinctfx | NewOrderMultileg | AllocRegulatoryFields | AllocSEFUSIPrefix | Field mapped to USIPrefix/ Tag21004 in venue NewOrder message. This field is used when publishing USIPrefix as part of allocation. ID assigned to the entity the counterparty is associated with. If assigned by Instinct : all BANA entity clients (1030282338) and MLIB clients (1030444690) (max 10 chars) | ||
baml_instinctfx | NewOrderMultileg | AllocRegulatoryFields | AllocSEFUSI | Field mapped to USIValue/ Tag21005 in venue NewOrder message. This field is used when publishing USIPrefix as part of allocation. Unique identifier for the trade that was created by the client (max 32 chars) | ||
baml_instinctfx | ExecutionReport | AllocRegulatoryFields | USIPrefix | USIPrefix/ Tag21004 in venue ExecReport is published as AllocSEFUSIPrefix through AllocRegulatory fields in client ExecReport. | ||
baml_instinctfx | ExecutionReport | AllocRegulatoryFields | USIValue | USIPrefix/ Tag21005 in venue ExecReport is published as AllocSEFUSI through AllocRegulatory fields in client ExecReport. | ||
baml_instinctfx | NewOrderMultileg | LegRegulatoryFields | LegSEFUSIPrefix | Field mapped to USIPrefix/ Tag21004 in venue NewOrder message. This field is used when publishing USIPrefix for trades that do not have pre-trade allocation. ID assigned to the entity the counterparty is associated with. If assigned by Instinct : all BANA entity clients (1030282338) and MLIB clients (1030444690) (max 10 chars) | ||
baml_instinctfx | NewOrderMultileg | LegRegulatoryFields | LegSEFUSI | Field mapped to USIValue/ Tag21005 in venue NewOrder message. This field is used when publishing USIPrefix for trades that do not have pre-trade allocation. Unique identifier for the trade that was created by the client (max 32 chars) | ||
baml_instinctfx | ExecutionReport | LegRegulatoryFields | USIPrefix | USIPrefix/ Tag21004 in venue ExecReport is published through LegSEFUSIPrefix in LegRegulatory in client ExecReport. | ||
baml_instinctfx | ExecutionReport | LegRegulatoryFields | USIValue | USIValue/ Tag21005 in venue ExecReport is published through LegSEFUSI in LegRegulatory in client ExecReport. | ||
baml_instinctfx | NewOrderMultileg | BodyRegulatoryFields | SEFDataRepository | Field mapped to TransactionRepository/ Tag21014 in venue NewOrder message to publish LEI or name of trade repository where trade has been reported. Required in order for trading counterparties to fulfill the reporting obligation on continuation & valuation data and life cycle events. (max 42 chars) | ||
baml_instinctfx | NewOrderMultileg | BodyRegulatoryFields | SEFClearer | Field mapped to ClearingVenue/ Tag21016 in venue NewOrder message to publish LEI of ckearing house if applicable (max 42 chars) | ||
baml_instinctfx | NewOrderMultileg | BodyRegulatoryFields | SEFClearingExempted | Field mapped to IndicationOfClearingException/ Tag21023 in venue NewOrder message to indicate if a trade will not be cleared. Valid values – Y or N | ||
baml_instinctfx | ExecutionReport | BodyRegulatoryFields | TransactionRepository | TransactionRepository/ Tag21014 in venue ExecReport is published through SEFDataRepository in BodyRegulatory in client ExecReport. | ||
baml_instinctfx | ExecutionReport | BodyRegulatoryFields | ClearingVenue | ClearingVenue/ Tag21016 in venue ExecReport is published through SEFClearer in BodyRegulatory in client ExecReport. | ||
baml_instinctfx | ExecutionReport | BodyRegulatoryFields | IndicationOfClearingException | TransactionRepository/ Tag21014 in venue ExecReport is published through SEFClearingExempted in BodyRegulatory in client ExecReport. | ||
| hsbc_fx_mds | MarketDataSnapshotFullRefresh | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| hsbc_fx_mds | MarketDataSnapshotFullRefresh | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| hsbc_fx_mds | MarketDataSnapshotFullRefresh | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| hsbc_fx_mds | MarketDataSnapshotFullRefresh | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| hsbc_fx_mds | NewOrderMultileg | NoLegRegulatoryFields | LegMiFIDISIN | |||
| hsbc_fx_mds | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSIPrefix | |||
| hsbc_fx_mds | NewOrderMultileg | NoLegRegulatoryFields | LegSEFUSI | |||
| hsbc_fx_mds | NewOrderMultileg | NoAllocRegulatoryFields | AllocMiFIDLEI | |||
| hsbc_fx_mds | ExecutionReport | NoLegRegulatoryFields | LegMiFIDISIN | |||
| hsbc_fx_mds | ExecutionReport | NoLegRegulatoryFields | LegSEFUSIPrefix | |||
| hsbc_fx_mds | ExecutionReport | NoLegRegulatoryFields | LegSEFUSI | |||
| hsbc_fx_mds | ExecutionReport | NoBodyRegulatoryFields | MiFIDLiquidityProvisionFlag | Indication as to whether an order is submitted to a trading venue as part of a market making strategy pursuant to Articles 17 and 48 of Directive 2014/65/EU or other activity carried out on the basis of terms which have been predetermined by the issuer of the instrument which is the subject of the order or by the trading venue to which the order is submitted. Always equals to "Y"- as HSBC is always liquidity maker | ||
| hsbc_fx_mds | ExecutionReport | NoBodyRegulatoryFields | MiFIDTradingCapacity | Trading Capacity - Indication of whether the 4= DEAL(Principal ) | Will always be assigned the value of DEAL | |
| hsbc_fx_mds | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | |||
| hsbc_fx_mds | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | |||
| hsbc_fx_mds | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | |||
| hsbc_fx_mds | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | |||
| barx | MassQuote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | Shortcode representing the 'Investment Decision Maker' Algorithm of the message sender. | ||
| barx | MassQuote | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | Shortcode representing the 'Investment Decision Maker' Natural Person of the message sender. | ||
| barx | MassQuote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | Shortcode representing the 'Executing Decision Maker' Algorithm of the message sender. | ||
| barx | MassQuote | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | Shortcode representing the 'Executing Decision Maker' Natural Person of the message sender. | ||
| barx | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsAlgorithm | Shortcode representing the 'Investment Decision Maker' Algorithm of the message sender. | ||
| barx | ExecutionReport | NoBodyRegulatoryFields | MiFIDInvestmentDecisionMakerAsNaturalPerson | Shortcode representing the 'Investment Decision Maker' Natural Person of the message sender. | ||
| barx | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsAlgorithm | Shortcode representing the 'Executing Decision Maker' Algorithm of the message sender. | ||
| barx | ExecutionReport | NoBodyRegulatoryFields | MiFIDExecutingDecisionMakerAsNaturalPerson | Shortcode representing the 'Executing Decision Maker' Natural Person of the message sender. | ||
| barx | ExecutionReport | NoBodyRegulatoryFields | MiFIDSystematicInternaliser | Segment MIC code (as per ISO 10383) of the message sender, indicating it is a Systematic Internaliser. Valid values are: BBSI, BBIS | ||
| barx | ExecutionReport | NoBodyRegulatoryFields | MiFIDTradingCapacity | Trading capacity. Valid value is DEAL: Firm Deals on own account |
Additional Material
Further detail is provided in the following page(s):