kTRM — Options Analytics Engine
Intraday vol surface calibration, skew monitoring, and arbitrage detection across SPX, VIX, SPY, QQQ, ES, and OEX — built from a native C++ solver up through interactive dashboards.
Private Repo — Request AccessCase Study
How It Was Built
Problem
Quants need a fast feedback loop between raw options market data and a usable volatility surface. Off-the-shelf tools either solve implied vol slowly in pure Python or hide the calibration behind a black box, leaving no way to inspect arbitrage violations strike by strike.
Approach
Built a vertically integrated stack: a native C++ Jaeckel solver with OpenMP threading handles implied vol, Python wraps it via zero-copy ctypes, eSSVI surface fitting enforces no-arbitrage via penalty terms, and a Textual TUI plus a Dash/Plotly web dashboard surface the results. Databento L1 data flows in through a managed Parquet pipeline.
Key Decision
Pushed the solver to native C++ rather than staying in NumPy. The Jaeckel method is iterative and runs millions of times per session — keeping it in Python would have made the interactive dashboards unusable. The ctypes bridge takes minutes to write and pays for itself the first time you scan the full SPX chain.
Result
8.2 million contracts per second through the solver, eight per-tenor diagnostics (ATM IV, 25-delta risk reversal, butterfly, skew, variance swap level, forward vol, IV spread, R²) computed live, and 189 arbitrage violations flagged on SPY alone (185 butterfly, 4 calendar) in the first full-chain scan.
Results
Key Metrics
8.2M
Contracts / Second
8
Per-Tenor Diagnostics
6
Underlyings (SPX/VIX/ES...)
3
Output Modes (TUI/Web/Export)
Approach
Technical Overview
C++ Implied Volatility Solver
The Jaeckel method is implemented in native C++ with OpenMP threading and exposed to Python via zero-copy ctypes bindings. The solver processes 8.2 million contracts per second across the full chain, converting raw prices to implied volatilities that feed directly into surface fitting.
eSSVI Surface Calibration
Fitted surfaces use the extended Surface SVI parameterization with penalty terms that enforce no-arbitrage constraints — butterfly and calendar spread violations are penalized during optimization. Each tenor produces 8 diagnostic metrics (ATM IV, 25-delta risk reversal, 25-delta butterfly, skew, variance swap level, forward vol, IV spread, and R²) plus residual plots.
Data Pipeline
Databento L1 options market data is fetched, validated, and stored as Parquet files through an integrated download manager. The pipeline maintains a contract hierarchy across SPX, OEX, VIX, SPY, QQQ, and ES with automatic expiry resolution and forward price computation.
Terminal UI + Web Dashboard
The Textual TUI supports tenor navigation, four coordinate modes (IV, total variance, sigma-squared, ATM term structure), bid/ask/mid series toggles, CSV export, and an autocompleting command bar. The Dash web UI adds interactive Plotly charts, a 3D surface viewer, eSSVI fit overlays, strike-level inspection via ag-Grid, and a paginated arbitrage scanner that flagged 189 violations (185 butterfly, 4 calendar) on SPY alone.
Gallery
Output & Visualizations






Terminal UI — ATM Term Structure — TUI home tab showing tenor list, ASCII term structure chart, stats grid, and strike table for SPY
Web — Volatility Smile + eSSVI Fit — Dash dashboard with smile plot, eSSVI fit overlay, stats grid, and strike table for SPY 2025-01-16
Web — Smile Controls + Stats — Coordinate mode buttons, series toggles, ATM marker, export, and 8-metric stats grid
Web — Surface Diagnostics — 3D eSSVI surface, selected-tenor fit slice, residuals, parameter terms, and fit quality by tenor
Web — Strike Inspector — Strike table with per-row detail inspector showing moneyness, bid/ask IV, and validity status
Web — Arbitrage Scan — 189 violations detected (185 butterfly, 4 calendar) with type, expiration, and constraint details
Stack