C1: Smoothed Order Book Mid
C1 anchors to Index and adjusts gradually based on where the local order book mid is trading relative to it.Mid = (BestBid + BestAsk) / 2when both sides of the book exist.- The EMA uses a 150-second window, so C1 moves slowly and resists short-term manipulation.
- If the order book mid is unavailable, C1 falls back to Index.
C2: Local Market Activity
C2 reflects what is actually trading on the local book.- Last trade is only included if it is recent.
- Stale trades are excluded so one old print cannot anchor the price.
- If no usable values exist, C2 falls back to Index.
C3: Aggregated External Mark
C3 is built from external mark feeds, separate from Index feeds, that provide an independent view of fair value outside the local order book. For each market, the system:- Selects active mark feeds from eligible external sources.
- Drops stale samples.
- Computes the candidate median and filters outliers beyond the allowed tolerance.
- Returns the weighted average of the remaining samples.
Why Three Candidates?
Using the median of three independent price signals provides resilience:- C1 is slow-moving and resistant to sudden order book manipulation, but can lag during fast moves.
- C2 is responsive to real local trading activity, but can be influenced by thin liquidity.
- C3 is independent of the local book, but depends on external feed availability.
Finalization
After computingmedian(C1, C2, C3), the raw mark is normalized before being
published:
- Snapped to the nearest tick size
- Rounded to the market’s price precision
Fallback Summary
Every input degrades gracefully to Index Price.| Condition | Behavior |
|---|---|
| Index input stale | Falls back to last known market index |
| Order book mid unavailable | C1 falls back to Index |
| No recent trades or quotes | C2 falls back to Index |
| External mark feeds unavailable | C3 falls back to Index |
| All inputs missing | Mark tracks Index because all candidates fall back to Index |