Vol surface interpolation in 60 lines

python
options

An SVI parameterisation that stays arbitrage-free across strikes, fitted with nothing heavier than scipy.optimize and a careful choice of initial guess.

Author

Tom Roth

Published

February 11, 2026

Most of the difficulty in fitting an implied volatility surface is not the optimiser — it is keeping the result free of calendar and butterfly arbitrage once you interpolate between quoted expiries.

Full post in progress. The scaffold here exists so the home listing, archive, and tag filtering have real entries to render.