Free lesson · Volatility
Implied volatility is a model inversion
Open interactive lessonPractice calculationsExplore labs
Start with the idea
An implied volatility quote is the input needed to make a chosen pricing model match an option price.
Symbols, units & horizon
- C_model: European call model price per underlying unit using fixed spot, strike, annual continuous rate and years to expiry
- C_observed: premium per unit
- σ_IV>0: annualized volatility fraction solving the equation
- equality is numerical inversion, not a physical forecast
When and why to use this
Compare option quotes using a consistent model convention and inspect bid/ask uncertainty.
An implied volatility quote is the input needed to make a chosen pricing model match an option price.
A European non-dividend call’s price increases with positive volatility under the benchmark. Bisection searches between two volatility values whose model prices bracket the observed premium. Bracketing failure is a useful sign of bad inputs, inappropriate models or an insufficient search range.
Bid and ask prices imply an interval, not a single precise tradable value. Near expiry or deep in/out of the money, low price sensitivity can make implied volatility numerically unstable. Contract mismatch cannot be fixed by a better root solver.
Implied volatility is a model inversion
- Select a volatility bracket and compute model prices at both ends.
- Evaluate at the bracket midpoint; retain the half whose price range contains the observed premium.
- Repeat until the bracket is narrow, then verify the repriced premium matches within a declared currency tolerance.
At spot=strike=100, zero rate and one year, premium 7.9655674554 corresponds to volatility .2. Initial bracket [.1,.3] has midpoint .2 and reaches the matching value immediately.
Apply it in a strategy
- Freeze inputs at the stated decision time and record their units.
- Compare option quotes using a consistent model convention and inspect bid/ask uncertainty.
- Recompute the example, then change the material assumption and explain the difference.
Research deliverable
Implied volatility is a model inversion: produce the worked calculation, a timestamped input record and a written decision addressing this limitation: An implied volatility depends on model and contract conventions; it is not an unbiased estimate of future realized volatility.
These are synthetic mechanics examples, not historical performance or paper replications. Module evidence and research boundaries record the 12 September 2026 review.
Python implementation
Self-contained teaching example. Python 3.10+; dependencies and input conventions are shown in the code and notation. Run in your own Python environment.
# Python 3.10+; standard library and NumPy only.
# Synthetic teaching inputs; conventions and units are defined in the notation above.
from math import log,sqrt,exp,erf
def call_iv(price,spot,strike,rate,years,low=.000001,high=5):
if min(spot,strike,years,low)<=0 or high<=low: raise ValueError('Invalid positive inputs or bracket')
def call(vol):
n=lambda z:.5*(1+erf(z/sqrt(2)))
d=(log(spot/strike)+(rate+vol*vol/2)*years)/(vol*sqrt(years))
return spot*n(d)-strike*exp(-rate*years)*n(d-vol*sqrt(years))
if not call(low)<=price<=call(high): raise ValueError('Price outside search bracket')
for _ in range(100):
mid=(low+high)/2
if call(mid)<price: low=mid
else: high=mid
vol=(low+high)/2
return vol,call(vol)-price
vol,error=call_iv(7.9655674554,100,100,0,1)
assert abs(vol-.2)<1e-9 and abs(error)<1e-9
print(vol,error)Continue learning
Volatility: Measurement, Surfaces & Variance Risk — all lessons- Realized variance starts with squared returns
- EWMA as a causal variance baseline
- A multi-horizon realized-variance forecast
- Implied volatility is a model inversion
- Term structure through total and forward variance
- Strike convexity and a butterfly consistency check
- Vega requires a volatility-unit convention
- Variance exposure and the difference from arbitrage
Quantitative finance and development glossary · Python resources and libraries · Research sources and limitations