Page History
...
| Name of Trading Venue | MF Feed name |
|---|---|
| Bank of America Meryll Lynch | BAML |
| BNP Paribas | BNPP |
| Barclays Bank | Barx |
| Citadel Securities | Citadel |
| Citi Bank | Citi |
| Commerz Bank | Commerz |
| Credit Suisse | CreditSuisse |
| Deutsche Rapid | DeuRapid |
| EBS Select | EBS Select |
| Goldman Sachs | GoldmanSachs |
| HSBC | HSBC |
| Morgan Stanley | Morgan Stanley |
| Nomura | Nomura |
| Royal Bank of Canada | RBC |
| Royal Bank of Scotland | RBS |
| Saxo Markets | Saxo |
| Societe Generale | SocGen |
| Standard Chartered | StandardChartered |
| UBS | UBS |
| XTX | XTX |
The stale quote protection is achieved by monitoring two parameters that can be statically configured below:
...
Exact Match (Y/N)
With Exact Match enabled your orders will only be mapped to Quotes of the exact same price. Whisperer will always use the most recent quote matching the specified pair/side/qty/price.
With Exact Match disabled, if there is a later quote available at a better price then MarketFactory will use that in preference to the specified Order price details.
Stale Quote Protection (Y/N)
By default MarketFactory stores up to 64 historic quotes in a per-pair cache.
Enabling Stale Quote protection ensures that the client will never submit orders to the venue against quotes in this cache beyond a certain staleness:
StaleAfterMilliseconds (chronological age) <2000ms
DeleteMessageBuffer (number of quotes age) = 5
Example
Quotes
To keep the example simple, we'll use only bid quotes. The example below displays that the history of quotes that live for a duration of a single tick.
QuoteID | Price | Quantity | Status | Delete Time |
|---|---|---|---|---|
| Quote1 | 1.40 | 1000000 | deleted | 00:00:05 |
| Quote2 | 1.30 | 1000000 | deleted | 00:00:04 |
| Quote3 | 1.10 | 2000000 | deleted | 00:00:03 |
| Quote4 | 1.20 | 1000000 | deleted | 00:00:02 |
| Quote5 | 1.10 | 1000000 | deleted | 00:00:01 |
| Quote6 | 1 | 1000000 | current |
StaleAfterMilliseconds=2000, DeleteMessageBuffer not specified
The example below demonstrates the history of quotes once the condition of stale after 200 milliseconds is invoked without the deleted message buffer
Price and Quantity Needed | Quote matched | What happens |
|---|---|---|
| 1000000@1 | Quote6 | QuoteID returned |
| [email protected] | Quote3 | No quote matched – Quote3 is too old |
| [email protected] | Quote5 | QuoteID returned |
| [email protected] | Quote2 | No quote matched – Quote2 is too old |
StaleAfterMilliseconds not specified, DeleteMessageBuffer = 3
With both conditions invoked (and the buffer size set to a tick size of three (3)) the history for the same period would be seen as below:
...