Quant Memo
Core

No-Arbitrage Bounds On Option Prices

Before any model tells you what an option is worth, pure logic tells you what it cannot be worth. A handful of inequalities pin every option price into a band, and a quote outside that band is free money you can collect without a forecast.

Prerequisites: Options: Calls and Puts, Put-Call Parity

Pricing an option properly takes a model: a tree, a formula, an assumption about how the underlying moves. But before any of that, plain logic already pins the price into a narrow band. And unlike a model, the band is not a matter of opinion. If a quote falls outside it, you do not need a view on the stock, a volatility estimate, or a single Greek. You assemble a portfolio that costs nothing today and is guaranteed to be worth something later, and you collect.

You already do this

You have never opened a car engine, and you still know two things about the price of a used car. It cannot cost more than the identical car new, because you would just buy the new one. And it cannot cost less than the scrap value of its metal, because you would buy it and weigh it in. Two bounds, no engineering.

Options work the same way, and the bounds come from the same two moves: something cannot be worth more than a thing that always pays at least as much, and something cannot be worth less than a portfolio that always pays at most as much. Everything below is those two sentences applied carefully.

The vocabulary, one symbol at a time

Let SS be today's price of the underlying stock, KK the strike of the option, TT the time to expiry in years, and rr the risk-free interest rate. Write CC for the price of a European call and PP for a European put, both struck at KK and expiring at TT.

One more piece of machinery. To compare money today with money at expiry, discount it:

PV(K)  =  KerT.\text{PV}(K) \;=\; K\,e^{-rT}.

In plain English: PV(K)\text{PV}(K) is the amount you would need to put in the bank today so that it grows into exactly KK by expiry. It is the honest present-day cost of the strike, and it shows up in every bound below.

The band

max ⁣(SKerT,  0)    C    S.\max\!\left(S - K e^{-rT},\; 0\right) \;\le\; C \;\le\; S.

Read that as two separate sentences. Upper: a call can never cost more than the stock, because the right to buy a thing cannot beat owning the thing. Lower: a call must be worth at least the stock price minus the discounted strike, because a call plus cash in the bank always finishes at least as well as owning the stock outright.

C = S C = S - PV(K) allowed PV(K) S C
The shaded wedge is every price a European call is allowed to have. The green curve is what a model produces, but no model may leave the wedge. Notice the lower edge kinks at PV(K), not at K.

Worked example 1: collecting on a broken lower bound

The stock trades at $100, the strike is $95, the rate is 4 percent, and expiry is six months away.

  1. Discount the strike: 95×e0.04×0.5=95×0.9802=93.1295 \times e^{-0.04 \times 0.5} = 95 \times 0.9802 = 93.12.
  2. So the lower bound is 10093.12=6.88100 - 93.12 = 6.88. The call must cost at least $6.88.
  3. Suppose a screen shows it at $6.00. Do this: buy the call for $6, short the stock for $100. You are now holding $94 in cash, with nothing paid in.
  4. Park the $94 at 4 percent for six months: 94×e0.02=94×1.0202=95.9094 \times e^{0.02} = 94 \times 1.0202 = 95.90.

Now expiry arrives, and there are only two cases.

  • Stock above $95. Exercise the call, pay $95 for the share, hand it back to close the short. You keep 95.9095=0.9095.90 - 95 = \mathbf{0.90}.
  • Stock at or below $95. Let the call die, buy the share in the market for less than $95, hand it back. You keep 95.90ST95.90 - S_T, which is more than $0.90.

You put in nothing and you walk away with at least ninety cents per share, whatever the stock does. That is what "the price cannot be below the bound" means, made physical.

The put version is the mirror: max ⁣(KerTS,  0)PKerT\max\!\left(Ke^{-rT} - S,\; 0\right) \le P \le K e^{-rT}. A put cannot be worth more than the discounted strike, because the very best it can ever do is pay KK at expiry when the stock goes to zero.

Every bound is a portfolio, not an opinion. "The call is worth at least SKerTS - Ke^{-rT}" is shorthand for "here is a trade that costs nothing and can only make money if it isn't."

A free result: never exercise an American call early

If the stock pays no dividend, the lower bound settles a famous question by itself. The bound says CSKerTC \ge S - Ke^{-rT}, and whenever r>0r > 0 and time remains, SKerTS - Ke^{-rT} is strictly bigger than SKS - K, which is what you get by exercising. So the call is always worth more sold than exercised. In plain English: exercising early throws away the interest on the strike you have not paid yet, plus all remaining protection if the stock falls back. Dividends are the one thing that can overturn this, see American Options and Early Exercise.

Bounds across strikes

Fix the expiry and slide the strike. Three more inequalities appear, and desks check all three on live quotes.

  • Monotonicity. For K1<K2K_1 < K_2,   C(K1)C(K2)\;C(K_1) \ge C(K_2). A cheaper right to buy is worth more.
  • Slope.   0C(K1)C(K2)(K2K1)erT\;0 \le C(K_1) - C(K_2) \le (K_2 - K_1)e^{-rT}. In plain English: raising the strike by a dollar cannot make the call cheaper by more than a discounted dollar, because the call spread's payoff never exceeds the gap between the strikes.
  • Convexity. For equally spaced K1<K2<K3K_1 < K_2 < K_3,   C(K1)2C(K2)+C(K3)0\;C(K_1) - 2C(K_2) + C(K_3) \ge 0. In plain English: the price curve must bend upward as you look across strikes. That combination of options is a butterfly, and its payoff is never negative, so its price cannot be either.
a quote here is an arb chord C(95) C(100) C(105) strike
The middle strike must sit on or below the straight line joining its neighbours. Push it above, and the butterfly built from those three strikes pays you to put it on.

Worked example 2: the butterfly that pays you to own it

Three calls on the same expiry, strikes $95, $100 and $105, quoted at $8.00, $5.00 and $1.50.

Test the convexity bound: 8.002(5.00)+1.50=0.508.00 - 2(5.00) + 1.50 = -0.50. Negative, so the bound is broken. Build the butterfly anyway: buy one 95 call, sell two 100 calls, buy one 105 call. You receive $0.50 up front.

Now check what you can ever owe at expiry.

Stock at expiry95 calltwo short 100 calls105 calltotal
$900000
$100500+5
$11015−2050
$13035−60250

The worst you can do is zero, and in the middle you make five dollars. You were paid fifty cents to take a position that cannot lose. Fix the middle quote to $4.00 and the arithmetic becomes 8.008.00+1.50=1.508.00 - 8.00 + 1.50 = 1.50, a sensible cost for a structure whose best case is $5, and the arbitrage vanishes.

Drag the sliders below to see why the bound has to hold. Pick "butterfly" and move the width: the payoff line is a tent that touches zero on both sides and never dips under it. A payoff that is never negative cannot have a negative price.

Strategy payoff
price at expiry →
net cost 2profit at 100 8.03 legs

What this means in practice

These inequalities are not classroom decoration. A market maker's quoting engine runs every one of them over the live book on each update, because a violated bound in your own quotes means someone is about to lift you for free. Volatility-surface fitting is subject to the same constraints: a smile that produces a negative butterfly is not a slightly wrong surface, it is an impossible one, and it will hand nonsense prices to every exotic priced off it (Convexity Of Option Prices In Strike).

The more common experience, though, is a false alarm. Nine times out of ten a screen violation is not free money, it is a stale quote on an illiquid strike, a dividend you forgot, a borrow fee that makes the short leg cost real money, or a wide market where the mid you used is not tradable. The bound is exactly right; your inputs were not.

The lower bound uses the discounted strike KerTKe^{-rT}, not KK. Comparing a call to its intrinsic value SKS - K and concluding it is cheap is the single most common mistake here, and it produces phantom arbitrages all day. The same care applies to the European-versus-American distinction, to dividends before expiry, and to hard-to-borrow stocks where "short the stock" is not actually a trade you can do at zero cost.

Key terms

  • Upper bound — a call cannot exceed the stock; a put cannot exceed the discounted strike.
  • Lower boundmax(SKerT,0)\max(S - Ke^{-rT}, 0) for calls, max(KerTS,0)\max(Ke^{-rT} - S, 0) for puts.
  • Slope bound — a call spread's price cannot exceed the discounted gap between its strikes.
  • Convexity bound — the butterfly price must be non-negative; prices bend upward in strike.
  • Static arbitrage — a violation you exploit once and hold to expiry, with no rehedging.

Related concepts

Practice in interviews

Further reading

  • Merton (1973), Theory of Rational Option Pricing
  • Hull, Options, Futures, and Other Derivatives (Ch. 11)
  • Cox & Rubinstein, Options Markets (Ch. 4)
ShareTwitterLinkedIn