Understanding the Implied Volatility Surface

Juan Vera

March 2025

Implied volatity is a 33-dimensional representation of the implied volatilities of options on any given underlying asset, plotted as a function, F()=σimp\mathcal{F}(\cdot) = \sigma_{\text{imp}} of time to maturity τ\tau and moneyness MM where,

Mcall=SK if callMput=KS if putM_{\text{call}} = \frac{S}{K} \hspace{3mm} \text{ if call} \\[3mm] M_{\text{put}} = \frac{K}{S} \hspace{3mm} \text{ if put} \\[3mm]

where SS is the current price of the asset.

Assume we have a call at K=XcK = X_c, meaning we have the right to buy at any point before the time at which the contract expires and the option has a value of S>(K=X)S > (K = X), then M>1M > 1.

Now assume we have the same scenario but S<(K=X)S < (K = X), then M<1M < 1.

Now assume we have a put at K=XpK = X_p, meaning we have the right to sell at any point prior to the expiration of a contract.

If S>KS > K, then M<1M < 1, but if K>SK > S then M>1M > 1.

Then ultimately, the formulation for moneyness MM becomes the delimiter for knowing the value of the option (whether call or put) at a given time t<Tt < T, where if M>1M > 1, we're in the money, else our option has no profitable value.

Aside from MM, the IVS\text{IVS} is a function of a second variable τ\tau the time to maturity. If tt is current time, TT is time at maturity, τ=Tt\tau = T - t is time to maturity.

To compute the implied volatility at τ\tau, we need a couple of inputs to our function F()\mathcal{F}(\cdot).

Market option price, Cintrinsic=max(SK,0)C_{\text{intrinsic}} = \max(S - K, 0) if call or Pintrinsic=max(KS,0)P_{\text{intrinsic}} = \max(K - S, 0) if put, the underlying price SS, the strike price KK, time to maturity τ\tau, risk free rate rr.

The Black-Scholes model provides the theoretical price for an option (European, as it only accounts for the price at TT) as,

CBS(S,K,τ,r,σ)=SN(d1)KerτN(d2)Theoretical Call PricePBS(S,K,τ,r,σ)=Ke(r(τ))N(d2)SN(d1)Theoretical Put PriceC_{\text{BS}}(S, K, \tau, r, \sigma) = SN(d_1) - Ke^{-r\tau}N(d_2) \hspace{3mm} | \hspace{3mm} \text{Theoretical Call Price} \\[3mm] P_{\text{BS}}(S, K, \tau, r, \sigma) = Ke^{(-r(\tau))}N(- d_2) - SN(-d_1) \hspace{3mm} | \hspace{3mm} \text{Theoretical Put Price}

where N(di)N(d_i) is the CDF of the normal distribution function of the standard normal distribution at did_i (or equivanlently the PDF integrated up to did_i) di12πez22\int_{-\infty}^{d_i} \frac{1}{\sqrt{2\pi}}e^{\frac{-z^2}{2}}.

d1d_1 and d2d_2 are defined as:

d1=ln(Mcall)+(rq+σ22)(τ)στd2=d1στd_1 = \frac{\ln(M_{\text{call}}) + (\frac{r - q + \sigma^2}{2})(\tau)}{\sigma \sqrt{\tau}} \\[3mm] d_2 = d_1 - \sigma \sqrt{\tau}

The goal is to find σimp\sigma_{\text{imp}} by solving for CBS=CmarketC_{\text{BS}} = C_{\text{market}} or PBS=PmarketP_{\text{BS}} = P_{\text{market}}.

You can find σimp\sigma_{\text{imp}} via the Newton-Raphson method, which essentially tries to find the roots of a function such that f()=0f(\cdot) = 0

Given that we're trying to find a CBS=CmarketC_{\text{BS}} = C_{\text{market}}, we can construct a function as,

f(σ)=CBS(S,K,τ,r,σ)Cmarketf(\sigma) = C_{\text{BS}}(S, K, \tau, r, \sigma) - C_{\text{market}}

with the goal of finding σ\sigma such that f(σ)=0f(\sigma) = 0

Newton-Raphson method iteratively adjusts σ\sigma until f(σn)=0f(\sigma_n) = 0 as,

σn+1=σf(σn)f(σn)\sigma_{n + 1} = \sigma - \frac{f(\sigma_n)}{f'(\sigma_n)}

where f(σn)f'(\sigma_n) is simply the partial derivative of f(σn)f(\sigma_n) with respect to σn\sigma_n,

f(σn)=CBSσn=SτN(d1)σ f'(\sigma_n) = \frac{\partial C_{\text{BS}}}{\partial \sigma_n} = S\sqrt{\tau} \cdot \frac{∂N(d_1)}{∂\sigma}

defining the infinitesimal rate of change in the price of the call with respect to the volatility.

Once you computed σn\sigma_n, you simply construct the 33-dimensional plot of the function by plotting σn\sigma_n, MM, and τ\tau,

alt text