Put–Call Parity

The most elegant equation in finance needs no model at all. Before anyone mentions volatility, lognormal distributions, or a single Greek letter, the prices of a European call and put on the same non-dividend-paying stock, with the same strike K and the same maturity T, are already locked together:

C - P = S_0 - K e^{-rT},

where S_0 is today's spot price and r the continuously-compounded risk-free rate. Nothing about how the stock moves enters the equation — no probabilities, no distribution, no drift, no volatility. It holds whether the stock follows geometric Brownian motion, jumps around wildly, or does something no model has ever described, because it rests on no-arbitrage alone. That makes it sturdier than any pricing formula: models can be wrong, but parity can only be violated — and a violation is money lying on the floor. Quote a call and a put that disagree with this equation and a trading desk will assemble a riskless money-machine from your quotes within seconds.

Know any three of C, P, S_0, K e^{-rT} and the fourth is forced. In this lesson we prove parity twice (once with a payoff table, once by spotting a forward hiding inside the options), cash in on a violation with an explicit arbitrage, and learn to read the equation the way desks do — as a kit for building any instrument out of the others.

The payoff table is the proof

Build two portfolios today and hold both, untouched, to maturity.

Now ask what each is worth at maturity. There are only two kinds of future: the stock finishes above the strike, or it doesn't. Tabulate both:

at T S_T > K S_T \le K
A: call S_T - K 0
A: cash K K
A total S_T K
B: put 0 K - S_T
B: share S_T S_T
B total S_T K

Read the two "total" rows: in both futures, both portfolios are worth exactly \max(S_T, K). Identical payoffs in every state of the world. The law of one price then does the rest — two things guaranteed to be worth the same tomorrow must cost the same today:

C + K e^{-rT} = P + S_0 \quad\Longleftrightarrow\quad C - P = S_0 - K e^{-rT}.

That is the whole proof. Notice what we never used: any opinion about where S_T will land, or how likely each scenario is. The table has two columns, and equality holds column by column — a far stronger statement than "equal on average". This state-by-state matching is called replication, and it is the master idea of derivatives pricing: the entire Black–Scholes theory is this same move performed continuously in time.

Second proof: a call minus a put is a forward

The same result falls out of a slicker observation, worth internalising on its own.

Step 1 — assemble portfolio A': long one call, short one put, same K and T. Its payoff at maturity is the difference of the two hockey sticks:

V_T^{A'} = (S_T - K)^+ - (K - S_T)^+.

Step 2 — collapse that payoff by cases. Split on the strike. If S_T \ge K the call is in the money and the put is worthless:

V_T^{A'} = (S_T - K) - 0 = S_T - K.

If instead S_T < K the call is worthless and we are short a put that pays K - S_T, so we owe it:

V_T^{A'} = 0 - (K - S_T) = S_T - K.

Step 3 — read off the punchline. Both cases give the same line, with no positive part left:

V_T^{A'} = S_T - K \qquad \text{in every state.}

The optionality has cancelled. Long-call-minus-short-put is just a forward: a call and a put at the same strike fuse into the straight obligation S_T - K. Whatever kink the call contributes above the strike, the short put contributes the matching kink below it.

Step 4 — build portfolio B' with the same payoff. Hold one share and borrow the present value of K — i.e. short K zero-coupon bonds, each worth e^{-rT} today and 1 at maturity. At T the share is worth S_T and you repay K:

V_T^{B'} = S_T - K.

Step 5 — price each portfolio today. Portfolio A' costs the call premium minus the put premium (you receive the put premium for the short); portfolio B' costs the share minus the value of the borrowed bonds:

P_{A'} = C - P, \qquad P_{B'} = S_0 - K e^{-rT}.

Step 6 — apply the law of one price. Identical payoffs S_T - K in every state force identical prices today:

C - P = S_0 - K e^{-rT}.

Same theorem, new insight: the left side is a forward contract built out of options, the right side is a forward contract built out of stock and cash. Parity says the two factories must charge the same price for the same product.

For European options on a non-dividend-paying stock with common strike K, maturity T, and continuously compounded risk-free rate r,

C - P = S_0 - K e^{-rT}.

Worked example: cashing in on a violation

Suppose S_0 = 100, K = 100, r = 5\%, T = 1 year, and the call is quoted at C = 8.00. First compute the discounted strike:

K e^{-rT} = 100\, e^{-0.05} \approx 95.12.

Parity then dictates the fair put price:

P = C - S_0 + K e^{-rT} = 8.00 - 100 + 95.12 = 3.12.

But suppose a market maker is quoting the put at P = 2.50 — 62 cents too cheap. Parity is violated, so we buy what is cheap and sell what is expensive. The trade: buy the put (-2.50), buy the share (-100), write the call (+8.00). Net outlay: 94.50, which we borrow at 5\%. At maturity we owe

94.50\, e^{0.05} \approx 99.35.

Now check both futures — this is the crucial habit; an arbitrage must survive every scenario, not just the likely one:

Riskless profit of 0.65 per share at T — precisely today's mispricing grown at the risk-free rate, 0.62\, e^{0.05} \approx 0.65 — scaled by however many contracts we can trade before the quote moves. Notice the structure: put + stock − call is a synthetic bond paying exactly K in every state, and we bought that bond for less than its present value. Every parity arbitrage is a version of this trade (desks call it a conversion; the mirror-image trade when the options side is too cheap is a reversal).

Worked example: reading off the implied price

In practice parity is used less to arbitrage than to quote. Options on the same strike trade as a pair: price one and parity prices the other. Say C = 11.20, S_0 = 105, K = 100, r = 4\%, T = 0.5 years. Then

K e^{-rT} = 100\, e^{-0.02} \approx 98.02, P = C - S_0 + K e^{-rT} = 11.20 - 105 + 98.02 = 4.22.

No model was consulted — the put price is implied by the call, the stock, and the discount factor. This works in every direction. Given liquid calls and puts you can run parity backwards and extract the implied discount factor e^{-rT} = (P - C + S_0)/K, i.e. the interest rate the options market is actually using — which is exactly how practitioners detect hard-to-borrow stocks and hidden dividend expectations: when the options-implied rate disagrees with the treasury rate, the gap is telling you something about the stock, not about arbitrage.

It is also why, deep in the money, an option's price is almost all parity and almost no model: for S_0 \gg K the put is nearly worthless, so C \approx S_0 - Ke^{-rT} regardless of volatility. Optionality — the part that needs Black–Scholes — lives near the strike; parity owns everything else.

The Lego of derivatives: synthetic instruments

Rearranging parity lets you synthesise any one of the four instruments from the other three — the equation is a kit of interchangeable parts. Each rearrangement is a recipe a desk actually trades when the real instrument is illiquid, restricted, or mispriced:

One equation, five instruments, every rearrangement tradeable. This is why parity is checked continuously by every options desk on earth: it isn't one relation among many, it is the conversion table between the building blocks of the entire market.

If the stock pays a continuous dividend yield q, holding the share earns dividends the option holder forgoes, so the share leg must be discounted by the dividends paid before maturity. Replacing S_0 by S_0 e^{-qT} in the stock-plus-borrowing portfolio (you only need e^{-qT} of a share now to have one share's worth of growth by T) gives the dividend-adjusted parity

C - P = S_0 e^{-qT} - K e^{-rT}.

Setting q = 0 recovers the plain version. The same swap reappears throughout option pricing whenever the underlying throws off a yield — dividends on a stock, a foreign interest rate on a currency, or a convenience yield on a commodity.

Put–call parity was working capital long before it was a theorem. In the 1860s–70s the New York financier Russell Sage — by reputation the meanest man on Wall Street — used it to dodge usury laws: lending above the legal interest cap was illegal, but he could buy stock from a borrower, buy a put from them, and sell them a call, and the combination (look at the synthetic bond above!) is a loan, with the interest rate smuggled inside the option premiums where no court could see it. A synthetic loan built from parity, decades before anyone wrote the equation down.

The first careful written accounts came from practitioners too: Leonard Higgins' The Put-and-Call (1902) and Samuel Nelson's The A B C of Options and Arbitrage (1904) describe London and New York dealers converting puts into calls and quoting the pair as one instrument. Academia caught up in 1969, when Hans Stoll published the formal proof and gave the relation its name. It remains a lovely reversal of the usual story: for once the traders had the theorem first, and the professors provided the notation.

See the payoffs coincide

Below, the kinked combination (S_T - K)^+ - (K - S_T)^+ (long call, short put) is overlaid on the straight line S_T - K (the forward). They lie exactly on top of each other for every price S_T — not on average, not approximately, but point for point. That coincidence is the whole proof, drawn: two payoff profiles that agree in every state must cost the same today.

Slide K and watch the matched pair move as one. The call's kink above the strike and the short put's kink below it always splice into the same straight line, wherever the strike sits — which is why parity holds at every strike simultaneously, giving a whole curve of consistency conditions across an option chain, not just one.

See it explained