Hexa Scholar

No-arbitrage bounds on option prices

Which option prices violate no-arbitrage bounds?

Without knowing anything about how the stock moves, a call price must stay between two simple bounds, fall as the strike rises but never faster than the discounted strike gap, and bend upward in the strike. A quote that breaks one of these rules can be exploited by a spread that brings in cash today and never pays less than 0 at expiration.

Before you start · 3 quick checks on option payoffs, put-call parity and convex functions, about 3 min
Setup: the market and the two kinds of argument

All options are on one stock that pays no dividends before the expiration date \(T \gt 0\), measured in years. The stock costs \(S_0 \gt 0\) today and is worth \(S_T \ge 0\) at \(T\). We write \(x^+ = \max(x, 0)\).

  • European call with strike \(K \ge 0\): payoff \((S_T - K)^+\) at \(T\), price \(C(K)\) today. European put: payoff \((K - S_T)^+\), price \(P(K)\).
  • American put: like the European put, but the holder may exercise it at any time \(t \le T\), selling one share for \(K\) then.
  • Bond: a zero-coupon bond paying \(F\) at \(T\) costs \(Fe^{-rT}\) today, where \(r\) is the constant, continuously compounded risk-free rate. Cash deposited today at \(r\) grows by the factor \(e^{rt}\) over a time \(t\). Lending is buying the bond, borrowing is selling it.

Trading conditions, used on the whole page:

  • Short sales are allowed, and each option can be bought or written (sold) at one price, its quote.
  • Any quantity can be traded, including fractions, at the quoted price per unit.
  • Unlimited borrowing and lending at \(r\); no transaction costs or taxes.
  • European options and the bond have no cash flow before \(T\), and the stock pays no dividends before \(T\).

No arbitrage is a separate assumption about prices, used with the theorem in stage 3 and wherever a sentence says so. It has two parts: (a) no trade brings in cash today and has a payoff at \(T\) that is never negative; (b) no trade costs nothing today and has a payoff at \(T\) that is never negative and is positive with positive probability. Every bound on this page uses only part (a).

Dominance and no arbitrage. Each bound in the table has two steps. The first is a dominance fact: one payoff is at least another for every final price \(S_T \ge 0\). It compares payoffs only and uses no assumption about prices. The second step turns it into a price bound with part (a): if portfolio A never pays less than portfolio B, then A cannot cost less than B, or buying A and selling B would bring in cash today with a payoff that is never negative. So each dominance fact needs no assumption at all, and each price bound uses no arbitrage exactly once. Put-call parity, which the American inequality uses, applies part (a) in both directions.

Sign of \(r\). The European bounds hold for every constant \(r\), positive, zero or negative. The American inequality below assumes \(r \ge 0\). The examples use \(r = 5\%\).

European bounds. In each row the dominance fact holds for every \(S_T \ge 0\), and the trade brings in the cash shown whenever the bound fails, with a payoff at \(T\) that is never negative. \(K_1 \lt K_2\).
BoundDominance fact at \(T\)Trade if the bound failsCash today
\(C(K) \le S_0\)\((S_T - K)^+ \le S_T\)Write the call, buy one share\(C(K) - S_0\)
\(C(K) \ge S_0 - Ke^{-rT}\)\((S_T - K)^+ + K \ge S_T\)Buy the call, lend \(Ke^{-rT}\), short one share\(S_0 - Ke^{-rT} - C(K)\)
\(C(K) \ge 0\)\((S_T - K)^+ \ge 0\)Buy the call\(-C(K)\)
\(P(K) \le Ke^{-rT}\)\((K - S_T)^+ \le K\)Write the put, lend \(Ke^{-rT}\)\(P(K) - Ke^{-rT}\)
\(P(K) \ge Ke^{-rT} - S_0\)\((K - S_T)^+ + S_T \ge K\)Buy the put and one share, borrow \(Ke^{-rT}\)\(Ke^{-rT} - S_0 - P(K)\)
\(C(K_1) \ge C(K_2)\)\((S_T - K_1)^+ \ge (S_T - K_2)^+\)Buy the \(K_1\) call, write the \(K_2\) call (a bull spread)\(C(K_2) - C(K_1)\)
\(C(K_1) - C(K_2) \le (K_2 - K_1)e^{-rT}\)\((S_T - K_1)^+ - (S_T - K_2)^+ \le K_2 - K_1\)Write the \(K_1\) call, buy the \(K_2\) call, lend \((K_2 - K_1)e^{-rT}\)\(C(K_1) - C(K_2) - (K_2 - K_1)e^{-rT}\)
Convexity in \(K\), stage 3A butterfly spread pays at least 0Buy the butterflyminus its cost

Together the first three rows give \(\max(S_0 - Ke^{-rT}, 0) \le C(K) \le S_0\), and the put rows give \(\max(Ke^{-rT} - S_0, 0) \le P(K) \le Ke^{-rT}\), using \(P(K) \ge 0\) as for calls. When \(r \ge 0\), \(S_0 - Ke^{-rT} \ge S_0 - K\), so a European call is worth at least \(\max(S_0 - K, 0)\), what it would pay if it could be exercised now; for \(r \lt 0\) the bound \(C(K) \ge S_0 - K\) can fail.

The American put-call inequality

Assumptions. The setup and trading conditions above, no arbitrage, and \(r \ge 0\). \(C\) is the price of the European call and \(P\) the price of the American put, with the same strike \(K\) and expiration \(T\).

\[ S_0 - K \le C - P \le S_0 - Ke^{-rT}. \]
  • Right side. The American put holder can wait until \(T\), so the American put gives every payoff the European put gives: by dominance and part (a), \(P \ge P(K)\). Put-call parity gives \(C - P(K) = S_0 - Ke^{-rT}\), so \(C - P \le S_0 - Ke^{-rT}\). This side does not use \(r \ge 0\). If it fails: write the call, buy the American put and one share, borrow \(Ke^{-rT}\), and hold the put to \(T\). The payoff at \(T\) is \(-(S_T - K)^+ + (K - S_T)^+ + S_T - K = 0\).
  • Left side. Compare the call plus \(K\) in cash with the American put plus one share. If the put is exercised at a time \(t \le T\), the second portfolio is worth \(K\) and the first at least \(Ke^{rt} \ge K\), because \(r \ge 0\). If it is never exercised, at \(T\) the first is worth \((S_T - K)^+ + Ke^{rT} \ge S_T\). If it fails, \(P + S_0 - C - K \gt 0\): write the American put, short one share, buy the call, deposit \(K\). Whenever the put is exercised against you, at \(t\), you pay \(K\) from the deposit, now \(Ke^{rt} \ge K\), and the share you receive closes the short. You keep the rest of the deposit and the call. If it is never exercised, at \(T\) the call and the deposit pay for buying back the share: \((S_T - K)^+ + Ke^{rT} - S_T \ge (K - S_T)^+ \ge 0\).
  • Exercise at once. An American put also satisfies \(P \ge K - S_0\): otherwise buy it and one share and exercise immediately, collecting \(K - S_0 - P \gt 0\).
Strict or weak, and why the call here is European

The bounds are weak inequalities because they use only part (a) of no arbitrage. At equality the trade in the table costs exactly 0 and never pays less than 0. If the stock has a positive chance of ending where that payoff is positive, part (b) rules out the equality too. This page does not assume anything about those chances, so it treats equality as allowed and says so where it happens.

For a stock with no dividends and \(r \ge 0\), early exercise of an American call is never strictly better than keeping or selling it, so its price equals the European price \(C\) (step 7 of the path). The inequality is often stated with the American call for that reason. Here \(C\) is the European call, so the trades never face an early exercise of a call.

1 See

Break the call price curve

What the tool checks, and what it does not

For every strike it checks \(\max(S_0 - Ke^{-rT}, 0) \le C(K) \le S_0\); the inputs do not accept prices below 0, so \(C(K) \ge 0\) always holds. For each pair of neighboring strikes it checks that the price falls, and by at most the strike gap times \(e^{-rT}\). For each three neighboring strikes, the share included as a call with strike 0, it checks convexity with the weights of stage 3. For the American put it checks the inequality above and \(P \ge K - S_0\).

Convexity on each three neighboring points is enough for the whole broken line through them to be convex. Every rule here is necessary: breaking it gives an arbitrage of type (a). The page does not claim that these rules catch every possible arbitrage among the quotes.

The starting prices are values from a standard pricing model with 25% volatility, rounded to 5 cents. You do not need that model here.

Key point Each rule is a payoff comparison turned into a price comparison. When a quote breaks it, buying the cheap side and selling the dear side brings in cash today, and the dominance fact says the position never pays less than 0 at expiration.
2 Try

Find the edges

The questions below use the market of stage 1 and its rules. Some of them quote only three calls; the rules then apply to those three calls, the share and the bond.

Edge goals

Each goal starts from a new set of quotes with no rule broken. Change only the price the goal names, in steps of 5 cents, and find the last price before a rule breaks. A starting quote can sit off the 5-cent grid; only the price you move snaps to it.

Key point With unequal strike gaps the butterfly weights are unequal: the nearer outer strike gets the larger weight. The edge for one quote is set by whichever rule binds first, and that can be a rule involving the share, the bond or the American put.
3 Prove

Call prices are convex in the strike

Theorem (convexity in the strike)

Assumptions.

  • Three European calls on the same stock have the same expiration \(T \gt 0\) and strikes \(0 \lt K_1 \lt K_2 \lt K_3\). Their prices today are \(C_1, C_2, C_3\). The stock's price at \(T\) is \(S_T \ge 0\).
  • The trading conditions of the Setup hold: options are bought and written at one price, any quantity can be traded, there are no transaction costs, and the options have no cash flow before \(T\).
  • No arbitrage, part (a): no trade brings in cash today and has a payoff at \(T\) that is never negative.

Conclusion. With \(\lambda = \dfrac{K_3 - K_2}{K_3 - K_1}\),

\[ C_2 \le \lambda C_1 + (1-\lambda)C_3, \quad\text{equivalently}\quad (K_3 - K_2)C_1 - (K_3 - K_1)C_2 + (K_2 - K_1)C_3 \ge 0. \]

The proof uses no property of the stock beyond \(S_T \ge 0\), and it does not use the rate \(r\), so it holds for every constant \(r\). The same argument works with \(K_1 = 0\) if the share takes the place of the call with strike 0, since \((S_T - 0)^+ = S_T\); the tool in stage 1 uses that case.

Scratch work, not part of the proof.
Key point A butterfly with weights \(\lambda\), \(-1\) and \(1-\lambda\) never pays less than 0, so without arbitrage it cannot be bought for a negative price. That one fact, for every three strikes, is convexity of \(C\) in \(K\).
4 Apply

Problems

All prices are hypothetical. The stocks pay no dividends before expiration, the trading conditions of the Setup hold, and each problem says which options are American. The quotes may break a bound on purpose, so do not assume they are free of arbitrage unless the problem says so.

More problems
Key point To test a quote, find the rule it might break, write the trade from the table, and add up the cash today. A positive total with a payoff that is never negative is an arbitrage.
Level Undergraduate (derivatives course) Prerequisites option payoffs and put-call parity, replication, convex functions Time ~45 min

Further reading