Target Platforms
- Fastmatch offers 2 sessions - One for Spot and one for NDF.
Workflow
Supported Instruments
...
PreviouslyQuoted
...
IOC
FOK
...
IOC
FOK
| Note |
|---|
| title | Pricing Session Notes |
|---|
|
- Fastmatch always requests for 2-way prices.
- The maximum number of prices rungs that Fastmatch can request is 5. If requested for fullbook, number of price levels published should not exceed 5.
|
| Note |
|---|
| title | Orders Session Notes |
|---|
|
- Though Fastmatch can trade on base and term currency, Tag15/ Currency in NewOrderMultiLeg will always be set to base currency. However, Amount/ Tag38 will reflect if the order is quoted based on base or term currency.
- Fastmatch can set up a maker client's session to stream prices to and accept order from Disclosed or Undisclosed clients. When an order originate from a disclosed client, maker will receive the actual client id/ code in party block [PartyRole=3/ ClientID] in NewOrder. Otherwise [for orders received from undisclosed clients], a generic client code is published [1000 is the generic ClientID value in UAT and Prod].
- Fastmatch offers NDF trading only in Singapore region. To comply with MAS regulation, NDF prices and ExecutionReport should always be populated with RMO [Recognized Market Operator] fields.
- ExecutionAck message from Fastmatch does not validate a maker's ExecutionReport. Any field with incorrect values in ExecReport is resolved manually. ExecAck is purely to ack a maker's Fill/ Rejection and to disclose actual taker's info.
- FastMatch Liquidity Management Team will liaise with LPs to understand if a maker will support 'TakerExpectation' fields and enable them accordingly. These are ExpectedResponseTime/ Tag9020 and ExpectedFillRate/ Tag9090. If a client sent ExpectedFillRate=80, it is expected that 80% of client’s trades are filled that day within the time provided in ExpectedResponseTime. There will be no real-time rejection/ penalty if a maker violated ExpectedFillRate or ExpectedResponseTime.
- Fastmatch sends an OrderTimeOut if it received an ExecutionReport after 50ms [agreed between Fastmatch and maker] of NewOrder. Fastmatch sends a DontKnowTrade if it received an ExecutionReport after OrderTimeOut.
- Fastmatch are yet to confirm if a maker will receive an ExecAck in response to Rejected ExecutionReport.
|
Session Configuration
| Info |
|---|
| title | Venue Message Delivery |
|---|
|
Please note that the venue does not support FIX session synchronisation. We reset sequence number every time we logon. |
PartyIDs
...
| Table Filter |
|---|
| hideControls | true |
|---|
| inverse | false |
|---|
| sparkName | Sparkline |
|---|
| hidePane | true |
|---|
| isNew | false |
|---|
| separator | Point (.) |
|---|
| ddSeparators | true |
|---|
| default | fastmatch_stream_maker |
|---|
| isFirstTimeEnter | false |
|---|
| userfilter | Venue |
|---|
| datepattern | dd M yy |
|---|
| id | 1646752981909_-2141901687 |
|---|
| worklog | 5|8|w d h m|w d h m |
|---|
| isOR | AND |
|---|
| order | 0 |
|---|
|
| Table Excerpt Include |
|---|
| copytable | true |
|---|
| name | PartyIDs |
|---|
| page | PartyIDs |
|---|
| type | page |
|---|
|
|
Please refer to Whisperer Enterprise - PartyIDs for the full Enterprise table across all venues.
PassThru Fields
...
| Table Filter |
|---|
| hideControls | true |
|---|
| inverse | false |
|---|
| sparkName | Sparkline |
|---|
| hidePane | true |
|---|
| isNew | false |
|---|
| separator | Point (.) |
|---|
| ddSeparators | true |
|---|
| default | fastmatch_stream_maker |
|---|
| isFirstTimeEnter | false |
|---|
| userfilter | Venue |
|---|
| datepattern | dd M yy |
|---|
| id | 1646753040530_-1463455046 |
|---|
| worklog | 5|8|w d h m|w d h m |
|---|
| isOR | AND |
|---|
| order | 0 |
|---|
|
| Table Excerpt Include |
|---|
| copytable | true |
|---|
| name | PassthruFields |
|---|
| page | Passthru Fields |
|---|
| type | page |
|---|
|
|
Please refer to Passthru Fields for the full Enterprise table across all venues.