CRR and American Options1
Download
Report
Transcript CRR and American Options1
CRR and American Options
Date: Oct.20.2014
Authors: LÓPEZ LÓPEZ, VÍCTOR
LUTEMBEKA, SHEDRACK
YUAN, BO
OVERVIEW
1. Problem statement
2. Method
3. Examples using Python:
Price an American option using the CRR binomial model
Problem Statement
Implement in Python the Binomial model (CoxRoss-Rubenstein) and calculate the price as
function of time to maturity and strike and show
in a graph how the solution converge to the
hockey-stick.
Method
STEP 1:
Create the binomial price tree
At each step, it is assumed that the underlying instrument will move up or down by
a specific factor (u or d) per step of the tree.
So, if S is the current price, then in the next period the price will either be:
S
S
up
S u
down
S d
The up and down factors are calculated using:
u
e
t
d e
t
1
u
Method
STEP 2: Find Option value at each final node[edit]
At each final node of the tree — i.e. at expiration of the option — the
option value is simply its intrinsic, or exercise value.
Max (sn) K , o Call
Max ( K sn),0 Put
Where K is the strike price and S(n) is the spot price of the
underlying asset.
Method
STEP 3: Find Option value at earlier nodes
The following formula to compute the expectation value is applied at
each node:
“probability” p: an up move in the underlying
( r q ) t
pe
d
ud
“probability” (1-p) denotes down move.
Examples using Python
Price an American option using the CRR binomial model
For an American option, since the option may either be held or exercised prior to
expiry, the value at each node is: Max (Binomial Value, Exercise Value).
The input values is as follows:
n = 10
#number of steps
S = 100
#initial underlying asset price
r = 0.06
#risk-free interest rate
K = 105
#strike price
v = 0.4
#volatility
t = 1y
#time to maturity
Examples using Python
Results:
Pegging the strike: a solution to get rid of oscilations.
(1)Pricing American call option in one year:
Examples using Python
(2) Pricing American put option in one year:
Thank you for watching!