The Binomial Option Pricing Model is a well known numerical approximation method that is used to value options for which there are no closedform solutions. The most common applications relate to pricing American style options on stocks, stock indices, currencies, and commodities. In many cases, this model is also referred to as a binomial tree or a simple lattice pricing method. The oBIN( ) function is based on a tree for which the timestep between the branches in the tree are constant.


The approach is based on approximating the distribution for the underlying asset using a binomial random walk. Under this assumption, the underlying asset S can take on one of two possible values at the end of each period. For overall tractability of the model (and to greatly improve computation speed), we also assume that the tree recombines at each timestep, meaning that there are 2 asset prices at the end of 1 timestep, 3 outcomes at the end of 2 steps, 4 outcomes after 3 steps, and so on. In general, there are n+1 prices contained in the branch of the tree that corresponds to the n'th timestep, with a total of (n+1)(n/2+1) timesteps in the tree altogether.


For a three step binomial price tree, the possible price paths through time can be represented as follows:


where u and d are the multiplicative parameters for an upjump and a downjump respectively. Each tree is constructed so that the terminal branch coincides with the maturity date of the option under consideration. The option values at each node in the terminal branch can be assessed using the standard option maturity payoff function: 



where, 
OV_{T} = option value at maturity. 


Based on the possible distribution of option values at maturity, the valuation process continues by working backwards from the terminal branch using a process that is known as dynamic programming or backward induction. This sets the value of the option at any given node equal to the maximum option value that arises from either exercising the option immediately, or waiting until the next period. Consider the option value at node j on the i'th branch of the tree (where j is the number of upjumps). Option value at that node can be calculated as: 



where, 
OV_{ij} = option value at the i, j'th node.

The expected value of the option if left unexercised is determined with reference to the 2 possible outcomes next period. Cox Ross and Rubinstein (1979) were the first to show that this expectation could be assessed as if in a risk neutral world, as follows:




where, 
OV_{i+1,j+i} = option value next period if the asset price goes up.

The current option value is determined by applying this backward induction process back to the initial node in the tree. For efficiency and stability reasons, our asset price tree is actually built using the logtransformed model described in Trigeorgis (1991). For a more indepth derivation of the pricing model, together with a simple example, see Model Derivation. 
Copyright 2013 Hedgebook Ltd.