Option pricing models — Option Pricer (M-009). Short answer: the hub rates it FIT FOR PURPOSE.
Data as of .
FIT FOR PURPOSE as a pricing and risk calculator: the self-test suite passes and the dividend-date projection is measured accurate. Coverage of Smile/Density/Event is thin (20-23%), and no face here should ever be read as a forecast.
Development summary: Every number here is a ruler or a risk calculator, never a forecast. The self-test suite passes and dividend-date projection is accurate to a median 1 day, but Smile/Density/Event populate on only 20-23% of names — the book is thin.
| Item | Detail |
|---|---|
| Question it answers | Every option needs a price converted to a comparable implied vol, American exercise and real dividends priced correctly, and the smile's shape read separately from its level — without any of that claiming to forecast volatility. |
| Method | BSM / Bjerksund-Stensland |
| How it works | Five pure-function faces per symbol: BSM/Bjerksund-Stensland pricer, log-moneyness smile fit, Breeden-Litzenberger density, two-expiry earnings-jump split, Yang-Zhang realised-vol read |
| Inputs | IBKR per-contract option chain, 13-week T-bill risk-free rate, Declared ex-dividend schedule, Yang-Zhang realised vol, Log-moneyness smile fit |
| Output | Per-symbol pricing/greeks, smile fit, implied density, event split — a reference face, no ranked list |
| Horizon | the priced contract's own expiry (near-dated chain only) |
| Coverage | US names with both a sampled IBKR chain and an options row (~620-name options universe; Smile/Density fill on ~20%, Event on ~23%) |
| Markets | US |
| Model type | Model · Structural |
| Stage | Production |
| Version | v1, first recorded 30 Aug 2026 |
Training data: not stated. Test data: not stated. Out-of-sample design: none.
| Measure | Result | Compared with | Note |
|---|---|---|---|
| Self-test: BSM vs textbook | call 10.4506, put 5.5735 (tol 1e-3) | S=100,K=100,T=1,sigma=0.20,r=0.05 | python3; also checks put-call parity to 1e-6 and IV round-trip to 1e-4 |
| Leisen-Reimer binomial vs Bjerksund-Stensland | agree within 0.05 (a few cents) | independent pricing methods on the same American contract | the binomial tree (inventory shorthand 'CRR') is a self-test cross-check only — it is not called in the production pipeline |
| Dividend ex-date projection error | median 1 day, p90 8 days | the declared ex-date | measured on the 178 names carrying both a declared and a would-have-been-projected date |
| Smile / Density / Event coverage | ~20% / ~20% / ~23% of names | 100% for the Pricer face | the per-contract book only began persisting 2026-08-29; coverage, not model choice, is the binding constraint |
| Pre-fix raw coverage (2026-08-14 file) | term_slope 1%, skew 2%, skew_25d 0%, call_wing 0% | iv30 25% (100% of IV-bearing rows) | of 567 IV-bearing rows, 512 were a single 30-day model IV with no strike dimension and only 55 were chain-derived; the capture fix landed 2026-08-29 |
| Metric | Sample / window | Compared with | Value | Range (CI) |
|---|---|---|---|---|
| Replication error (median) (headline) | ex-div dates · 178 names | declared ex-date | 1 day | n/a |
| Replication error (p90) | ex-div dates · 178 names | declared ex-date | 8 days | n/a |
Is the design sound? Correct division of labour: rulers (Pricer) are kept separate from surface descriptors (Smile/Density) and from the one genuinely forward-looking pair (Edge's realised-vol read). The engine's own documentation is unusually explicit that none of this is a forecast, which is the right conceptual stance for a pricing library.
Data quality. IBKR chain data is real but a live snapshot, not point-in-time; coverage is the dominant data-quality issue (20-23% for three of five faces). The dividend schedule is a genuine TradingView field, not a proxy, for the 424 of 607 names where it is declared.
Backtest. None, and none is claimed. There is no forecast in this model to backtest; the closest analogue (the Edge face's realised-vol read) is a description of the past, not a prediction.
Against simple benchmarks. Leisen-Reimer binomial serves as the internal benchmark for the production Bjerksund-Stensland approximation and agrees to within a few cents. No external market-price benchmark was run (e.g., comparing model IV against a vendor's).
Independent replication. The self-test suite is itself a replication harness and passes on inspection of the code (textbook BSM, parity, IV round-trip, LR-vs-BjS, smile recovery, flat-smile density). Not independently re-run outside the project by a second party.
Sensitivity. No formal sensitivity analysis on QUARTER_DAYS, the smile's OTM-only strike filter, or the [0.3x, 3.0x] density grid has been run.
Monitoring. Coverage of the three thin faces (Smile/Density/Event) is the practical signal to watch; there is no stored history of that coverage series yet.
Source: the Model Hub's public model register, as of 6 Nov 2026. The M-009 page in the live Model Hub carries the full development and validation record, monitoring and open decisions. All 30 models and their verdicts.