vol-surface
python
scipy
SVI parameterisation of an equity implied-vol surface, fitted per-expiry and checked for calendar and butterfly arbitrage before it is allowed to interpolate.
Fits a raw SVI slice per expiry with scipy.optimize, then enforces the two no-arbitrage conditions that actually bite in practice: total variance must be non-decreasing in maturity, and each slice’s density must stay non-negative.
The interesting part is not the optimiser — it is choosing an initial guess that does not need one. Seeding from the at-the-money level, skew, and curvature makes the fit converge on essentially every liquid name without hand-tuning.