Implied Volatility Surface
A real-time implied volatility surface visualization built with Black-Scholes pricing. Fetches live options chain data and renders an interactive 3D IV surface across strikes and maturities.
TECH STACK
Deep Dive
This project pulls live options data via yfinance and computes implied volatility for each contract using a numerical root-finding implementation of the Black-Scholes-Merton model. The resulting surface is visualized as an interactive 3D plot using Plotly, exposing the volatility smile/skew structure the market prices into options across different strikes and expiration dates.
Key technical challenges included handling illiquid or zero-bid contracts gracefully during BSM inversion, interpolating sparse data across the strike–maturity grid, and fetching independent Yahoo Finance calls concurrently to keep response times low.
Originally a Streamlit app; rebuilt as a Next.js frontend backed by a Vercel Python serverless function (same Black-Scholes/IV pipeline) to avoid Streamlit Community Cloud's sleep-after-inactivity cold starts, alongside a modernized dark "quant terminal" theme matching this site.
Live Preview
Live app — if it doesn't load, open it directly ↗