Calibrating A Model To Market Prices
A pricing model has knobs you cannot observe directly, like volatility. Calibration is the act of turning those knobs until the model's prices match the market's prices, so you can then use the model to price the things the market doesn't quote.
Prerequisites: The Black-Scholes Model, The Option Greeks
A tailor doesn't cut a suit from a formula and hope it fits. He measures you, then adjusts the pattern's knobs — shoulder width, sleeve length — until the suit matches your body. A pricing model works the same way. Black-Scholes has a knob called volatility that nobody can see directly. You cannot look up "the volatility of Apple stock" the way you look up its price. So instead you turn the knob until the model's price matches a price you can see — a quoted option price — and read off whatever knob setting made that happen. That process is calibration, and every derivatives desk does it every single morning before it prices anything else.
Why you need it at all
A model like Black-Scholes takes five inputs — stock price, strike, time, interest rate, volatility — and outputs a price. Four of those five you can read off a screen. Volatility you cannot. So the model is useless as a forecasting tool until you fix that one missing number, and the only sensible way to fix it is to make the model agree with a price the market has already told you. Once it agrees on the options you can see, you trust it to price the ones you can't — a strike nobody is quoting, or an exotic payoff with no market at all.
Step 1: calibrating one number — implied volatility
The simplest calibration problem has one knob and one target. You observe a call option trading at a price , and you want the volatility that makes the Black-Scholes formula output exactly that price:
In plain English: find the volatility setting that makes the model's price equal the market's price. There is no algebra shortcut — you cannot rearrange the Black-Scholes formula to solve for directly — so you search for it. A simple, reliable search is bisection: guess a low volatility and a high volatility that bracket the answer, then repeatedly halve the bracket.
Worked example 1. A one-year call, strike $100, stock at $100, risk-free rate zero, trades at $7.97. Try : Black-Scholes gives about $3.99, too low. Try : Black-Scholes gives about $11.92, too high. The answer sits between them, so try the midpoint, : Black-Scholes gives about $7.97. That matches. Three guesses and the search is done — real bisection code runs dozens of iterations to get six decimal places, but the mechanics are exactly this: guess, compare, narrow the bracket, repeat. The number you found, 20%, is the implied volatility of that option — the single most basic calibration in finance.
Step 2: calibrating more than one number — fitting a smile
One option gives you one implied volatility. But a stock trades options at many strikes, and if you back out the implied volatility at each strike separately, you rarely get the same number twice — you get a curve, called the volatility smile. A serious pricing model (used for exotics, or for interpolating between quoted strikes) needs a small number of parameters that reproduce that whole curve, not just one point on it. This is calibration with several knobs at once, and now you cannot match every market price exactly — you have more targets than knobs — so you minimize the total error instead:
In plain English: (theta) stands for the whole bundle of model parameters you're solving for. is the -th strike price you have a market quote at. is what your model prices that strike at, given the current guess of ; is what the market actually quotes. You square the gap so positive and negative errors don't cancel, weight each strike by (liquid, tightly-quoted strikes get more weight than illiquid ones), and search for the that makes the weighted sum of squared gaps as small as possible.
Worked example 2. Suppose a simple two-parameter skew model says implied vol at strike is , and the market quotes three strikes: 90-strike vol 24%, 100-strike vol 20%, 110-strike vol 17%. Fit and by least squares on these three points. The average strike offset is , so is just the average vol: . For the slope, use the two endpoints as a shortcut: per point of strike. Check strike 100: model gives versus market's 20% — off by 0.33 points, which is the price of forcing a straight line through a curve that isn't quite straight. That leftover error is exactly what the minimization in the formula above is fighting to reduce, and with only two knobs and three targets, some error is unavoidable.
Drag across strikes and tenors on the surface above. A calibrated model's whole job is to produce a surface like this one that lines up with the market's quoted points everywhere they exist, and fills in something sensible everywhere they don't.
What this means in practice
A trading desk recalibrates every liquid model every morning, sometimes intraday, because market prices move continuously and yesterday's calibrated parameters go stale. The output of calibration isn't just a price — it's a full set of Greeks (delta, vega, and so on) computed at those calibrated parameters, and those Greeks are what the desk actually hedges with. If calibration is sloppy — too few strikes, bad weighting, an unstable optimizer — the Greeks it produces are sloppy too, and the hedge built on them will bleed money even if the model "fit" looked fine on a chart.
Calibration always finds a set of parameters that fits today's prices — it never tells you whether those parameters are right. A model with enough free knobs can fit almost any smile perfectly and still be a terrible predictor of tomorrow's smile. The giveaway is instability: if your calibrated parameters swing wildly from one day to the next even though the market barely moved, you don't have a model of the market — you have an overfit curve with a pricing formula stapled to it. See model risk in derivatives for what goes wrong next.
Calibration is not forecasting. It is reverse-engineering the one unobservable input (or handful of inputs) that makes your model agree with today's observable prices — nothing more, nothing less.
Practice
- A six-month call, strike $50, stock at $50, rate zero, trades at $3.99. Bracket the implied volatility between 10% and 40% and run two bisection steps by hand — what's your bracket after two steps?
- Two strikes, 95 and 105, quote implied vols of 22% and 19%. Using the linear skew model from worked example 2, what vol would you assign to strike 100, and what would you assign to strike 115 — and why should you trust the 100 answer more than the 115 one?
Related concepts
Practice in interviews
Further reading
- Gatheral, The Volatility Surface (Ch. 1)
- Hull, Options, Futures, and Other Derivatives (Ch. 20)