The Lab

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from this space and version 1.5.92

Table of Contents

Workflow

FXSpotStream (FSS) is a connectivity provider multi-bank portal with access to multiple bank liquidity providers (LPs), supporting RFS (spot, forward, swap, NDF, NDS) and ESP (spot, forward, NDF). Multi-allocations and blocks are not supported.

LP selection

. Liquidity may be aggregated according to the following workflows and modes:

  • Taker ESP, Taker RFS - FSS offers Full Amount and Passthrough modes
  • Market Data, Orders - FSS offers a Limit mode 

Supported Instruments

Expand


Table Filter
totalrow,,,,,,,,,,,,
hidelabelsfalse
sparkNameSparkline
hidePanetrue
sparklinefalse
defaultfxspotstream,ExecutionVenue&&MDBookType(PricingSession)&&MDEntryType(PricingSession)&&Comments&&MDBookType (SessionType == Pricing)&&MDEntryType (SessionType == Pricing)&&MDBookType&&MDEntryType
isFirstTimeEnterfalse
cell-width250,250
hideColumnstrue
disabledfalse
enabledInEditorfalse
globalFilterfalse
id1687963659478_-930383553
order0,1
hideControlsfalse
inversefalse,false
columnVenue
disableSavefalse
separatorPoint (.)
labelsVenue‚Hide columns
ddOperatorOR
datepatterndd M yy
updateSelectOptionsfalse
worklog365|5|8|y w d h m|y w d h m
isORAND
Table Excerpt Include
nameSupportedInstruments
merge-tablestrue
pageSupported Instruments
typepage


Please refer to Supported Instruments to view across all venues.

NOTE: FSS does support Term currency limit orders.

PartyIDs

Expand


Table Filter
hideControlstrue
inversefalse
sparkNameSparkline
hidePanetrue
isNewfalse
separatorPoint (.)
ddSeparatorstrue
defaultfxspotstream
isFirstTimeEnterfalse
userfilterVenue
datepatterndd M yy
id1655720330267_-1542429409
worklog5|8|w d h m|w d h m
isORAND
order0

Table Excerpt Include
copytabletrue
namePartyIDs
pagePartyIDs
typepage


Please refer to PartyIDs to view across all venues.

Regulatory Fields

Expand


Table Filter
hideControlstrue
inversefalse
sparkNameSparkline
hidePanetrue
isNewfalse
separatorPoint (.)
ddSeparatorstrue
defaultfxspotstream
isFirstTimeEnterfalse
userfilterVenue
datepatterndd M yy
id1655720358165_1570431775
worklog5|8|w d h m|w d h m
isORAND
order0

Table Excerpt Include
copytabletrue
nameRegulatoryFields
pageRegulatory Fields
typepage


Please refer to Regulatory Fields to view across all venues.

Passthru Fields

Expand


Table Filter
hideControlstrue
inversefalse
sparkNameSparkline
hidePanetrue
isNewfalse
separatorPoint (.)
ddSeparatorstrue
defaultfxspotstream
isFirstTimeEnterfalse
userfilterVenue
datepatterndd M yy
id1655720372079_-1766816656
worklog5|8|w d h m|w d h m
isORAND
order0

Table Excerpt Include
copytabletrue
namePassthruFields
pagePassthru Fields
typepage


Please refer to Passthru Fields to view across all venues.

Details

Warning
titleFSS SIM vs UAT environments

Formal certification testing should only be performed in the FSS UAT environment, which is integrated with the individual LP's own UAT systems and accurately reflects PROD.

The FSS SIM environment is intended for technical integration only and uses mock/simulator implementations which do not necessarily reflect real-world LP functionality. Problems may occasionally be observed in SIM, including:

  • Not all LPs supported
  • Sweepable vs FullAmount liquidity styles for a given LP may not match availability in UAT/PROD (see below)
  • Prices and quantities may not be rounded correctly
  • Edge-cases, such as uneven swaps may not function correctly
  • Instruments may not be supported
  • Value dates may be incorrect
Note
titleSweepable vs FullAmount

Both Sweepable and FullAmount trading is supported:

  • Sweepable - "Stacked". VWAP orders are supported on a per-LP basis in Passthrough mode.
  • FullAmount - "Tiered"

In the FSS SIM environment, this is configured using the Account field as follows.

Sweepable:

  • Citi
  • HSBC
  • JPMorgan Chase
  • Morgan Stanley
  • Standard Chartered
  • UBS 

FullAmount:

  • Bank of America
  • CommerzBank
  • Goldman Sachs

LP selection

FSS supports both Bilateral Quote negotiation and Basket functionality where Quote messages are received from multiple providers. 

The client can The client is required to specify which LPs to receive quotes from by populating the NoPartyIDs repeating group in the MF QuoteRequest – use PartyRole (452) = ExecutionVenue (73). Multiple QuoteRequest NoPartyIDs with PartyRole ExecutionVenue. Multiple LPs are supported for ESP requests but only a single LP is supported for RFS requestsboth ESP and RFS. 

For ESP, Clients will always receive MassQuotes. NoQuoteEntries will only have BidPx or OfferPx per QuoteEntry and sorted by best price.

For RFS, Clients will either receive Quotes or MassQuotes depending on the number of LP's:

  • Single LP (Bilateral) - QuoteRequest contains NoPartyIDs group with single PartyRole ExecutionVenue with PartyID populated with a LP. Clients will receive Quote message from requested LP.
  • Multiple LPs (Basket)QuoteRequest contains NoPartyIDs group with multiple PartyRole ExecutionVenues with PartyIDs populated with LPs. Clients will receive MassQuote messages with each LP as a QuoteEntry.
  • All LPs  (Basket) QuoteRequest does not contain PartyRole ExecutionVenue in NoPartyIDs. Clients will subscribe to all available LPs and they will receive MassQuote messages with each LP as a QuoteEntry.

The supported LPs are:

LP
MF
PartyID (MIC)FSS ID
ANZ BankANZLANZA
Bank of AmericaBAMLBAML
BarclaysBARXBARX
BNP ParibasBNPSBNP
MUFG Bank
BNY
MUTI
BKLF
BTMU
BNYM
CitiCGMICITI
CommerzBankCBKACOBA
Credit Suisse
Deutsche Bank
CSAG
DBAG
CS
DBES
Goldman SachsGSCOGS
HSBCHSBCHSBC
JPMorgan ChaseJPSIJPMC
Morgan StanleyMSAXMS
Standard CharteredSTANSCB
MUFG BankMUTIBTMU
NatWest MarketsNWMSNWM
Societe GeneraleXSGASGSP
Standard CharteredSTANSCB
State StreetSSBISTS
UBSUBSGUBS
Wells Fargo*WFLBWFNA

* Wells Fargo currently offer ESP only.


Example: 

Code Block
8=FIXT.1.1|9=423|35=R|1129=5 18444 1179469389 189|34=603|49=CL_dev-fxspotstream-pricing|56=MF_dev-fxspotstream-pricing|52=20200723-17:30:50.905000000|20003=N N|20004=N|60=20200723-18:30:50.905000000|131=qr_2/ftY4_1595525350490|2115=101|55=EUR/USD|167=1|20021=N N N N|453=2|452=11|448=testTrader|452=73|448=CGMI|555=1|609=1|624=1|556=EUR|685=1000000|587=28|670=1|671=testAccount|672=1|673=1000000|58=testText|10=000|

Note not all LPs are supported in the FSS simulator environment.

Regulatory fields

...


Note
titleAllocation are supported

Multi Allocations are supported by FSS for ESP, RFS and Orders:

  • ESP/Orders - Multi Allocations are only supported for full amount orders
  • RFS - QuoteRequest and NewOrderMultileg must have exactly the same allocations, otherwise the order will be rejected.

Regulatory Detail

Info
titleLP-specific Regulatory Detail

Anchor
RegulatorySpreadSheet
RegulatorySpreadSheet

The values required by FSS are dependent on the target ExecutionVenue

FxSpotStream Regulatory fields.xlsx describes all regulatory fields that are supported, and which ExecutionVenue requires the field. "Other" column means that this field is used by no ExecutionVenue in particular.

NOTE: FSS supports both MiFID and EMIR regulatory regimes.

Warning

Given that LPs have changing requirements, we recommend that you implement sending this data regardless of the LP.

Table Filter
hideControlstrue
inversefalse
sparkNameSparkline
hidePanetrue
separatorPoint (.)
defaultFXSpotStream
isFirstTimeEnterfalse
userfilterVenue
datepatterndd M yy
id1607525324545_-2088968995
worklog5|8|w d h m|w d h m
isORAND
order0

Table Excerpt Include
copytabletrue
nameRegulatoryFields
pageRegulatory Fields
typepage

Please refer to or Regulatory Fields for the full Enterprise table across all venues.

PartyIDs

...

Table Filter
hideControlstrue
inversefalse
sparkNameSparkline
hidePanetrue
separatorPoint (.)
defaultFXSpotStream
isFirstTimeEnterfalse
userfilterVenue
datepatterndd M yy
id1607525378356_-578041861
worklog5|8|w d h m|w d h m
isORAND
order0

Table Excerpt Include
copytabletrue
namePartyIDs
pagePartyIDs
typepage

Please refer to Whisperer Enterprise - PartyIDs for the full Enterprise table across all venues.

LP specific regulatory fields / PartyIDs

Required by HSBC for MIFID trading clients when trading MIFID covered products

NewOrderMultiLeg.NoPartyIDs.PartyRole = OrderOriginationFirmLEI

ExecutionReport.NoPartyIDs.PartyRole = ExecutingFirmLEI

NewOrderMultileg.NoLegs.NoLegRegulatoryFields.LegRegulatoryKey = LegMiFIDISIN

Required by UBS for MIFID trading clients when trading MIFID covered products

...