Put-Call Parity

Before jumping into the binomial model, we lock in put-call parity — the neat reason knowing a European call's price automatically pins down its put, and vice versa.

Before we can even try to price an option, we have to simplify the model a bit. Otherwise the math just doesn’t happen.

And the simplified model? It’s the Binomial Model!!!

The nice thing about it — apparently — is that it works for both European and American options. One model, both flavors.

Now, European-style options usually get priced with the Black-Scholes Model. But Black-Scholes is basically one floor up from the binomial model — it’s built on top of it. Which is why people say you really need to get the binomial model down first.

So the plan: walk up the staircase. Binomial first, then the heavier stuff.

OK so we’re about to jump into the binomial model… but there’s one more thing we need to lock in before we can move on.

That one thing is Put-Call Parity.

“Parity” in English just means something like “equality” or “equivalence.” And the reason that word shows up here is this: for a European call and a European put with the same strike price $K$ and the same maturity $T$ — once you know the price of one, the price of the other is automatically pinned down. They come as a pair. So let’s see why.

We figure it out using a risk-free portfolio.

A risk-free portfolio is exactly what it sounds like — a portfolio whose value is guaranteed to be the saaaame fixed number no matter what, zero risk. Let’s build one:

  • Sell a call with maturity $T$ and strike $K$: $-C$
  • Buy a put with the same terms: $+P$
  • Buy the underlying asset: $+S$
  • Borrow cash in the amount of $Ke^{-rT}$: $Ke^{-rT}$

OK. Now fast-forward. Time $T$ has passed. We’re in the future.

Case 1: the price of the underlying $S'$ ends up greater than the strike $K$.

The person who bought the call from us is going “yo, I’m exercising, I’m buying at $K$.” So we lose $K - S'$ on that leg. But — we’re holding the underlying, worth $S'$. Net so far: $K$.

The put we bought? Worthless. The price went up, nobody’s selling at $K$ when the market is higher. Put value = 0.

And that cash we borrowed, $Ke^{-rT}$? It’s grown to exactly $K$, and we have to pay it back. So $-K$.

Add it all up: zero.

(The arrows are showing what things look like after time $T$.)

Case 2: in the future, $S'$ ends up less than the strike $K$.

Now the call we sold is worthless — the buyer won’t exercise, why would they buy at $K$ when the market’s lower. So nothing happens on that leg.

But we own a put. So we don’t have to dump our underlying at the lower price $S'$ — we can sell it at the strike $K$. That nets us $K - S'$.

The $S'$ we were holding stays as $S'$. The borrowed cash has grown to $K$, and we pay back $K$.

Total: zero again.

So no matter which way the underlying goes, the portfolio is worth $0$ at maturity.

For the portfolio’s value at maturity to be $0$, its value right now has to also be $0$:

$$-C + P + S - Ke^{-rT} = 0$$

(Assumptions: no dividends, and it’s a European option — exercisable only at maturity.)

And that’s how put-call parity usually gets written:

Since this whole series is financial engineering programming, I didn’t go super deep into the derivation here… I’ll cover it properly in the ‘Derivatives I Studied’ series.

Alright — that’s it for today, see ya~~


Originally written in Korean on my Naver blog (2016-09). Translated to English for gdpark.blog.