Skip to content
All library documents

Deriving an Implied Volatility Smile from Historical Returns

Article Quant Q&A · Author: bramvs

Summary

The document describes a route from a commodity’s historically observed return distribution to an implied volatility smile. Rather than relying on a Cornish–Fisher expansion, the accepted answer proposes fitting a distribution to returns over the option’s horizon. The fit can use moment matching for sample variance, skewness, and kurtosis, or kernel density estimation. Next, numerically integrate the fitted density to obtain European option prices, converting returns to prices if needed, and invert those prices with the Black–Scholes formula to recover implied volatilities across strikes.

The answer emphasizes a key limitation: historical observations describe the real-world probability measure, while option prices reflect risk-neutral valuation. A stochastic discount factor is needed for rigor when pricing from a real-world density. The procedure is a practical construction outline, not empirical validation; its output depends on the distribution fit, sample quality, pricing assumptions, and treatment of the measure difference.

Key ideas

  • Fit a horizon-matched return distribution using moments or kernel density estimation.
  • Numerically integrate the fitted distribution to estimate European option prices.
  • Invert those prices through Black–Scholes to obtain implied volatilities across strikes.
  • Historical returns use the real-world measure, so risk-neutral pricing requires appropriate discounting or a stochastic discount factor.

Tags

Full text
# construct volatility smile based on historic observations


# construct volatility smile based on historic observations












So I calculated historic volatility/skewness/kurtosis for a commodity. I now would like to construct a volatility smile that reflects this historically realized distribution. I tried using some cornish-fisher like expansions but it has only a limited valid range and it seems in general a bit more complicated than necessary. Any ideas here how to do this?

## Answer by Quantuple (score 1, accepted)

https://quant.stackexchange.com/a/27463

IMHO the simplest way would be to: (1) fit a probability distribution to the $T$-period returns you've historically observed. This can be done by moment-matching the sample variance/skewness/kurtosis statistics you've already computed, or using kernel density estimation (2) compute European option prices by numerically integrating the $T$-period returns pdf (transforming it to prices if it's easier for you) (3) inverting the obtained prices through the BS formula to extract your BS implied volatility smile.

Be careful that the information you're using is provided under the real-world measure $\mathbb{P}$ and not in the risk-neutral world $\mathbb{Q}$. So when computing the option prices you should use a stochastic discount factor if you want to be rigorous. See discussions here for instance.

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.