The Lab

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Stale Quote Protection refers to configuration settings that can be invoked by MarketFactory, to direct FeedServers to reject orders submitted by the customer application. Rather than sending previously quoted orders to the trading venue. The intent of this is to prevent orders being sent to the venue that are too old or stale, and would ultimately result in venue rejection.

Stale quote protection is available for Taker (liquidity consumer) connections to venues, where the customer application submits previously-quoted orders ( that contain within them a quoteID) specifically;

 

Name of Trading VenueMF Feed name
Bank of America Meryll LynchBAML
BNP ParibasBNPP
Barclays BankBarx
Citadel SecuritiesCitadel
Citi BankCiti
Commerz BankCommerz
Credit SuisseCreditSuisse
Deutsche RapidDeuRapid
EBS SelectEBS Select
Goldman SachsGoldmanSachs
HSBCHSBC
Morgan StanleyMorgan Stanley
NomuraNomura
Royal Bank of CanadaRBC
Royal Bank of ScotlandRBS
Saxo MarketsSaxo
Societe GeneraleSocGen
Standard CharteredStandardChartered
UBSUBS
XTXXTX

 

 

The stale quote protection is achieved by monitoring two parameters that can be statically configured below:

  1. The number of milliseconds at or after which a quote can be considered stale and excluded from consideration for quotes that can be sent to a venue. Whisperer then starts timing staleness of a quote at the point the quote is deleted. Ensuring that the most recent quote is always valid.

  2. Monitoring the number of ticks that a quote is valid for. With quotes that arrive less recently than the number of quotes configured considered stale and excluded from consideration for quotes that can be sent to a venue. Again ensuring that the most recent quote is always valid.

Once both conditions are invoked failure for an order to meet either argument can result in a quote being removed from consideration. Another way to think of it is that both conditions must be satisfied in order for a quote to be considered valid.

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
Quote11.401000000deleted00:00:05
Quote21.301000000deleted00:00:04
Quote31.102000000deleted00:00:03
Quote41.201000000deleted00:00:02
Quote51.101000000deleted00:00:01
Quote611000000current 

 

 

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@1Quote6QuoteID returned
[email protected]Quote3No quote matched – Quote3 is too old
[email protected]Quote5QuoteID returned
[email protected]Quote2No quote matched – Quote2 is too old

 

 

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:

Price and Quantity Needed

Quote matched

What happens
1000000@1Quote6QuoteID returned
[email protected]Quote3QuoteID returned
[email protected]Quote5QuoteID returned
[email protected]Quote2No quote matched – Quote2 is outside DeleteMessageBuffer
  • No labels