msgOptionImpliedQuote: option surface price bounding rules - SpiderRock/SRDataFeed GitHub Wiki
In our Implied Quote Options messages, option surface mark is defined as "option surface price w/bounding rules"
Here is our bounding rule for equity option surface marks (Set in the ImpliedQuoteEngine, defining smrk in msgOptionImpliedQuote):
When the surface vol and price can be calculated (svol>0 and pricing model does not throw an error), we start by setting the smrk to the resulting calculated SR surface price (smrk=sprc).
We then apply bounding logic, as follows:
If the ask price is positive and the bid/ask spread is greater than 0.01, then the surface mark is bounded to be at least a 0.005 threshold within the bid/ask bounds.
For example, if surface price is 0.052 and the bid/ask is 0.05/0.07, the smrk will be pushed up to 0.055, 1/2 tick above the bid. In the same market, if the surface price is between 0.055 and 0.065, then no boundary adjustment will occur.
If the ask price is positive and the bid/ask spread is between -0.1 and 0.01 (i.e. -0.10 < ask - bid < 0.01), we instead set the smrk to midmarket (smrk=0.5*(bid+ask)).
When the surface price cannot be calculated, smrk is set to midmarket, and the sprc value is set to -1.