Subsections


Binomial option pricing

Option and other derivative pricing is one of the prime ``success stories'' of modern finance. An option is a derivative security, the cash flows from the security is a function of the price of some other security, typically called the underlying security. A call option is a right, but not obligation, to buy a given quantity of the underlying security at a given price, called the exercise price $K$, within a certain time interval. A put option is the right, but not obligation, to sell a given quantity of the underlying security to an agreed excercise price within a given time interval. If an option can only be exercised (used) at a given date (the time interval is one day), the option is called an European Option. If the option can be used in a whole time period up to a given date, the option is called American.

An option will only be used if it is valuable to the option holder. In the case of a call option, this is when the exercise price $K$ is lower than the price one alternatively could buy the underlying security for, which is the current price of the underlying security. Hence, options have never negative cash flows at maturity. Thus, for anybody to be willing to offer an option, they must have a cost when entered into. This cost, or price, is typically called an option premium. As notation, let $C$ signify the price of a call option, $P$ the price of a put option and $S$ the price of the underlying security. All of these prices are indexed by time. We typically let $0$ be ``now'' and $T$ the final maturity date of the option. From the definition of the options, it is clear that at their last possible exercise date, the maturity date, they have cash flows.

\begin{displaymath}C_T = \mbox{max}(0,S_T-K) \end{displaymath}


\begin{displaymath}P_T = \mbox{max}(0,K-S_T) \end{displaymath}

The challenge of option pricing is to determine the option premium $C_0$ and $P_0$.

All pricing considers that the cashflows from the derivative is a direct function of the price of the underlying security. Pricing can therefore be done relative to the price of the underlying security. To price options it is necessary to make assumptions about the probability distribution of movements of the underlying security. We start by considering this in a particularly simple framework, the binomial assumption. The price of the underlying is currently $S_0$. The price can next period only take on two values, $S_u$ and $S_d$.


\begin{picture}(170,100)(0,-50)
\put(12,-3){$S_0$}
\put(0,0){\vector(2,1){73}}
\put(0,0){\vector(2,-1){73}}
\put(80,35){$S_u$}
\put(80,-40){$S_d$}
\end{picture}

If one can find all possible future ``states,'' an enumeration of all possibilities, one can value a security by constructing artificial ``probabilities'', called ``state price probabilities,'' which one use to find an artificial expected value of the underlying security, which is then discounted at the risk free interest rate. The binomial framework is particularly simple, since there are only two possible states. If we find the ``probability'' $q$ of one state, we also find the probability of the other as $(1-q)$. Equation 5.1 demonstrates this calculation for the underlying security.

\begin{displaymath}
S_0 = e^{-r}( q S_u + (1-q) S_d )
\end{displaymath} (5.1)

Now, any derivative security based on this underlying security can be priced using the same ``probability'' $q$. The contribution of binomial option pricing is in actually calculating the number $q$. To do valuation, start by introducing constants $u$ and $d$ implicitly defined by $S_u = uS_0$ and $S_d=dS_0$, and you get a process as illustrated in figure 5.1.

Figure 5.1: Binomial Tree
\begin{figure}\begin{center}
\begin{picture}(100,80)(0,-40)
\put(-20,-3){$S_0$}
...
...put(53,23){$uS_0$}
\put(53,-27){$dS_0$}
\end{picture} \end{center}
\end{figure}

and calculate the artifical ``probability'' $q$ as

\begin{displaymath}q = \frac{e^r-d}{u-d} \end{displaymath}

The price of a one-period call option in a binomial framework is shown in formula [*] and implemented in code 5.1.


\begin{formula}
% latex2html id marker 1480\caption{The single period binomal ...
... interest rate and $K$\ is the
call option exercise price.
\par
}
\end{formula}


\begin{program}
% latex2html id marker 1656\caption{Binomial European, one per...
...le{/home/bernt/2003_algor/all_cc_tex_files/bin_eur_call_ud_one.cc}
\end{program}

The ``state price probability'' $q$ is found by an assumption of no arbitrage opportunities. If one has the possibility of trading in the underlying security and a risk free bond, it is possible to create a portfolio of these two assets that exactly duplicates the future payoffs of the derivative security. Since this portfolio has the same future payoff as the derivative, the price of the derivative has to equal the cost of the duplicating portfolio. Working out the algebra of this, one can find the expression for $q$ as the function of the up and down movements $u$ and $d$.

Multiperiod binomial pricing

Of course, an assumption of only two possible future states next period is somewhat unrealistic, but if we iterate this assumption, and assume that every date, there are only two possible outcomes next date, but then, for each of these two outcomes, there is two new outcomes, as illustrated in the next figure


\begin{picture}(200,160)(0,-75)
\put(10,-3){\footnotesize$S_t$}
\put(0,0){\vecto...
...(uS_t)=u(dS_t)=udS_t$}
\put(155,-77){\footnotesize$d(dS_t)=ddS_t$}
\end{picture}

Iterating this idea a few times more, the number of different terminal states increases markedly, and we get closer to a realistic distribution of future prices of the underlying at the terminal date.


\begin{picture}(200,200)(0,-100)
\put(0,0){\line(2,1){125}}
\put(0,0){\line(2,-1...
...25}}
%
\put(100,50){\line(2,-1){25}}
\put(100,-50){\line(2,1){25}}
\end{picture}

Note, a crucial assumption to get a picture like this is that the factors $u$ and $d$ are the same on each date. Pricing in a setting like this is done by working backwards, starting at the terminal date. Here we know all the possible values of the underlying security. For each of these, we calculate the payoffs from the derivative, and find what the set of possible derivative prices is one period before. Given these, we can find the option one period before this again, and so on. Working ones way down to the root of the tree, the option price is found as the derivative price in the first node.

For example, suppose we have two periods, and price a two period call option with exercise price $K$.


\begin{picture}(200,160)(0,-75)
\put(10,-3){\footnotesize$S_0$}
\put(0,0){\vecto...
...(155,-3){\footnotesize$udS_0$}
\put(155,-77){\footnotesize$ddS_0$}
\end{picture}

First step: Find terminal payoffs of derivative


\begin{picture}(200,160)(0,-75)
\put(10,-3){\footnotesize }
\put(0,0){\vector(2,...
...x(0,duS-X)$}}
\put(155,-77){{\footnotesize$C_{dd}-\max(0,ddS-X)$}}
\end{picture}
Next: Find the two possible call prices at time 1:

\begin{displaymath}C_u = e^{-r}(qC_{uu}+(1-q)C_{ud}) \end{displaymath}


\begin{displaymath}C_d = e^{-r}(qC_{ud}+(1-q)C_{dd}) \end{displaymath}


\begin{picture}(100,80)(0,-40)
\put(-20,-3){$C_0$}
\put(0,0){\vector(2,1){48}}
\put(0,0){\vector(2,-1){48}}
\put(53,23){$C_u$}
\put(53,-27){$C_d$}
\end{picture}

Using these two possible payoffs at time 1, find option value at time 0:

\begin{displaymath}C_0 = e^{-r}(qC_u+(1-q)C_d) \end{displaymath}

Code 5.2 implements this recursive idea.


\begin{program}
% latex2html id marker 1661\caption{Binomial European, several...
...ndfile{/home/bernt/2003_algor/all_cc_tex_files/bin_eur_call_ud.cc}
\end{program}

Further reading

The derivation of the single period binomial is e.g. shown in Bossaerts and Ødegaard (2001). Hull (2003) and McDonald (2002) are standard references.

Problems


\begin{Exercise}
% latex2html id marker 1583The price of the underlying secur...
...rmula~\ref{formula:single period binomial call}.
\end{enumerate}\end{Exercise}


\begin{Exercise}
Implement pricing of single and multi period binomial put options.
\end{Exercise}

2003-10-22