Download Upper bounds for the value of Bermudan options

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Interest wikipedia , lookup

Internal rate of return wikipedia , lookup

Modified Dietz method wikipedia , lookup

Interest rate wikipedia , lookup

Financialization wikipedia , lookup

Mark-to-market accounting wikipedia , lookup

Interest rate swap wikipedia , lookup

Continuous-repayment mortgage wikipedia , lookup

Stock selection criterion wikipedia , lookup

Financial economics wikipedia , lookup

Business valuation wikipedia , lookup

Time value of money wikipedia , lookup

Greeks (finance) wikipedia , lookup

Present value wikipedia , lookup

Employee stock option wikipedia , lookup

Transcript
Upper bounds for the value of Bermudan options
Jurriaan Versendaal
P D
G ABN AMRO
January 4, 2008
Contents
Preface
3
Notation
4
1 Introduction
1.1 Project description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Overview of the report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
5
5
2 Interest rate derivatives
2.1 Zero coupon bonds . . . . . . . . . . .
2.1.1 Valuation of zero coupon bonds
2.2 Interest rates . . . . . . . . . . . . . .
2.2.1 Forward rates . . . . . . . . . .
2.2.2 LIBOR market model . . . . .
2.3 Interest rate swaps . . . . . . . . . . .
2.3.1 Valuation of swaps . . . . . . .
2.3.2 Swap rate . . . . . . . . . . . .
2.4 Options . . . . . . . . . . . . . . . . .
2.4.1 Swap options . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
6
6
6
6
7
7
8
8
9
9
3 The valuation of European options
3.1 One-step binomial model . . . . . .
3.1.1 Risk neutral valuation . . .
3.2 The Black-Scholes model . . . . . .
3.3 Black’s model . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
10
10
11
12
13
. . . .
. . . .
. . . .
value
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
15
15
16
19
21
4 The
4.1
4.2
4.3
4.4
.
.
.
.
.
.
.
.
Bermudan option valuation problem
Martingales and stopping times . . . . . . . . . . . .
The primal pricing problem . . . . . . . . . . . . . .
The dual pricing problem . . . . . . . . . . . . . . .
Convergence of the Bermudan value to the American
1
CONTENTS
5 The
5.1
5.2
5.3
5.4
5.5
binomial tree model
Choosing the parameters of the binomial tree . . . . . . . . . . . . . . .
The valuation of Bermudan put options on stocks in a binomial tree . .
Error estimates for the binomial approximation of American put options
Bermudan call options on stocks without dividend payments . . . . . . .
Bermudan swap options . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
22
22
23
24
25
25
6 Bounds on the Bermudan option value via Monte Carlo simulation
6.1 General construction of lower and upper bounds for the Bermudan option value
6.1.1 Lower bounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.2 Upper bounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Simulation of paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2.1 The one-dimensional lognormal underlying process . . . . . . . . . . . .
6.2.2 Interest rates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3 Lower bound algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.1 Least squares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.2 Weighted cash flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4 Upper bound algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4.1 Inner simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4.2 Simple cash flow method . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4.3 Weighted cash flow method . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
26
26
26
26
27
27
28
28
30
31
31
32
33
33
7 Implementation
7.1 Settings of the simple upper bound implementation in CAL . . . . . . . . . . . . . . . . .
7.2 Backward implementation of the Andersen and Broadie martingale . . . . . . . . . . . .
35
35
35
8 Computational results
8.1 Bermudan swaptions . . . . . . .
8.1.1 Trade 1 . . . . . . . . . .
8.1.2 Trade 2 . . . . . . . . . .
8.1.3 Trade 3 . . . . . . . . . .
8.1.4 Conclusions . . . . . . . .
8.2 Bermudan call options on stocks
8.2.1 Conclusions . . . . . . . .
8.3 Bermudan put options on stocks
8.3.1 Lower bounds . . . . . . .
8.3.2 Upper bounds . . . . . . .
8.3.3 Conclusions . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
37
37
37
38
39
39
39
40
40
40
41
42
9 Conclusions and recommendations
9.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9.2 Recommendations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
43
43
A Types of convergence
45
B Matlab code
45
References
51
P
D
G
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
January 4, 2008
PREFACE
Preface
In this report I describe the results of the nine months project I did for the Quantitative Analytics
Group within ABN AMRO. The project was the final piece of my study Applied Mathematics at the
Delft University of Technology (TU Delft). I started with only some basic knowledge about stochastic
differential equations. During the nine months I worked on the project, I learned a lot about the financial
sector and financial mathematics in particular. I am grateful that ABN AMRO gave me this opportunity.
I want to thank the following persons personally. First of all Hans van der Weide, my supervisor from the
TU Delft for his support and feedback. Secondly I thank Robbert Fokkink for taking over when Hans was
abroad. The third person I want to thank is my daily supervisor within ABN AMRO, Raoul Pietersz. He
was always nearby to answer questions and willing to give feedback on my work. I thank Wouter van der
Helm for his interest in the project and for the suggestion that lead to the weighted cash flow algorithm.
Then I thank Marcel van Regenmortel, the head of the interest rate derivative analytics for his interest
and his useful comments on the reports I wrote. I thank the remaining committee members prof. Dekking
and prof. Oosterlee for reading my thesis report. Finally I thank my parents, my sister, my girl friend
Gemma and my friends Tessel van Ballegooijen and Marry Ouwehand for their mental support.
Jurriaan Versendaal
January 2008
P
D
G
3
January 4, 2008
NOTATION
Notation
t
T
N
T
tk
r
B(t, T )
Dt
St
σ
K
Xt
Zt
Vt
Lt
Ut
Mt
Ω
F
Ft
P
Q
ω
τ
stk (t)
sK
M
N
time
the maturity time of a contract
number of exercise moments
the set of possible exercise times
the kth possible exercise time
risk-free rate (assumed to be constant)
time t value of the zero coupon with maturity T
discount factor for cash flows at time t
the stock price at time t
volatility of the stock price (assumed to be constant)
strike value of a contract
value of a general underlying process at time t
the payoff from the option when exercised at time t
option value at time t given it is not exercised earlier
lower bound for the option value at time t given it is not exercised earlier
upper bound for the option value at time t given it is not exercised earlier
martingale process at time t
state space
sigma field of distinguishable events
filtration with respect to time t
probability measure on F
risk-neutral probability measure on F
sample path
stopping time
swap rate at time t of a swap at the kth payment date
strike rate of a swap
number of simulated paths
notional value
P
D
G
4
January 4, 2008
1. INTRODUCTION
1
Introduction
The valuation of options is an important problem in finance. Nowadays options tend to become more
and more exotic. For the valuation of exotic derivatives such as Bermudan options, there is in general no
closed-form expression like the Black-Scholes pricing formula for European options. But there exist many
algorithms that give an approximation to the option value. For a one-dimensional underlying process a
binary tree model and numerical procedures can be used without any problem. But when the dimension
of the problem increases, e.g. in the LIBOR market model, calculation time of these methods increases
exponentially. Because we are working with the LIBOR market model we focus on stochastic procedures
based on Monte Carlo simulation, e.g. the algorithms of Longstaff and Schwartz or Andersen and Broadie.
These algorithms give bounds for the option value. The Longstaff Schwartz algorithm uses Monte Carlo
simulation and least squares regression to determine an exercise strategy. With that exercise strategy a
lower bound for the option value is calculated. The algorithm of Andersen and Broadie uses an existing
exercise strategy and a martingale process to construct an upper bound for the option value.
1.1
Project description
Within ABN AMRO the Macro Exotics Trading desk trades complex interest rate derivatives. The
Quantitative Analytics Group develops models to value these derivatives. These models are developed
and stored in the C++ based Common Analytics Library (CAL). An implementation of the lower biased
algorithm of Longstaff and Schwartz is already available in CAL. The quality of the estimate depends on
the chosen explanatory variables. The quality of a given set of explanatory variables can be verified by
showing that the lower biased estimate is close to an upper bound. The main goal of my thesis work is to
implement an upper bound algorithm dual to the Longstaff-Schwartz algorithm for Bermuda-style interest
rate derivatives and determine its quality relative to Longstaff-Schwartz. The upper bound algorithm is
to be added to CAL.
1.2
Overview of the report
We start with a short description of some of the interest rate derivatives that are traded at the Macro
Exotics Trading desk in Chapter 2. In Chapter 3 we learn more about the Black-Scholes model and its
extensions for the valuation of European interest rate derivatives. In Chapter 4 we pose the Bermudan
option valuation problem. The binomial tree model for tha valuation of Bermudan options is introduced
in Chapter 5. In Chapter 6 we find algorithms to calculate bounds for the value of Bermudan options
via simulation. We propose two alternative procedures so far not described in the literature. We discuss
the implementation matters in Chapter 7. In Chapter 8 we present the results of the different simulation
based lower and upper bound algorithms. Finally we give the conclusions and recommendations of this
project in Chapter 9.
P
D
G
5
January 4, 2008
2. INTEREST RATE DERIVATIVES
2
Interest rate derivatives
At the macro exotics trading desk complex interest rate derivatives are traded. Interest rate derivatives
are financial instruments for which the payoff depends on the level of interest rates in some way. We first
give a short introduction about the different products that we find in interest rate derivatives trading.
For more background information about these products see [10].
2.1
Zero coupon bonds
Bonds are debt securities, in which the issuer owes the holder a debt and is obligated to pay periodic
interest payments (coupons) and repay the principal at the end date of the agreement (the maturity
date).
A zero coupon bond with maturity date T , is a bond that does not pay coupons. The holder of a zero
coupon bond receives the principal when the bond matures. The zero coupon bond is called the risk-free
security because the holder knows with certainty the amount of money he receives at the maturity date.
When calculating the value of a zero coupon bond we use therefore the risk-free rate. That is the rate at
which money is borrowed or lent without credit risk, so that the money is certain to be repaid.
2.1.1
Valuation of zero coupon bonds
The time t value of a zero coupon bond with maturity date T is equal to the time t value of the amount
of money received at time T . The time t value is calculated by discounting at the risk-free rate r. We
consider zero coupon bonds that pay 1 unit of currency on the maturity date, so we can easily use them
as discount factors. Let B (t, T ) denote the time t value of the zero coupon that pays 1 unit of currency
at time T , where t ≤ T. In case of a constant continuously compounded risk-free rate r we have to solve
dB (t, T ) = rB (t, T ) dt with B (T, T ) = 1.
We find that B (t, T ) = exp (− (T − t) r). In order to determine the time t value of an amount of money
received at time T we need to multiply the amount by B (t, T ). The zero coupon bond paying 1 unit of
currency at maturity is also known as pure discount bond, i.e. the asset with which we discount the future
cash flow to the value of money at time t.
2.2
Interest rates
Interest is the fee paid for borrowed money. The interest rate is the percentage of the principal a borrower
promises to pay to a lender as fee. The level of the interest rate depends on the risk that there is a default
by the borrower. The higher the risk, the higher the interest rate.
In Section 2.1.1 we used continuous compounded interest rate. If we use simple interest, an amount of 1
unit of currency grows in the interval [0, T ] to 1 + rT . Remark that this is a first order approximation of
exp (rT ), the amount we get from continuously compounded rate.
Small changes in interest rates are often measured in basis points. A basis point is 0.01% per annum.
2.2.1
Forward rates
We use the pure discount bond defined earlier to introduce the concept of forward rates. We create a
contract at time t that allows us to invest one unit of currency at time T1 and gives a deterministic rate
of return at time T2 , where t < T1 < T2 . In other words the contract guarantees a risk-free interest rate
over the future interval [T1 , T2 ]. Such an interest rate is called a forward rate. A forward rate agreement
can be replicated as follows:
We sell at time t one bond maturing at time T1 for B (t, T1 ) and we buy k bonds with maturity time T2
for B (t, T2 ) per piece. We choose k such that the net investment at time t is zero, i.e.
B (t, T1 ) − kB (t, T2 ) = 0.
P
D
G
6
January 4, 2008
2. INTEREST RATE DERIVATIVES
At time T1 we are obliged to pay 1 unit of currency to the holder of the bond. On the other hand we
receive k = B (t, T1 ) /B (t, T2 ) units of currency at time T2 . We now have a contract at time t such that
an investment of 1 unit of currency at time T1 has yielded B (t, T1 ) /B (t, T2 ) units of currency at time
T2 without risk.
The calculation of the forward rate implied by this construction depends on the way it is quoted. We
calculate the forward rate quoted as continuously compounded rate and as simple rate. The simple forward
rate or LIBOR rate L which is quoted in the market, is the solution to the equation
1 + δL =
B (t, T1 )
,
B (t, T2 )
and the continuously compounded forward rate R is the solution to the equation
exp (δR) =
B (t, T1 )
,
B (t, T2 )
where δ is the day count fraction for the interval [T1 , T2 ]. The day count fraction depends on the day
count convention, i.e. the way we calculate the length of a time period we accrue interest over. For more
information about day count conventions, see [10] Section 6.1.
2.2.2
LIBOR market model
LIBOR is short for London Interbank Offer Rate. It is the interest rate at which a bank is prepared
to deposit money with other banks in the London interbank market. The LIBOR is quoted daily for
different maturities and different currencies. LIBOR is quoted as a simple interest rate. EURIBOR, the
Euro Interbank Offer Rate is an equivalent rate, quoted in the euro interbank market.
The LIBOR market model, also referred to as the BGM model [4], is an interest rate model used for the
pricing of interest rate derivatives, e.g. Bermudan swap options. The model primitives are a set of LIBOR
forward rates, which have the advantage of being directly observable in the market. A δ-year forward
LIBOR rate is a LIBOR rate over a period with a fixed length δ = T2 − T1 , e.g. δ = 14 or δ = 12 for the
3-months or 6-months forward LIBOR rate respectively. The δ-year forward LIBOR rate at time t for
the interval [T, T + δ] is denoted by
1 B (t, T ) − B (t, T + δ)
L (t, T, δ) =
.
(1)
δ
B (t, T + δ)
2.3
Interest rate swaps
An interest rate swap is an agreement between two parties to exchange future interest payments on a
notional principal amount N, shortly called notional, according to a prearranged formula. The notional is
never exchanged by both parties, it is simply used to determine the magnitude of the interest payments.
The most common type of swap is the “plain vanilla” interest rate swap. The parties exchange fixed
interest rate payments for floating interest rate payments. In most swap agreements the floating rate is
related to the LIBOR or EURIBOR observed in the market. The payer pays a prespecified fixed rate Rfix
on the notional and receives the floating rate observed in the market Rfl on the notional.
Swaps can be extended with exotic features, e.g. a range accrual swap is a swap for which the interest on
one side accrues only when the floating rate is within a certain range. Note that the value of some exotic
swaps is path-dependent. Therefore it is difficult in general to value these swaps analytically. Interest rate
swaps are often used by companies to alter their exposure to interest rate fluctuations.
P
D
G
7
January 4, 2008
2. INTEREST RATE DERIVATIVES
2.3.1
Valuation of swaps
The value of a plain vanilla swap can be calculated analytically. From the fixed rate payer’s point of view,
the time 0 value of the swap Vswap is equal to the difference between the floating-rate payments received
and the fixed-rate payments paid.
Vswap = Bfl − Bfix
where Bfl is the time 0 value of a bond with floating-rate coupon payments and Bfix is the time 0 value
of a bond with fixed-rate coupon payments. The value of these bonds is calculated by discounting the
received cash flows of the bonds. The duration of the agreement is l years with m payments per year. We
assume for ease of the example that the payment dates of the fixed and floating rate are the same. Say
k
that the start date of the swap is t0 ≥ 0. Then the payment dates are tk = t0 + m
with k = 1, ..., N with
N = l · m. The discounted cash flows from Bfix and Bfl are worth
Bfix
= N
N
B (0, tk ) Rfix δ k
k=1
Bfl
= N
N
B (0, tk ) Lk−1 δ k
(2)
k=1
where δ k = tk − tk−1 and Lk−1 is the LIBOR interest rate for period [tk−1 , tk ] observed at time tk−1 . We
know from (1) that
1 B (tk−1 , tk−1 ) − B (tk−1 , tk )
Lk−1 = L (tk−1 , tk−1 , δ k ) =
.
δk
B (tk−1 , tk )
We use that B (tk−1 , tk−1 ) = 1 to obtain
Lk−1 =
1
δk
1
B (tk−1 , tk )
−1
We get for (2)
N N
B (0, tk )
= N
− B (0, tk ) = N
(B (0, tk−1 ) − B (0, tk ))
B (tk−1 , tk )
Bfl
k=1
k=1
= N (B (0, t0 ) − B (0, tN )) .
where we use that
2.3.2
B(0,tk )
B(tk−1 ,tk )
= B (0, tk−1 ).
Swap rate
The fixed interest rate for which the swap has value zero, i.e. Bfl = Bfix is called swap rate. Denote the
swap rate at time t ≤ ti , (i = 0, ..., N − 1) for a swap with payment dates ti+1 , ..., tN with sti (t). We find
an expression for sti (t) by solving the equation
(B (t, ti ) − B (t, tN )) =
N
B (t, tk ) sti (t) δ k .
k=i+1
We end up with
(B (t, ti ) − B (t, tN ))
sti (t) = N
.
k=i+1 B (t, tk ) δ k
(3)
For t = ti we use short notation st := sti (ti ).
P
D
G
8
January 4, 2008
2. INTEREST RATE DERIVATIVES
2.4
Options
A call option gives the holder the right to buy an asset for a certain price by a certain date from the writer
of the contract. A put option gives the holder the right to sell an asset for a certain price at a certain
date to the writer of the contract. The date specified in the contract is called the expiration date and the
price is known as exercise price or strike price. Generally there are three option styles, determining when
the option may be exercised. We have European, Bermudan and American style.
• A European option can only be exercised on the expiration date.
• A Bermudan option can be exercised once on several prespecified dates up to the expiration date.
• An American option can be exercised once at any time up to the expiration date.
2.4.1
Swap options
A swap option or swaption gives the holder the right to enter into an interest rate swap starting at time
T with a prespecified swap rate sK . We call this swap rate the strike rate. At exercise time T the holder
of the swaption decides whether to enter the swap or not. This depends on the swap rate sT observed in
the market at the time of exercising. In case the holder has to pay the fixed rate he enters the swap only
if the strike rate is below the swap rate in the market. When the holder receives fixed rate he enters the
swap only if the strike rate is higher than the market swap rate.
The Bermudan swaption allows the owner to enter the swap on a sequence of dates, called notification
dates.
P
D
G
9
January 4, 2008
3. THE VALUATION OF EUROPEAN OPTIONS
3
The valuation of European options
We use a one-step binomial model for stocks to introduce the concept of risk-neutral valuation. Then we
extend to a lognormal stock price model that leads to the famous Black-Scholes pricing formula. Finally
we use Black’s model in order to look at a broader class of lognormal distributed underlying processes
among which the swap rate process. We use Black’s model to calculate the value of European plain vanilla
swap options.
We consider European options on an asset with maturity time T . The value of the underlying asset is
driven by a lognormal distributed random variable Xt . In Section 3.1 and 3.2 we consider the stock price
process as the underlying process. Therefore in these sections we use the variable St instead of Xt . The
payoff from the option is a function ψ (XT ) since we are only allowed to exercise the option at time T .
We want to know the price of the claim ψ (XT ) or equivalently the cost of replicating the claim ψ (XT ).
In order to determine the time 0 value of the option we discount at the risk-free rate r. Hereto we divide
cash flows at time T by 1 + rT .
3.1
One-step binomial model
Consider a stock whose initial price is S0 and an option on the stock with current value v. The option
matures at time T = 1. We assume that the stock price can only move up from S0 to S0 u, where u > 1,
or down to S0 d where 0 < d < 1. The values u − 1 and 1 − d are the percentage of increase and decrease
over one unit of time respectively. Suppose that the payoff from the option is vu = ψ (S0 u) when the
stock price moves up to S0 u and the payoff is vd = ψ (S0 d) when the stock price moves down to S0 d.
We now construct a portfolio of stocks and options whose value does not depend on the movement of the
stock price. Hereto we buy ∆ shares (∆ > 0) and sell one option of value v. After an up movement the
value of our portfolio becomes
S0 u∆ − vu
and after a down movement the value of the portfolio becomes
S0 d∆ − vd .
The value of our portfolio is independent of the movement of the stock price when the following equality
holds
S0 u∆ − vu = S0 d∆ − vd .
(4)
We determine the number of stocks we need to buy by solving equation (4). We find that for
∆=
vu − vd
S0 u − S0 d
(5)
the value of our portfolio is the same for an up movement and a down movement.
We determine the present value of the portfolio by discounting at the risk-free rate r > 0 such that the
present value of the portfolio is given by
(S0 u∆ − vu )
.
1+r
The costs of setting up the portfolio are S0 ∆ − v. The value of the option should be such that
(S0 u∆ − vu )
1+r
u
vu
v = S0 ∆ 1 −
+
.
1+r
1+r
S0 ∆ − v =
or
Substituting ∆ from (5) we get
v=
[pvu + (1 − p) vd ]
1+r
(6)
1+r−d
.
u−d
(7)
where
p=
P
D
G
10
January 4, 2008
3. THE VALUATION OF EUROPEAN OPTIONS
3.1.1
Risk neutral valuation
During the valuation of the option we did not make any assumption about the probability of up and
down movements of the stock price. Let P be the probability distribution of the movement of the stock
price. The probability of an up movement is p̄ and the probability of a down movement is 1 − p̄. We
assume that both up movements and down movements occur with a positive probability, i.e. 0 < p̄ < 1.
We define the expected stock price with respect to P by
EP [S1 ] = S0 u · p̄ + S0 d · (1 − p̄).
We prefer to write the option value as an expectation. Under the probability measure P this is not
possible. Therefore we use the concept of an equivalent measure.
Consider an alternative probability distribution Q such that the probability of an up movement is p with
0 ≤ p ≤ 1. The expected value with respect to Q is given by
EQ [S1 ] = S0 u · p + S0 d · (1 − p).
We say that Q is P-equivalent if for any measurable event A we have
P(A) = 0
if and only if
Q(A) = 0.
This is the case if 0 < p < 1 whenever 0 < p̄ < 1.
We take p as defined in (7), i.e.
p=
1+r−d
.
u−d
Then Q = (p, 1 − p) is a P-equivalent probability distribution if and only if d < 1 + r < u. Assume now
that d and u satisfy d < 1 + r < u such that we have an equivalent measure. Variable p is now interpreted
as the probability of an up movement of the stock price and 1 − p as the probability of a down movement.
The expression
pvu + (1 − p) vd
in (6) is the expected payoff from the option. In order to obtain the value of the option today we discount
at the risk-free rate r. The expected stock price is given by
EQ [S1 ] = S0 u · p + S0 d · (1 − p)
u − (1 + r)
(1 + r) − d
= S0 u
+ S0 d
u−d
u−d
(1 + r) u − (1 + r) d
= S0
u−d
= S0 (1 + r) .
This means that under the probability measure Q the stock price grows on average at the risk-free rate.
Under the probability measure Q the expected return on risky assets, e.g. stocks equals the risk-free
rate. In a risk-neutral world investors don’t require any compensation for risk. Therefore we call Q the
risk-neutral measure. Furthermore remark that under probability measure Q we have
S1
= S0 .
(8)
EQ
1+r
Therefore Q is also called equivalent martingale measure. The definition of a martingale is given in Section
4.1.
P
D
G
11
January 4, 2008
3. THE VALUATION OF EUROPEAN OPTIONS
3.2
The Black-Scholes model
In 1973 Black and Scholes [3] came up with a mathematical model for the valuation of European stock
options. The model is still widely used in finance.
We consider European call and put options on stocks with price process {St ; 0 ≤ t ≤ T }, maturity T and
strike price K. We assume that the relative change of the stock price is equal to a constant drift term
and a stochastic noise term. We value the option in a risk-neutral setting. Hereto we set the drift rate
equal to the risk-free rate r. We obtain the following stochastic differential equation for the stock price:
dSt
= rdt + σdWt
St
or
dSt = rS t dt + σSt dWt
with r the expected rate of return, σ the volatility of the asset price and Wt a Wiener process. The
solution is a geometric Brownian motion
σ2
St = S0 exp
r−
t + σWt .
(9)
2
The stock price follows a lognormal distribution, i.e.
√
σ2
ln St ∼ N ln S0 + r −
t, σ t
2
where N (m, s) denotes a normal distribution with mean m and standard deviation s.
We express the value of a European option as the expected value of the payoff with respect to the riskneutral measure Q and discount at the risk-free rate r. Hereto we use the discount factor Dt = exp (−rt).
Remark that D1t is interpreted as the value of a security that is worth 1 unit of currency at time 0 and
earns a continuously compounded fixed rate r. This security is called the money market account. For the
rest of this thesis we denote the expectation with respect to the risk-neutral measure with E [·] instead
of EQ [·]. The time 0 value of the European call option, C and the value of the European put option, P
is given by
C = E [DT max(0, ST − K)]
and
P = E[DT max(0, K − ST )]
respectively. Remark that Q is the probability distribution such that E [ST ] =
This leads us directly to the Black-Scholes pricing formulas:
C
S0
DT
with DT = exp(−rT ).
= DT (E [ST ] Φ(d1 ) − KΦ(d2 ))
= S0 Φ(d1 ) − DT KΦ(d2 )
and
P
= DT (KΦ(−d2 ) − E [ST ] Φ(−d1 ))
= DT KΦ(−d2 ) − S0 Φ(−d1 )
where
σ2
+
r
+
T
K
2
√
√
d1 =
=
σ T
σ T
and
2
2
T]
ln E[S
− σ2 T
ln SK0 + r − σ2 T
K
√
√
=
.
d2 =
σ T
σ T
The function Φ(x) is the cumulative probability distribution function for the standard normal distribution.
A more elaborate derivation is given in [10] or [18].
ln
P
D
G
E[ST ]
K
+
σ2
2 T
ln
12
S0 January 4, 2008
3. THE VALUATION OF EUROPEAN OPTIONS
3.3
Black’s model
The Black-Scholes model allows us to calculate values of European options on stocks. In 1976 Fischer
Black [2] extended the Black-Scholes model by allowing a larger class of underlying processes than only
the stock price process. This model is called Black’s model.
We leave the stock price process and consider European options with underlying process Xt . The variable
Xt does not have to be the price of the traded security, as long as the price of the security depends on
Xt . The assumption of Black’s model is that the distribution of the time T value of the variable, XT is
lognormal under the risk-neutral measure.
For ease of exposition we let Xt denote the time t price of the traded security and K the strike price.
Then the payoff from a call option on the security at time T is equal to max (XT − K, 0). The expected
payoff with respect to the risk-neutral measure is under Black’s model calculated as follows
E [max (0, XT − K)] = E [XT ] Φ (d1 ) − KΦ (d2 )
where
ln
d1
=
ln
d2
=
E[XT ]
K
√
σ T
E[XT ]
K
√
σ T
+
σ2
2 T
−
σ2
2 T
√
= d1 − σ T .
For the time 0 value of the call option, C we have to discount at the risk-free rate r with DT = exp (−rT ).
C = DT (E [XT ] Φ (d1 ) − KΦ (d2 ))
where we can replace E [XT ] with F0 , the forward value of XT at time 0. For the sake of completeness
the value of the put option, P is given by
P = DT (KΦ (−d2 ) − E [XT ] Φ (−d1 )) .
With this model we can calculate the value of European swap options. Consider an option on a l-year
fixed for floating swap on a notional N with m payments per year starting at time T . Then the maturity
k
time of the swaption is T and the payment dates are tk = T + m
with k = 1, ..., n and n = l · m. Let sK
be the strike rate and let sT be the swap rate at time T for the swap starting at time T . Then the payoff
we get from the swap option over one accrual period is equal to
N
max (0, sT − sK ) .
m
Because when the swap rate at maturity sT is higher than the strike rate sK we accrue the difference in
1
interest rate on an amount N over a period of length m
. And when the swap rate at maturity is lower
we won’t exercise and have no profit from the option. We assume that the distribution of the swap rate
at maturity sT is lognormal. Then we can use Black’s model to calculate the expected payoff over one
accrual period. The time 0 value of a cash flow received at time tk is equal to
N
Dt (E [sT ] Φ (d1 ) − sK Φ (d2 )) ,
m k
where
ln
d1 =
P
D
G
E[sT ]
sK
+
√
σ T
13
σ2
2 T
January 4, 2008
3. THE VALUATION OF EUROPEAN OPTIONS
and
ln
d2 =
E[sT ]
sK
−
√
σ tk
σ2
2 T
√
= d1 − σ T .
For a l-year swap with m payments per year there are n = l · m cash flows. The total value of the swap
option at time t < T is then given by
Vpayer swap (t) =
n
N Dtk
(E [sT ] Φ (d1 ) − sK Φ (d2 ))
m Dt
k=1
where the expected swap rate at maturity is equal to the forward swap rate at time t, i.e. E [sT ] = s0 (t)
In case the swap option gives the holder the right to receive the fixed rate sK instead of paying it, the
payoff from the swap option becomes
N
max (0, sK − sT ) .
m
The value is then given by
Vreceiver swap (t) =
n
N Dtk
(sK Φ (−d2 ) − s0 (t) Φ (−d1 )) .
m Dt
k=1
P
D
G
14
January 4, 2008
4. THE BERMUDAN OPTION VALUATION PROBLEM
4
The Bermudan option valuation problem
In the literature various authors introduced methods to calculate the value of American options via
simulation (see [1],[9],[11] and [16]). The starting point of these methods is to discretize the time interval
to get a finite subset of exercise moments. This leads to an approximation of the American option
by a Bermudan option. The more exercise moments we allow for the Bermudan option, the better it
resembles the American option. The option valuation problem is mathematically equivalent to an optimal
stopping problem. A detailed description of the convergence from discrete time (i.e. Bermudan options)
to continuous time (i.e. American options) is given in [6]. Throughout the remainder of this report we
focus on the valuation of Bermudan options.
We start this chapter with some definitions and theorems we need for the formulation of the Bermudan
option valuation problem. The definitions and theorems that are given for the continuous time case have
discrete time equivalents. For proofs of the theorems see e.g. [18] and [15]. In order to determine the value
of a Bermudan option we look from two different angles to the option. In Section 4.2 we look from the
perspective of the holder of the option, willing to find the optimal exercise moment for the option. In
Section 4.3 we look from the issuers point of view, willing to find the optimal hedge, i.e. the hedge with
the minimal shortfall. These two different perspectives provide us with a duality relation for the value of
the Bermudan option. We use this duality relation to construct lower bounds and upper bounds for the
option value in Chapter 6. We conclude this chapter with a short note on the convergence from discrete
to continuous time in the one-dimensional optimal stopping problem.
4.1
Martingales and stopping times
We consider stochastic processes depending on time. We denote the time set by T and require that
T ⊂ [0, ∞). Let (Ω, F, Q) be a probability space equipped with a filtration {Ft }, where {Ft ; t ∈ T } is a
nondecreasing family of sub-σ-fields of F, i.e. Fs ⊆ Ft ⊆ F for s ≤ t with s, t ∈ T . The filtration Ft is
interpreted as the information known up to and including time t. If the stochastic process {Xt ; t ∈ T } is
such that each Xt is Ft measurable, then we say that Xt is adapted to the filtration.
Definition 1 A stochastic process {Mt ; t ∈ T } adapted to {Ft } is a martingale adapted to filtration {Ft }
if E [|Mt |] < ∞ for all t ∈ T and
E [ Mt | Fs ] = Ms for all s ≤ t with s, t ∈ T .
(10)
A stochastic process {Mt ; t ∈ T } on the probability space (Ω, F, Q) adapted to {Ft } is a submartingale
(respectively supermartingale) with respect to {Ft } if E [|Mt |] < ∞ for all t ∈ T and
Ms ≤ E [ Mt | Fs ] (respectively, Ms ≥ E [ Mt | Fs ] ) for all s ≤ t with s, t ∈ T .
Martingales play an important role in financial mathematics. This is because discounted value processes
are martingales with respect to the risk-neutral measure Q corresponding to the discount process. In (8)
we saw that the martingale property holds for the discounted binomial stock price process.
Another key role is played by stopping times.
Definition 2 Stopping time. A random variable τ : Ω → T ∪ {∞} is called a stopping time for the
filtration {Ft } if
{ω ∈ Ω : τ (ω) ≤ t} ∈ Ft for all t ∈ T .
In order to determine whether time t is a stopping time we can only use the information history up to
time t. The same holds for the decision whether to exercise an option or not. We are not supposed to
have any knowledge about the future state of the economy. For this reason stopping times and exercise
strategies are used interchangeably throughout this report.
Definition 3 Let {Xt ; t ∈ T } be a stochastic process and τ be a stopping time for {Ft }. Then the stopped
or sampled process {Xt∧τ } is defined for t ∈ T on the set {ω : τ (ω) < ∞} by taking
Xt (ω)
if t < τ (ω),
Xt∧τ (ω) :=
Xτ (ω) (ω) if t ≥ τ (ω).
P
D
G
15
January 4, 2008
4. THE BERMUDAN OPTION VALUATION PROBLEM
Modulo some technical conditions on {Xt } and {Ft } in case T is not countable we obtain from Proposition
2.18 of [12] that the stopped process {Xt∧τ } is adapted to the filtration {Ft }.
Theorem 4 (Doob’s Continuous-Time Stopping Theorem) Let {Mt ; t ∈ T } be a martingale adapted to
{Ft } and τ a stopping time for the filtration {Ft }. Then the stopped process {Mt∧τ } is also a martingale
adapted to {Ft }. The same holds if we replace “martingale” with “submartingale” or “supermartingale”.
Proof. See the proof of Theorem 4.1 in [18]
We finish this section with the Doob decomposition for discrete supermartingales. Supermartingales can
be decomposed into a martingale and a predictable process, a property we use in Section 4.3. Instead of
index t ∈ T we use the index n ∈ N.
Definition 5 A random sequence {An ; n ≥ 0} adapted to {Fn } is called increasing, if for P-a.e. ω ∈ Ω
we have 0 = A0 (ω) ≤ A1 (ω) ≤ ..., and E (An ) < ∞ holds for every n ≥ 0.
Definition 6 A random sequence {ξ n }∞
n=0 is called predictable (or nonanticipating) for the filtration
{Fn }∞
n=0 , if for every n ≥ 1 the random variable ξ n is Fn−1 -measurable.
Theorem 7 Doob’s decomposition. If the process {Xn , n ≥ 0} is a supermartingale, then it admits a
decomposition Xn = Mn − An with {Mn ; n ≥ 0} a martingale and {An ; n ≥ 0} an increasing predictable
process. If we take A0 = 0 this decomposition is unique.
Proof. We know that Xn is a supermartingale hence Xn−1 ≥ E[Xn |Fn−1 ]. Now let’s take A0 = 0 and
An = An−1 + Xn−1 − E[Xn |Fn−1 ] for n ≥ 1. Then the process An is increasing and nonanticipating, i.e.
An ≥ An−1 and An ∈ Fn−1 . To complete the decomposition we take Mn = Xn + An and verify that this
provides us with a martingale.
E [Mn |Fn−1 ] = E [Xn + An |Fn−1 ]
= E [Xn |Fn−1 ] + (An−1 + Xn−1 − E [Xn |Fn−1 ])
= Xn−1 + An−1 = Mn−1 .
4.2
The primal pricing problem
The Bermudan option with maturity time T has a finite number of exercise opportunities N . The set of
possible exercise times T is equal to {t1 , t2 , ..., tN } with 0 = t0 < t1 < t2 < ... < tN = T . Let (Ω, F, P) be
a probability space equipped with a filtration {Ft ; t ∈ T }. For any 0 ≤ s < t < ∞ we define
Ss,t = {τ ; τ is a stopping time and τ ∈ [s, t] ∩ T } .
(11)
The collection Ss,t contains all stopping times by which a process is stopped not earlier than time s and
not later than time t. Remark that S0,T is the set of all stopping times in the interval [0, T ] and that
Stk ,T is the set of all stopping times in the interval [tk , T ].
We consider options on a general underlying asset. Let {Xt = (Xt1 , ..., Xtm ) : t ∈ T } be a vector-valued
Markov process on Rm with fixed initial state X0 . The vector Xt ∈ Rm represents the state of the
economy at time t. One reason for using a Markov process is that we assume that the current state of the
economy reflects the whole economic history. In economy this assumption is called the weak-form market
hypothesis.
For discounting we use the money market account with the fixed risk-free rate r. The time 0 value of a
cash flow received at time t is calculated via multiplication with discount factor Dt = exp (−rt) for t ∈ T .
We use the discount factor Dt for the rest of this report. Let {Zt ; t ∈ T } be the payoff process such that
P
D
G
16
January 4, 2008
4. THE BERMUDAN OPTION VALUATION PROBLEM
Zt is the payoff of an option that is exercised at time t, with Zt = ψ(Xt ). For the put option with strike
price K we have that Zt = max(K − Xt , 0), t ∈ T and for the call option with strike price K we have
Zt = max(Xt − K, 0), t ∈ T . For swap options we have Zt = max (0, Vswap (t, sK ) − Vswap (t, st )), where
Vswap (t, R) denotes the value of entering the underlying swap at time t ∈ T at swap rate R, sK is the
strike rate and st is the swap rate in the market at time t ∈ T .
Define {Vt ; t ∈ T } as the value process of the Bermudan option with Vt denoting the option value at time t
given it is not exercised before time t. From the holder’s point of view we have to find an optimal exercise
strategy, i.e. an exercise strategy that maximizes the expected payoff from the option. Let stopping
time τ ∈ S0,T represent a possible exercise moment in the time interval [0, T ]. In the context of options a
stopping time is another word for exercise strategy. For every scenario ω ∈ Ω the stopping time τ : Ω → T
indicates what time we need to exercise. The indicated exercise time is then τ (ω). From mathematical
point of view we need to find an optimal stopping time for the payoff process {Zt ; t ∈ T }. We call problem
of finding the optimal stopping time for the payoff process the primal problem.
Definition 8 Optimal stopping. A stopping time τ ∗ is called optimal for the stochastic process {Xt } if
E[Xτ ∗ ] = max E[Xτ ].
τ ∈S0,T
Remark that since the number of possible stopping times in the set S0,T is finite we use the maximum
instead of the supremum.
Primal problem:
V0 = max E
τ ∈S0,T
Dτ Zτ F0 .
D0
(12)
For the holder at time 0 the option is worth the expected payoff from the option discounted to time 0.
Remark that D0 = 1. We include D0 in order to keep a general notation. The holder is prepared to pay
at most V0 , i.e. the expected payoff from the optimal exercise strategy.
In the remainder of this section we denote processes depending on tk with index k (k = 1, ..., N ), e.g.
Fk := Ftk and Vk := Vtk . We define Vk to be the expected payoff from following the optimal stopping
rule from time tk on, given we did not exercise before time tk .
Dτ Vk = max E
Zτ Fk
τ ∈Stk ,T
Dk or equivalently
Vk = max Zk ,
max
τ ∈Stk+1 ,T
Dτ E
Zτ Fk
.
Dk The value of the option at time tk given it is not exercised earlier, is the maximum of the payoff from
immediately exercising and the expected continuation value. At maturity time the continuation value of
the option is equal to 0. Hence
VN = ZN .
Now we introduce the discounted processes
Ṽk = Dk Vk
(13)
Z̃k = Dk Zk
to set up a recursive relation for the process Ṽk .
(14)
and
P
D
G
17
January 4, 2008
4. THE BERMUDAN OPTION VALUATION PROBLEM
Definition 9 The stochastic process
Ṽk defined as

 ṼN = Z̃N
 Ṽk = max E Z̃τ Fk ,
τ ∈Stk ,T
is called the Snell envelope [17] of
0≤k ≤N −1
(15)
Z̃k .
We find that the discounted value process Ṽk is the Snell envelope of the discounted payoff process
Z̃k . Now we use several properties of the Snell envelope.
Lemma 10 For all k ∈ {1, ..., N − 1} we have
Ṽk = max Z̃k ,
max
τ ∈Stk+1 ,T
E Z̃τ |Fk
.
(16)
Proof. See proof of Lemma 15.10 in [15]
The discounted option value Ṽk is the maximum of the discounted value of exercising at time tk and the
discounted expected continuation value.
Proposition 11 For all k ∈ {1, ..., N } the following recursion formula holds:
Ṽk = max Z̃k , E[Ṽk+1 |Fk ]
(17)
Proof. See proof of Proposition 15.11 in [15]
Corollary 12 The Snell envelope {Ṽk } of {Z̃k } is a supermartingale. It is the smallest supermartingale
that dominates {Z̃k },i.e. such that
Ṽk ≥ Z̃k
for all k ∈ {1, ..., N }.
Proof. First we verify that the supermartingale property holds for {Ṽk }:
Ṽk = max{Z̃k , E[Ṽk+1 |Fk ]} ≥ E[Ṽk+1 |Fk ]
Then we prove that Ṽk is the smallest supermartingale dominating Z̃k . Assume that Ũk is any
supermartingale dominating Z̃k , i.e.
Ũk ≥ Z̃k
for k ∈ {1, ..., N } . Together with the supermartingale property we find that
Ũk ≥ max Z̃k , E Ũk+1 Fk .
Since ŨN dominates Z̃N and ṼN = Z̃N holds we have ŨN ≥ ṼN . Applying a backward induction argument
shows that Ũk ≥ Ṽk for k = 1, ..., N .
Theorem 13 A stopping time τ ∈ S0,T is optimal if and only if the stopped Snell envelope {Ṽk∧τ } is a
martingale and
Ṽτ = Z̃τ .
If τ ∗ is an optimal stopping time, then we have
Proof. See proof of Theorem 15.13 in [15]
P
D
G
Ṽ0 = E Z̃τ ∗ |F0 .
18
January 4, 2008
4. THE BERMUDAN OPTION VALUATION PROBLEM
4.3
The dual pricing problem
In Section 4.2 we derived the option value from the holder’s perspective. The holder of the option wants
to have an optimal exercise strategy. The seller on the other hand must keep enough wealth to pay the
payoff to the holder of the option, should the option be exercised. Therefore we need to have a portfolio
{φt ; t ∈ T } that is worth at least the payoff from exercising, i.e. the portfolio must satisfy
V (φt ) ≥ Zt
for t ∈ T
where V (φt ) denotes the value of the portfolio at time t ∈ T . The initial value of the portfolio is given by
V (φ0 ). We call such a portfolio a hedge or hedging strategy. There is a one-to-one correspondence between
a hedge {φt } for the payoff process {Zt } and a martingale {Mt } dominating {Z̃t }. The discounted value
of the portfolio Ṽ (φt ) is a martingale process with respect to the risk-neutral measure. On the other hand
can a martingale process dominating the payoff
process be replicated by a self-financing portfolio {φt }.
Assume that martingale {Mt } dominates Z̃t and set
Xt =
Mt
Dt
Then
Xtcan be replicated by a self-financing portfolio {φt } such that V(φt ) = Xt . We know that processes
Ṽ (φt ) and {Mt } have the same terminal value. We conclude that Ṽ (φt ) and {Mt } coincide. Since
{Mt } dominates Z̃t we infer that
V (φt ) ≥ Zt
t
holds for k ≥ 1. We have constructed a hedge with a value process equal to M
Dt . We call the martingale
representing the discounted value process of the hedging portfolio a hedging martingale.
Now we consider a special class of martingales and investigate how well they perform as hedging martingales. Let H01 be the space of adapted martingales {Mt ; t ∈ T } for which max |Mt | < ∞ and M0 = 0.
t∈T
The hedging martingale {Mt } ∈ H01 is interpreted as the value process of a portfolio with initial value 0.
For a martingale {Mt } ∈ H01 , we have:
Ṽ0 = max E Z̃τ − Mτ + Mτ F0
τ ∈S0,T
= max E Z̃τ − Mτ F0
τ ∈S0,T
≤ E max Z̃τ − Mτ F0
(18)
τ ∈S0,T
where inequality (18) is explained by the fact that for any t ∈ T
E Z̃t − Mt F0 ≤ E max Z̃τ − Mτ F0
τ ∈S0,T
holds.
Define for a fixed hedging martingale {Mt } the random variable
η = max Z̃τ − Mτ .
τ ∈S0,T
The variable η is interpreted as the maximum shortfall of the hedging martingale Mt . Now we have for
t∈T
Z̃t ≤ η + Mt .
P
D
G
19
January 4, 2008
4. THE BERMUDAN OPTION VALUATION PROBLEM
Set ηt ≡ E [ η| Ft ] and take the conditional expectation given Ft :
Z̃t ≤ ηt + Mt for t ∈ T .
The amount Z̃t that has to be paid to the holder of the option if he exercises at time t is almost hedged by
Mt , i.e. the discounted value of the hedging portfolio at time t. This means that at time t the immediate
exercise value Z̃t is smaller than or equal to Mt except for the expected maximum shortfall η t . The issuer
of the option chooses Mt such that the expected maximum shortfall is minimized. In that case we call
the hedge an optimal hedge.
Dual problem:
Ũ0 = inf 1 E max Z̃τ − Mτ F0
τ ∈S0,T
M∈H0
(19)
The issuer of the option wants to earn the expected maximum shortfall of the hedging martingale. The
issuer needs to earn at least Ũ0 , i.e. the expected maximum shortfall of the optimal hedging martingale.
Remark that when the hedging portfolio has initial value Ũ0 the expected maximum shortfall of the
hedging martingale is zero.
As a starting point of finding the optimal hedging martingale we use the discounted value process Ṽk
as defined in (13). Recall that Ṽk is smallest supermartingale dominating the discounted payoff process
Z̃k . We now have a process dominating Z̃k .The only problem left is that our hedge needs to be a
martingale instead of a supermartingale.Wefind the optimal hedging martingale by taking the martingale
part from the Doob’s decomposition of Ṽk . We find that the expected maximum shortfall value of the
optimal hedge and the expected payoff from the optimal exercise value coincide. In other words, the
amount of money the buyer wants to pay at most equals the amount of money the issuer wants to earn
at least.
Theorem 14 The solution of the dual problem, Ũ0 coincides with the solution of the primal problem Ṽ0 ,
i.e.
= Ũ0
(20)
Ṽ0 = max E Z̃τ F0 = inf 1 E max Z̃τ − Mτ F0
τ ∈S0,T
τ ∈S0,T
M∈H0
Zτ
1
Proof. First remark that since Ṽ0 ≤ E max B(τ
) − Mτ F0 for all M ∈ H0 (see (18)), we have that
τ
Ṽ0 ≤ inf 1 E max Z̃τ − Mτ F0
= Ũ0 .
M∈H0
τ ∈S0,T
That leaves us to prove that Ṽ0 ≥ Ũ0 . Recall that Ṽk is a supermartingale. Hence Ṽk allows a Doob
decomposition Ṽk = Ṽ0 + Mk∗ − A∗k with Mk∗ a martingale with M0∗ = 0 and A∗k an increasing process
with A∗0 = 0 and E [ Ak | Fk−1 ] = Ak . Now we substitute Mk∗ for Mk and find:
∗ Ũ0 =
inf
E max Z̃τ − Mτ F0
≤ E max Z̃τ − Mτ F0
τ ∈S0,T
τ ∈S0,T
M∈H01
= Ṽ0 + E max Z̃τ − Ṽτ − A∗τ F0 ≤ Ṽ0
τ ∈S0,T
the last inequality is because Z̃k ≤ Ṽk and Ãk ≥ 0 for all t ∈ T . Having Ṽ0 ≤ Ũ0 and Ũ0 ≤ Ṽ0 we conclude
that Ṽ0 = Ũ0 .
Dual problems oftenly appear in optimization theory. The duality result we find here can be interpreted
as an example of the minimax principle. The minimax theorem appears in game theory where player
A tries to maximize the minimal gain and player B tries to minimize the maximal loss. The minimax
principle is also used in statistics where for estimators the maximum error is minimized, see [7].
P
D
G
20
January 4, 2008
4. THE BERMUDAN OPTION VALUATION PROBLEM
4.4
Convergence of the Bermudan value to the American value
We return to the one-dimensional underlying stock price process and consider the general model
dSt
= µ (St ) dt + σ (St ) dWt ,
St
where µ : R → R, σ : R → R and W is a standard Brownian motion. We define the discounted American
option value on a stock with initial value x by
Ṽ (x) =
sup E [Dτ ψ (Sτ )| S0 = x]
σ2
= sup E Dτ max 0, K − S0 exp
r−
τ + σWτ
S0 = x
2
τ ∈S
2
σ
,
= sup E max 0, Dτ K − x exp − τ + σWτ
2
τ ∈S
τ ∈S
where S is the set of possible stopping times for the American option and ψ the payoff function. Let
LṼ (x) =
′′
′
1 2
σ (x) x2 Ṽ (x) + µ (x) xṼ (x) .
2
In case of a put option, the value function Ṽ0 (x) satisfies the dynamic programming equation
ψ (x) ,
x ∈ (0, x∗ ],
Ṽ (x) =
LṼ (x) /r,
x ∈ (x∗ , ∞) .
When the stock price is below some fixed threshold x∗ it is optimal to exercise. Otherwise the continuation
value is given by an ordinary differential equation.
We now consider the discrete problem. We allow only stopping times taking values on a time grid with
distance h. The discrete time value function satisfies the dynamic programming equation
(h)
ψ (x) ,
x ∈ (0,
(h)
x∗ ], (h)
Ṽ
(x) =
(h)
Dh E V
(Sh ) S0 = x ,
x ∈ x∗ , ∞ .
Remark that in the discrete time problem the threshold depends on h.
Dupuis and Wang show the connection between the discrete time problem and the continuous time
problem as h → 0. Their main result is that
1
Ṽ (h) (x) − Ṽ (x)
= − Ax2∗ σ2 (x∗ ) Θ − Γ2 h + o (h) ,
2
Ṽ (x)
and
(h)
x∗
√ √
= x∗ − Γx∗ σ (x∗ ) h + o
h
hold when a set of conditions on the exercise region and the functions µ, σ, ψ and V is fulfilled. Here the
constants are defined as follows:
Ṽ ′′ (x∗ −) − ψ (x∗ )
A=
> 0,
ψ (x∗ )
and
Θ=
0
1
2
E (WN − Wu ) du ≈ 0.589 and Γ =
0
1
E [WN − Wu ] du ≈ 0.582
with N = inf {n ∈ N : Wn − Wu ≥ 0}. Dupuis and Wang obtained the approximations for Θ and Γ via
Monte Carlo simulation. This result provides us with a rate of convergence of the Bermudan value to the
American value and a rate of convergence of the stopping regions. For any more details we refer to [6].
P
D
G
21
January 4, 2008
5. THE BINOMIAL TREE MODEL
5
The binomial tree model
In Section 3.1 we saw the one-step binomial model. The one-step binomial model is the most simple
version of a binomial tree model. It can be used for approximations of European option values only.
Extending the model to a binomial tree with more time steps allows us to approximate the value of
Bermudan put options. A binomial tree approach for the valuation of options was first proposed by Cox,
Ross and Rubinstein in 1979 [5].
In this chapter we give a short overview of the possibilities of the binomial tree model. Throughout this
chapter the underlying process is the stock price process St . In Section 5.1 we show how to choose the
parameters of the binomial tree model using market data. Then we explain how to use binomial trees in
the valuation of Bermudan put options on stocks without dividend payments in Section 5.2. In Section
5.4 we show that early exercise of Bermudan call options on stocks without dividend payments is never
optimal. Finally we motivate that using the binomial tree model for interest rate related options leads to
an exponential increase of computation time. Therefore we continue in Chapter 6 with simulation based
algorithms for the valuation of Bermudan options.
5.1
Choosing the parameters of the binomial tree
We consider Bermudan put options on stocks with maturity time T . We are allowed to exercise the option
on one of N exercise dates up to time T . We divide the time to maturity into N time intervals of length
T
. We assume that in one time step the stock price St goes up to a value of St u or down to a value
∆t = N
of St d, where 0 < d < 1 < u. The values u − 1 and 1 − d are the percentage of increase and decrease over
a time interval of length ∆t respectively.
Let C be one plus the rate of return over a period of length ∆t:
C =1+
St+∆t − St
St+∆t
=
= uj d1−j ,
St
St
j = 0, 1.
In order to get the continuously compounded rate of return for the stock over a period we take the
logarithm of C. Remark that in the one-step binomial model we worked with the simple rate. The
random variable log (C) has values log (u) and log (d) with probability p and 1 − p respectively. The
expected value of log (C) is then given by
u
E [log (C)] = p log
+ log (d) ,
d
and the variance by
2
2
Var (log (C)) = E (log (C)) − (E [log (C)])
u 2
u
2
2
= p log
+ (1 − p) (log (d)) − p log
+ log (d)
d
d
u 2
= p (1 − p) log
d
(21)
We choose p, u and d such that the following two conditions are satisfied for N → ∞, or equivalently
∆t → 0:
E [log (C)]
∆t
V ar (log (C))
∆t
→ r
→ σ2 .
and
(22)
(23)
With (22) and (23) we have two conditions on p, u and d. As a third condition Cox, Ross and Rubinstein
choose
1
(24)
u= .
d
P
D
G
22
January 4, 2008
5. THE BINOMIAL TREE MODEL
This condition guarantees a tree with some kind of symmetric structure. We find that (22) is satisfied
when we take
r∆t − log (d)
p=
.
log (u) − log (d)
In that case we even have that E [log (C)] = r∆t for all N . We now substitute p into (21) and use the
third condition (24) to find
u 2
= (log (u))2 − r2 (∆t)2 .
p (1 − p) log
d
Finally we need to satisfy the second condition:
V ar (log (C))
(log (u))2
=
− r2 ∆t → σ 2
∆t
∆t
√ Therefore we take u = exp σ ∆t and we end up with
for ∆t → 0.
√
√ √ r∆t + σ ∆t
√
u = exp σ ∆t , d = exp −σ ∆t , p =
.
2σ ∆t
From [5] we know that for N → ∞
log (C) − r∆t
(log (u))2 − r2 (∆t)2
converges in density to the standard normal distribution.
Having the values of u and d we can set up a tree and make approximations for the value of Bermudan
put options on stocks.
5.2
The valuation of Bermudan put options on stocks in a binomial tree
Starting with an initial value S0 we set up the tree up to time T , see Figure 1. Assume we have N
T
. We take the factors u and
equidistant possible exercise moments tk = k∆t, (k = 1, ..., N ) where ∆t = N
d as suggested in Section 5.1, i.e. u = exp (σ∆t) and d = exp (−σ∆t). At time tk we find k + 1 nodes
(j)
(j)
with values Sk = S0 uj dk−j , (j = 0, ..., k). Here Sk stands for the stock value of the jth node at time
tk . For discounting we use the discount factor Dk = (1 + r)−k∆t .
We use the recursive formula (15) and write Ṽk as in (17):
ṼN = Z̃N Ṽk = max Z̃k , E Ṽk+1 Fk
(25)
where Zk = max (K − Sk , 0) and Z̃k = Dk Zk . We refer to E Ṽk+1 Fk as the continuation value. Now
define ṽk,j as the discounted value of the put option of the jth node at time tk given the option is not
exercised earlier. From the final condition of (25) we know that
(j)
ṽN,j = DN max 0, K − SN , j = 0, .., N.
= DN max 0, K − S0 uj dN−j .
We use the backward recursion formula (25) to find values ṽk,j for 1 ≤ k ≤ N − 1. Remark that we don’t
include k = 0 since time t0 is not an exercise moment. We find that
(j)
(j)
ṽk,j = max Dk K − Sk , E ṽk+1 Sk
, j = 0, ..., k,
P
D
G
23
January 4, 2008
5. THE BINOMIAL TREE MODEL
S0u4
S0u3
S0u2
S0u
S0u
S0
S0
S0
S0d
S0u2
S0d
S0d2
S0d2
S0d3
S0d4
Figure 1: Five time steps of a binomial tree with initial value S0 . Because u =
u and d are omitted.
1
d
the mixed products of
(j)
where E ṽk+1 Sk
is the discounted continuation value of the option given that we are in node j at
time tk . Continuing from node j at time tk we can only jump up to node j + 1 or down to node j at
time tk+1 where the option is worth vk+1,j+1 or vk+1,j respectively. We know that under the risk-neutral
measure the continuation value is given by
(j)
E ṽk+1 Sk
= pṽk+1,j+1 + (1 − p) ṽk+1,j ,
(26)
where p is the probability of an up movement under the risk-neutral measure. We end up with the
following expression for ṽk,j :
ṽk,j = max Dk K − S0 uj dk−j , pṽk+1,j+1 + (1 − p) ṽk+1,j
The discounted time 0 value of the option is finally calculated by
ṽ0 = pṽ1,1 + (1 − p) ṽ1,0 .
5.3
Error estimates for the binomial approximation of American put options
For the discounted value of the American option on a stock with initial value x with Ṽ (x) we use the
same definition as in Section 4.4. Let {ǫk ; k ≥ 1} be a sequence of i.i.d. random variables, satisfying
P (ǫk = 1) = P (ǫk = −1) = 12 and let the approximation for the standard Brownian motion at time t be
√ ⌊N t/T ⌋
T k=1 ǫk
(N)
√
Wt =
.
N
Then for t =
kT
N
, k = 0, 1, ..., N, we denote the N step approximation of Ṽ (x) with
2
σ
(N)
(N )
V
(x) = max E max 0, K exp (−rτ ) − x exp − τ + σWτ
.
τ ∈S0,T
2
Lamberton gives an error estimate for the binomial value as an approximation of the American option
value. According to Lamberton these estimates are probably not optimal. He expects that the error is
O (1/N ).
P
D
G
24
January 4, 2008
5. THE BINOMIAL TREE MODEL
Theorem 15 For any real number x, there exists positive constants c and C such that
∀N ∈ N,
Moreover, if r ≤
σ2
2 ,
−
c
N
2
3
≤ V (N ) (x) − V (x) ≤
C
3
N4
.
for any real number x there exists a positive constant C̃ such that
∀N ∈ N,
V
(N )
√
4
log N 5
(x) − V (x) ≤ C̃
.
N
Proof. For the proof we refer to [13]
5.4
Bermudan call options on stocks without dividend payments
We show that the early exercise of a Bermudan call option on a stock without dividend payments is never
optimal. From now on when we mention call options on stocks we mean call options on stocks without
dividend payments. Let St be the stock price at time t and K be the strike price. Assume we exercise
on a time t < T . We exercise only if St > K such that we get a positive payoff St − K at time t. Now
consider the alternative strategy to short sell the stock at time t and buy the stock back at time T . At
time t we gain St from selling the stock and at time T we have to pay at most K for the stock, because of
the option. Assuming that the risk free rate is positive, the payoff from the alternative strategy is always
higher. Hence we never exercise the Bermudan call option before maturity time. As a consequence the
value of the Bermudan call option is equal to the value of the European call option.
5.5
Bermudan swap options
In the previous sections we used the binomial tree model to calculate the value of Bermudan stock options.
The underlying process was the one dimensional underlying stock price process {St }. For the valuation
of Bermudan swap options the binomial tree model is not applicable. The reason is that the underlying
process {Xt } is a joint Markov process with often more than 30 or 40 variables. With binomial methods
or finite difference methods the number of nodes to solve grows exponentially in the number of variables.
This leads to extremely long calculation times. Therefore the valuation generally requires Monte Carlo
simulation. We proceed with simulation based methods in the next chapter.
P
D
G
25
January 4, 2008
6. BOUNDS ON THE BERMUDAN OPTION VALUE VIA MONTE CARLO SIMULATION
6
Bounds on the Bermudan option value via Monte Carlo simulation
We start with a general introduction to the calculation of lower and upper bounds via simulation in
Section 6.1. The simulation of paths is treated in Section 6.2. In Section 6.3 we go into more detail about
the lower bound algorithm of Longstaff and Schwartz. Furthermore we mention an alternative approach,
but the details are given in the section about the upper bound algorithm. In Section 6.4 we discuss
the upper bound algorithm of Andersen and Broadie and propose two alternative approaches so far not
described in the literature.
Throughout this chapter we use the same notation as in Section 4.2. Again we consider a Bermudan
option with maturity time T having a finite number of exercise opportunities N . The set of possible
exercise times T is equal to {t1 , t2 , ..., tN } with 0 = t0 < t1 < t2 < ... < tN = T . We assume again
that the option depends on a general underlying process Xt , where {Xt = (Xt1 , ..., Xtm ) : t ∈ T } is a
vector-valued joint Markov process on Rm with fixed initial state X0 . Sometimes we refer to the vector
Xt as the vector of state variables.
6.1
General construction of lower and upper bounds for the Bermudan option
value
We take the dual representation (20) as a starting point for an approximation of the option value from
below and from above. We introduce the general idea behind the construction of lower bounds and upper
bounds in Section 6.1.1 and Section 6.1.2 respectively.
6.1.1
Lower bounds
The primal problem (12) is to find an optimal exercise strategy. In order to get a lower bound for the
option value we use that some specific exercise strategy is always dominated by the optimal strategy. We
define L̃0 as a discounted lower bound for the option value. For any arbitrary exercise strategy τ̄ we have
L̃0 = E Z̃τ̄ F0 ≤ max E Z̃τ F0 = Ṽ0 .
τ ∈S0,T
When we have an algorithm that gives a stopping rule τ we can calculate a lower bound on the Bermudan
option value V0 . The general approach is to simulate a large number of paths of the underlying process
{Xt }. We determine for each path i the approximately optimal exercise moment τ (i) and the value of
(i)
the stopped discounted payoff variable Z̃τ (i) . For M simulated paths the lower bound is calculated by
L̃0 ≈
M
1 (i)
Z̃ .
M i=1 τ (i)
The better we approximate the optimal stopping rule, the closer we come to the true value of the option.
We use the algorithm of Longstaff and Schwartz [14] to get an approximate stopping rule. In Section ??
we discuss the Longstaff-Schwartz lower bound algorithm and propose a new alternative approach.
6.1.2
Upper bounds
The dual problem (19) is to find the hedging martingale with the minimal expected maximum shortfall.
Assume we have a particular martingale M̄ . Then we have an immediate upper bound on the Bermudan
option value since
Ṽ0 = inf 1 E max Z̃τ − Mτ F0
≤ E max Z̃τ − M̄τ F0 .
M∈H0
τ ∈S0,T
τ ∈S0,T
The better M̄ resembles the optimal hedging martingale, the closer the corresponding upper bound comes
to the true option value Ṽ0 . In Section 6.4 we discuss an algorithm for the approximation of the optimal
P
D
G
26
January 4, 2008
6. BOUNDS ON THE BERMUDAN OPTION VALUE VIA MONTE CARLO SIMULATION
hedging martingale M . We describe the upper bound algorithm of Andersen and Broadie [1] and propose
two alternative approaches.
Having an algorithm to construct the hedging martingale we can calculate an upper bound on the Bermudan option value Ṽ0 . The general approach is again to simulate
of paths of the underlying
a large number
(i)
process {Xt }. For each path i we calculate the payoff process Zt ; t ∈ T and approximate the optimal
(i)
hedging martingale by Mt ; t ∈ T . We omit the bar on M from now on. The final step would be to
approximate E max Z̃τ − Mτ F0 . But instead of taking the maximum over the set of stopping
τ ∈S0,T
times S0,T we take the maximum over the set of possible exercise times T . We do this because it is easier
to work with normal times than with stopping times. First we need to prove that the non trivial equality
between both maxima holds.
Proposition 16
max
τ ∈S0,T
Z̃τ − Mτ = max Z̃t − Mt .
t∈T
Proof. Recall
: Ω → T hence for any realization
stopping time we
that τ τ (ω) =
t ∈ T of
a particular
have max Z̃τ − Mτ ≥ Zt − Mt . Therefore max Z̃τ − Mτ ≥ max Z̃t − Mt .
τ ∈S0,T
τ ∈S0,T
t∈T
On the other hand we have for every path ω ∈
(ω) ∈
Ω with corresponding stopping time τ S0,T that Zτ (ω) − Mτ (ω) (ω) ≤ max Z̃t − Mt (ω). Thus Z̃τ − Mτ ≤ max Z̃t − Mt and
t∈T
t∈T ≤ max Z̃t − Mt . Having inequalities in both ways we conclude that
hence max Z̃τ − Mτ
t∈T
τ ∈S0,T
max Z̃τ − Mτ = max Z̃t − Mt .
t∈T
τ ∈S0,T
Finally for M simulated paths the upper bound is calculated by
M
1 (i)
(i)
.
Ũ0 ≈
max Z̃t − Mt
M i=1 t∈T
6.2
6.2.1
Simulation of paths
The one-dimensional lognormal underlying process
We consider the one dimensional case where the underlying state process {Xt ; t ∈ T } is a geometric
Brownian motion. In Section 3.2 we saw that this is the case for the stock price process. At time t ∈ T
the value of Xt is given by
1
Xt = X0 exp
r − σ2 t + σWt ,
(27)
2
where Wt is a one dimensional Wiener process at time t.
We can calculate values of state Xt by simulating a Wiener process up to time t and substitute the
simulated value into (27). However for a path we need the state values for every time step t1 , ..., tN . We
calculate the state transition between two consecutive time points by
1 2
Xtk+1 = Xtk exp
r − σ δ k + σǫ δ k
(28)
2
where δ k = tk+1 − tk and ǫ is a random sample from the standard normal distribution. A path of N time
steps is simulated by drawing N samples from the standard normal distribution and do N iteration steps
in (28) with initial value X0 . In Figure 2 we see the simulated paths of the underlying state process.
P
D
G
27
January 4, 2008
6. BOUNDS ON THE BERMUDAN OPTION VALUE VIA MONTE CARLO SIMULATION
100
90
80
70
S
60
50
40
30
20
10
0
0
1
2
3
4
5
6
t
Figure 2: Eleven simulated paths of the underlying state process with initial value X0 = 40, r = 0.06 and
σ = 0.2.
6.2.2
Interest rates
The LIBOR interest rate model provides us with a joint Markov process {Xt ; t ∈ T } with Xt ∈ RN . We
have X0 = (L1 (0) , ..., LN (0)) and Xt = (L1 (t) , ..., LN (t)), where Ln (t) is the LIBOR rate at time t
for the accrual period [tn , tn+1 ]. The forward LIBOR rates dynamics under spot measure are given by a
system of stochastic differential equations
dLn (t)
= µn (t) dt + σn (t)⊤ dW (t) ,
Ln (t)
with
µn (L (t) , t) =
0 ≤ t ≤ tn ,
n = 1, ..., N
(29)
n
⊺
δ j Lj (t) σ n (t) σ j (t)
1 + δ j Lj (t)
j=η(t)
and η (t) is the index such that tη(t)−1 ≤ t < tη(t) . For the sampling of the interest rate paths we use the
recursive relation obtained by application of the Euler scheme on (29):
Ln (tk+1 ) = Ln (tk ) + µn (L (tk ) , tk ) Ln (tk ) (tk+1 − tk )
+Ln (tk ) tk+1 − tk σ n (tk )⊺ Wk+1
with
n
⊺
δ j Lj (tk ) σ n (tk ) σ j (tk )
µn (L (tk ) , tk ) =
1 + δ j Lj (tk )
j=η(tk )
N
and W1 , W2 , ... are independent vectors in R with a multivariate normal distribution NN (0, I). Paths
are generated by sampling from NN (0, I). For more background about the derivation of this model, see
[8].
6.3
Lower bound algorithms
In Section 6.1.1 we described
calculate lower bounds for the Bermudan option value
a general approach to (i)
using the simulated paths Xt , t ∈ T, i = 1, ..., M . For each simulated path we need an approximation
P
D
G
28
January 4, 2008
6. BOUNDS ON THE BERMUDAN OPTION VALUE VIA MONTE CARLO SIMULATION
of the optimal exercise strategy. Longstaff and Schwartz [14] use dynamic programming combined with
least squares regression on the simulated paths to estimate the optimal exercise strategy. Earlier we saw
the dynamic programming approach in the binomial tree model. In the binomial tree model the continuation value is calculated via the probability distribution of the up and down movements. The interesting
part of the Longstaff-Schwartz algorithm is that it uses least squares regression on the simulated paths
in order to get an estimate for the continuation value. We refer to the algorithm as LSM algorithm where
LSM stands for least squares Monte Carlo.
The objective of the LSM algorithm is to provide a pathwise approximation to the optimal stopping
rule τ , i.e. the stopping rule that maximizes the expected payoff from the Bermudan option. Recall the
recursive relation in (17):
ṼN = Z̃N
(30)
Ṽk = max(Z̃k , E Ṽk+1 Fk ), 1 ≤ k ≤ N − 1,
where Z̃k is the discounted exercise value and E Ṽk+1 Fk is the discounted continuation value. The
corresponding strategy is to exercise the first moment that the immediate exercise value is greater than
or equal to the continuation value. Let lk be the conditional exercise indicator saying whether we exercise
at time tk given we didn’t exercise before time tk . Then under the given exercise strategy lk is defined as
follows:

 1 whenever Z̃k ≥ E Ṽk+1 Fk
lk =
 0 whenever Z̃k < E Ṽk+1 Fk .
The exercise strategy we described earlier is equivalent to the stopping time τ k : Ω → {k, ..., N }, with
k = 0, 1, ..., N defined as
τ k = inf {j ∈ {k, ..., N } : lj = 1} .
Recall the representation of Ṽk in the Snell envelope (15):
Ṽk = max E Z̃τ Fk .
τ ∈Stk ,T
Now we can write Ṽk in terms of the optimal stopping time τ k :
Ṽk = E Z̃ (τ k ) Fk
(31)
In particular we find that V0 = E Z̃τ 0 F0 . We use the recursive relation (30) to obtain the following
scheme for the optimal stopping times τ k :
τN = N
τ k = k · lk + τ k+1 · (1 − lk ) , 0 ≤ k ≤ N − 1.
The most important step is now to find a good estimate for the continuation value. Once we have an
approximation for the continuation value we use the estimate conditional exercise indicator ˆlk to obtain
approximations for τ k . We describe two methods to calculate the continuation value from the simulated
(i)
paths. We denote the value of the ith path of the underlying process at time tk with Xk . The payoff of
(i)
the ith path at time tk is given by Zk .
In Section 6.3.1 we discuss the least squares approach of Longstaff and Schwartz. In Section 6.3.2 we give a
short introduction to an alternative approach, more analogue to the binomial tree model. The alternative
was found first as an alternative approach within the upper bound algorithm, but is also applicable to
the lower bound algorithm. Therefore we only give a short introduction in this section and give a more
detailed description in Section 6.4.3.
P
D
G
29
January 4, 2008
6. BOUNDS ON THE BERMUDAN OPTION VALUE VIA MONTE CARLO SIMULATION
6.3.1
Least squares
The discounted continuation value is represented as the conditional expectation E Ṽk+1 Fk =
E Z̃ (τ k+1 ) Fk . We assume that the conditional expectation with respect to the filtration at time
tk only depends on the value of the state process {Xt ; t ∈ T }, hence we write
E Z̃ (τ k+1 ) Fk = E Z̃ (τ k+1 ) Xk .
First we approximate the conditional expectation with respect to Xk by the orthogonal projection on
the space generated by a finite number of functions of Xk . We use a finite subset {e1 (x) ., ..., ed (x)} of
functions {ei (x) ; i ≥ 1} satisfying that (e1 (Xk ) , e2 (Xk ) , ...) ⊆ L2 (σ (Xk )) and that the elements of the
vector (e1 (Xk ) , ..., ed (Xk )) are independent. We denote by Pkd the orthogonal projection from L2 (Ω)
onto the d dimensional vector space generated by {e1 (Xk ) ., ..., ed (Xk )}. Now the first approximation is
given by
E Z̃ (τ k+1 ) Fk ≈ Pkd E Z̃ (τ k+1 ) Fk = Pkd Z̃ (τ k+1 ) = β k · ed (Xk ) for k = 1, ..., N − 1,
where β k ∈ Rd is a weight vector for the projection of the continuation value at time tk and ed (x) denotes
the vector (e1 (x) , ..., ed (x)). The first equality holds because Pkd is a projection on a subspace of the
space of Fk -measurable functions, namely we have (e1 (Xk ) , ..., ed (Xk )) ⊂ L2 (σ (Xk )) ⊂ Fk .
The second step is to use a least squares estimator to approximate β k . Then for each path i we approximate
the optimal stopping times via
(i)
τN = N
(i)
(i)
(i)
(i)
τ k = k · lk + τ k+1 · 1 − lk , 0 ≤ k ≤ N − 1.
(i)
Here lk is the pathwise approximate conditional exercise indicator which is calculated using the least
(d,M)
squares estimate β k

 1 whenever Z̃ (i) ≥ β (d,M) · ed X (i) and Z̃ (i) > 0
k
k
k
k
(i)
lk =
 0 whenever Z̃ (i) < β (d,M) · ed X (i) or Z̃ (i) = 0.
k
k
k
k
(d,M)
The estimate β k
depends on time tk , the number of basis functions d and the number of simulated
paths M and is given by
M
2
(d,M)
(i)
(i)
(i)
d
βk
= arg min
1 Z̃ (i) >0 Z̃
τ k+1 − b · e (Xk )
for k = 1, ..., N − 1,
b∈Rd
i=1
k
(i)
where Z̃ (i) τ k+1 is the payoff we get from following the the optimal strategy on the ith path from time
tk+1 on. We call this quantity the potential payoff because it is the actual payoff we get from the option
if noearlier exercise moment is indicated. Per path we
look at the difference between the potential payoff
(i)
(d,M)
(i)
d
(i)
is the vector for which
τ k+1 and the corresponding projection b · e Xk . The estimate β k
Z̃
the sum of the squared differences is minimal. In the approximation of β k Longstaff and Schwartz only
include paths for which the option is in the money at time tk . An option is said to be in the money when
exercising the option gives a positive payoff. There are several reasons why it makes sense to include in
the money paths only. The first reason is that out of the money options are not exercised, so there is no
need to know the continuation value. Secondly because the payoff function contains a floor at zero we
don’t know how deeply out of the money the option is. This causes an extra error in the least squares
approximation. Thirdly it turns out that omitting out of the money paths decreases computational time.
P
D
G
30
January 4, 2008
6. BOUNDS ON THE BERMUDAN OPTION VALUE VIA MONTE CARLO SIMULATION
6.3.2
Weighted cash flows
Instead of doing a regression we propose a more deterministic way to calculate the continuation value, comparable to the binomial tree model. We consider the case that the underlying process is one-dimensional.
In the binomial tree model the continuation value given by (26). In the notation of this chapter this is
equivalent to
(i)
(i+1)
(i)
E Ṽk+1 Xk = pṼk+1 + (1 − p) Ṽk+1 .
In the binomial tree a state at time tk is connected to two states in the next time step, the one by an
up movement and the other by a down movement. Under the risk neutral measure the corresponding
probabilities are p and 1 − p. On the other hand in the Monte Carlo simulation every state at time tk
(i)
is connected to one state in the next time step. Now imagine we connect state Xk to all next states
(1)
(M)
(i)
Xk+1 , ..., Xk+1 . Every next state has a certain probability to be attained starting from Xk . Having
these probabilities we calculate the continuation via
(i)
(i) (1)
(i) (2)
(i) (M )
E Ṽk+1 Xk = p1 Ṽk+1 + p2 Vk+1 + ... + pM Vk+1 .
(i)
Since Xk is a Markov process the transition probabilities only depend on Xk and not on states of earlier
(i)
times. In Section
6.4.3 we describe
how to calculate the transition probabilities from state Xk to the
(1)
(M)
next states Xk+1 , ..., Xk+1 .
6.4
Upper bound algorithms
In Section 6.1.2 we introduced a general approach for the calculation of an upper bound
M
1 (i)
(i)
max Z̃t − Mt
U0 = E max Z̃τ − Mτ F0 ≈
t∈T
M i=1 t∈T
In this section we describe how to approximate the optimal hedging martingale. We know that the optimal
martingale {Mt∗ ; t ∈
when we take the martingale part of the Doob decomposition of the
T } is obtained
true value process Ṽt ; t ∈ T :
Ṽt = Ṽ0 + Mt∗ − At
where Mt∗ is a martingale such that M0∗ = 0 and At is a decreasing process with A0 = 0 and Atk ∈ Ftk−1 .
The problem is that the true value process is difficult to calculate.
In the literature we find different approaches for the construction of our martingale. We propose the
algorithm of Andersen and Broadie [1]. The construction of the martingale is based on a lower biased
approximation Lk . We denote the discounted lower biased approximation by L̃k . Then the Doob’s decomposition of L̃k may yield an upper bound approximation. The martingale is constructed as follows:
M0
Mk
= L̃0
= Mk−1 + L̃k − E L̃k Fk−1 for k = 1, ..., N
(32)
We show that Mk is indeed a martingale:
E [ Mk | Fk−1 ] = E Mk−1 + L̃k − E L̃k Fk−1 Fk−1
= Mk−1 + E L̃k Fk−1 − E L̃k Fk−1
= Mk−1 .
The intuition behind this scheme is that we buy an option at time tk for the value predicted at time tk−1
and sell it at time tk for the value based on the information available at time tk .
P
D
G
31
January 4, 2008
6. BOUNDS ON THE BERMUDAN OPTION VALUE VIA MONTE CARLO SIMULATION
The difficulty we now face is to get good lower biased estimates
L̃k and E L̃k Fk−1 .
where
L̃k = E Z̃ (τ k ) Fk
and
E L̃k Fk−1 = E Z̃ (τ k ) Fk−1 .
Once we have the martingale we calculate the value of the lookback option on the process Z̃t − Mt :
∆0 = E max Z̃t − Mt .
t∈T
A lookback option allows the holder to choose the exercise moment at maturity time once all cash flows
are known. Here ∆0 represents the maximal shortfall of our hedging martingale with initial value L̃0 . We
find an upper bound Ũ0 for the value of the Bermudan option, by
Ũ0 = L̃0 + ∆0 .
In the next sections we find an overview of three variants of the upper bound algorithm of Andersen and
Broadie. We start with the original upper bound algorithm using inner simulation in Section 6.4.1. In
Section 6.4.2 and Section 6.4.3 we discuss two alternative approaches to avoid inner simulation.
6.4.1
Inner simulation
One way to calculate the intermediate lower bound values L̃k for k = 1, ..., N − 1 is with simulation. This
is a very costly approach because for every simulated path in the main simulation we need to launch
a simulation at all possible exercise moments before maturity. For M simulated paths and N possible
exercise moment this comes to M (N − 1) new simulations. The inner simulation procedure we propose
is the lower bound algorithm described in Section 6.3.1. At time tk we calculate L̃k for a specific path as
follows
(i)
(i)
Z̃k
(i)
when lk = 1
L̃k =
(i)
(i)
when lk = 0
E Z̃ (i) (τ k+1 ) Xk
(i)
(i)
where L̃k is the discounted lower biased estimate for the ith path and Xk is the state of the ith path
at time tk . The calculation of the value
(i)
E Z̃ (i) (τ k+1 ) Xk
is a LSM simulation starting from the time-tk state variables of the ith path. The number of exercise
moments is then reduced to N − k and the maturity time is reduced to T − tk .
The continuation value is approximated by
(i)
(i) (i)
E L̃k Fk−1 ≈ E Z̃ (i) (τ k ) Xk−1 .
This quantity is calculated with a LSM simulation starting from the time-tk−1 state variables of the ith
path. The number of exercise moments is N − k + 1 and the maturity time is T − tk−1 . Remark that
when lk−1 = 0, i.e. when exercising is not indicated at time tk−1 , we have
(i) (i)
(i)
E L̃k Fk−1 = L̃k−1 .
P
D
G
32
January 4, 2008
6. BOUNDS ON THE BERMUDAN OPTION VALUE VIA MONTE CARLO SIMULATION
6.4.2
Simple cash flow method
The first idea to avoid inner simulation is to use information that is available from the main LSM
(i)
simulation. We have the conditional exercise scheme per path lk (k = 1, ..., N ; i = 1, ...M ), the least
squares approximations of the continuation value and the potential payoffs along each path. We set
(i)
(i)
L̃k = Z̃ (i) τ k
(i)
(i)
where τ k = inf j ∈ {k, ..., N } : lj = 1 , i.e. the pathwise conditional exercise scheme. Hence the time(i)
tk lower estimate L̃k is equal to the potential payoff from the path.

(i)
 β (d,M) · ed X (i)
when lk−1 = 1
k−1
k−1
(i)
E L̃k Fk−1 ≈
(i)
 L̃(i) = Z̃ (i) τ (i)
when lk−1 = 0
k−1
k
(d,M)
(i)
Where β k−1 · ed Xk−1 is the least squares approximation of the continuation value at time tk . The
(i)
consequence is that for lk−1 = 0 we have
(i)
Mk
(i)
(i)
(i) = Mk−1 + L̃k − E L̃k Fk−1
(i)
(i)
(i)
= Mk−1 + Z̃ (i) τ k − Z̃ (i) τ k
(i)
= Mk−1 .
But in fact for
L̃k = E Z̃ (τ k ) Fk and E L̃k Fk−1 = E Z̃ (τ k ) Fk−1
equality doesn’t hold necessarily. With the simple cash flow method we throw away information of the
state change between time tk−1 and tk .
6.4.3
Weighted cash flow method
The simple cash flow method uses for the pathwise calculation of the martingale only information along
the path itself. The idea of the weighted cash flow method is to use information of the other paths in a
smart way to get better estimates of the intermediate lower bound values and intermediate continuation
(i)
values. Instead of starting a new simulation from a certain state Xk of a particular path we look how
(1)
(M)
likely the transition is from this state of the path to the next states of all other paths Xk+1 , ..., Xk+1 .
From all paths at time tk+1 we know the potential payoff by induction. We take the weighted average of
these realized cash flows. The weights depend on the probability that the next state follows from state
(i)
Xk .
The probability that we jump exactly to a certain state is zero. But we can calculate the probability
that we jump to some interval around a given state. This “some interval around” is chosen between the
nearest neighbors of a state. In Figure 3 the different intervals are divided by horizontal bars. When we
(i)
calculate the weight for path j given that we are in state Xk we need to know the neighbors of state
(j)
(1)
(M)
(j)
Xk+1 . Denote Y as the vector of states at time tk+1 , i.e. Y = (Xk+1 , ..., Xk+1 ). Let Xk+1 be the lth order
(j)
statistic such that Xk+1 = Y(l) . Then the interval we are looking for is
P
D
G
Y(l−1) + Y(l) Y(l) + Y(l+1)
,
.
2
2
33
January 4, 2008
6. BOUNDS ON THE BERMUDAN OPTION VALUE VIA MONTE CARLO SIMULATION
100
90
€
80
€
70
€
X
60
€
€
€
50
40
€
30
€
20
€
10
0
0
1
2
3
4
5
t
(i)
Figure 3: In the calculation method the weight pj is equal to the probability of a transition from state
(i)
(j)
Xk into an interval around state Xk+1 . The bounds of the interval are right in between the state itself
and its neighbors.
(i)
(i)
Weight pj for path j with respect to state Xk is given by
(i)
pj
=
=
log( 21 (Y(l) +Y(l+1) ))
(x − µ)2
√1
exp −
dx
σ 2πδk
2δ k σ 2
log( 12 (Y(l−1) +Y(l) ))

 Y

 Y +Y
(l)
(l+1)
(l−1) +Y(l)
log
log
−µ
−µ
2
2
 − Φ

√
√
Φ
σ δk
σ δk
(i)
with µ = log Xk + r − 12 σ 2 δ k and Φ(x) the standard normal cumulative distribution function.
P
D
G
34
January 4, 2008
7. IMPLEMENTATION
7
Implementation
The goal of the project is to add an upper bound algorithm for Bermudan style interest rate derivatives
to the common analytics library (CAL). The scheme of the upper bound algorithm (10) relies heavily on
information from the lower bound algorithm, e.g. the conditional exercise scheme from every simulated
path. Since an implementation of the LSM algorithm was already available in CAL, we tried to use as much
information from the LSM algorithm as possible in the implementation of the upper bound algorithm. We
also tried to avoid inner simulation. During the implementation process we made a simplification that lead
to the simple upper bound method. Because the LSM algorithm only calculates the continuation value
for in the money paths we needed to extend the calculation of the continuation value to all paths. We also
found that for options for which the underlying product value can be determined analytically, the LSM
algorithm uses this underlying value, e.g. the swap value, as the only regression variable. We extended the
implementation with the possibility to add all state variables to the set of regression variables. Altogether
we end up with 8 different settings for the upper bound algorithm in CAL. These settings are discussed
in Section 7.1.
The lower bounds are calculated via backward recursion. On the other hand the scheme of the upper bound
algorithm uses forward recursion. Therefore all necessary information from the lower bound algorithm
must be stored before we can calculate upper bounds. Storing the information costs a lot of memory.
And besides it asks a lot of search and compare operations. In order to get a more efficient algorithm we
reformulated the forward scheme as a backward scheme. The new scheme is discussed in Section 7.2.
The results of the simple upper bound in CAL showed a big gap between lower en upper bound, see
Section 8.1. Therefore we decided to do an implementation in Matlab for options on stocks and investigate
alternative upper bound algorithms. We implemented the two lower bound methods and the three upper
bound methods of Section 6. The Matlab code is shown in Appendix B.
7.1
Settings of the simple upper bound implementation in CAL
The upper bound algorithm in CAL has three parameters allowing two configurations each, see Table
1. This leads to 23 = 8 settings for the upper bound algorithm. Normally the set of regression variables
contains the value of the underlying only, but can be extended to all state variables. The continuation
values are calculated via least squares regression. The continuation value is used in both the exercise
decision and the construction of the hedging martingale. In the regression step we can use only in the
money paths (only itm paths) or all paths. This option can be set separately for the exercise decision and
the construction of the hedging martingale.
Parameter
Set of regression variables
Continuation value for exercise scheme
Continuation value for martingale
configuration 1
underlying only
only itm paths
only itm paths
configuration 2
all state variables
all paths
all paths
Table 1: The different settings for the upper bound algorithm in CAL
7.2
Backward implementation of the Andersen and Broadie martingale
Because we want to integrate the upper bound algorithm into the existing implementation of the
Longstaff-Schwartz algorithm we need to have a backward version of the hedging martingale from Andersen and Broadie. Recall the recursive scheme:
M0
Mk
P
D
G
= L0
= Mk−1 + L̃k − E L̃k Fk−1
35
for k = 1, ..., N
January 4, 2008
7. IMPLEMENTATION
Then the backwards hedging martingale scheme is given by:
M̌N
M̌k−1
= 0
= M̌k − L̃k − E L̃k Fk−1
for 1 ≤ k ≤ N
There is a difference between the forward and backward recursive martingale, but this difference is up to
the same constant in every time step:
M̌k − Mk
= M̌k−1 + [update]k − (Mk−1 + [update]k )
= M̌k−1 − Mk−1
We define the constant difference as
c := M̌0 − M0
such that
M0 = M̌0 − c
We calculate c after running the full iteration
c = M̌0 − M0 = M̌0 − L0
because that is the first moment we know the lower bound value L0 and the value of M̃0 . We calculate
the upper bound value with
U0 = L0 + max Z̃t − Mt
t∈T
= L0 + max Z̃t − (M̌t − c)
t∈T
= L0 + c + max Z̃t − M̌t
t∈T
= M̌0 + max Z̃t − M̌t .
t∈T
P
D
G
36
January 4, 2008
8. COMPUTATIONAL RESULTS
8
Computational results
In Section 8.1 we present results of the different settings of the simple upper bound method in CAL. We
applied the algorithm on three different trades done by ABN AMRO. For confidentiality reasons we omit
the trade details. In the results we distinguish two types of upper bounds, called upper bound and only
itm upper bound. The one uses all paths in the calculations of the hedging martingale the other uses only
in the money paths.
In Section 8.2 we present lower bounds on Bermudan call options. In Section 8.3 we present lower and
upper bounds on Bermudan put options on stocks without dividend payments. In both sections the lower
bounds are coming from the LSM algorithm and the weighted cash flow method. The results are denoted
with LSM lower bound and weighted lower bound respectively. The upper bounds are coming from the
inner simulation method, the weighted cash flow method and the simple cash flow method. The results
are denoted with inner sim upper bound, weighted upper bound and simple upper bound, respectively.
As a benchmark for the lower bounds on the Bermudan call and put options on stocks we use the values
of the corresponding European call and put options. As a benchmark for the upper bounds we use the
value of the corresponding lookback option. A lookback option allows the holder to choose the exercise
moment at maturity time once all cash flows are known. Therefore the value of the lookback option is
higher than the value of the Bermudan option that does not allow foreknowledge.
8.1
Bermudan swaptions
For both the upper bound and the only itm upper bound we have 4 parameter settings left. Firstly we
can base the exercise decision on continuation values calculated with only in the money paths or with
all paths. We abbreviate these alternatives with oitm and all. Secondly we can use the value of the
underlying as only regression variable or add all state variables to the set of regression variables. These
settings are abbreviated with und and all. The parameter settings are a combination the first and the
second parameter separated with a dash, e.g. oitm-all. All values are calculated using 1,000 simulated
paths. The model is calibrated with market data of August 15, 2007. Trade 1, 2 and 3 are 10-year trades.
8.1.1
Trade 1
parameter
settings
oitm-und
oitm-all
all-und
all-all
LSM
lower
bound
71,545
87,879
71,159
76,472
best
lower
bound
87,879
std
error
upper
bound
std
error
duality
gap
3,480
3,814
3,105
3,315
93,101
106,117
85,914
89,528
3,556
4,086
3,141
3,351
21,556
18,238
14,755
13,056
std
error
duality
gap
4,149
16,659
std
error
3,814
lookback
option
104,538
only itm
upper
bound
99,269
103,952
97,175
101,792
std
error
duality
gap
3,885
4,137
3,709
4,152
27,724
16,073
26,016
25,320
Table 2: Comparison of the different settings of the simple upper bound algorithm. The upper bound values for Bermudan style interest rate derivative 1 and their corresponding standard errors. As benchmarks
we give the lower bound value calculated with the LSM algorithm and the value of the lookback option.
The duality gap is the difference between the upper bound and the lower bound value. All simulations
are based on 1,000 paths of the underlying interest rate process.
The lower bounds calculated with all state variables are higher than the lower bounds calculated with only
the value of the underlying as regression variable. A first analysis shows that adding the state variables
P
D
G
37
January 4, 2008
8. COMPUTATIONAL RESULTS
to the set of regression variables approximately doubles the computation time. The lower bounds with
the continuation value based on regression on in the money paths only are higher than the ones with
the continuation value calculated with all paths. Except for the setting oitm-all the upper bounds with
a martingale based on all paths are lower than the ones calculated with a martingale based on in the
money paths only. The oitm-all upper bound and all only itm upper bounds are within 2 standard errors
of the value of the lookback option. These upper bounds are not likely to be tight. The smallest duality
gap (13,056) is obtained for the upper bound based on all paths for both the exercise decision and the
martingale and with all state variables in the set of regression variables. This duality gap is about 3.9
times the standard error of the upper bound simulation. For comparison the difference between the value
of the lookback option and the best lower bound is 4 times the standard error of the lookback option
simulation.
8.1.2
Trade 2
parameter
settings
oitm-und
oitm-all
all-und
all-all
LSM
lower
bound
37,314
42,510
36,830
38,851
best
lower
bound
42,510
std
error
1,773
1,873
1,613
1,700
std
error
1,613
upper
bound
46,798
50,560
43,331
45,026
lookback
option
51,437
std
error
duality
gap
1,802
1,944
1,623
1,711
9,484
8,050
6,501
6,175
std
error
duality
gap
2,032
8,927
only itm
upper
bound
48,826
50,543
48,247
50,215
std
error
duality
gap
1,905
2,008
1,853
1,995
11,512
8,033
11,417
11,364
Table 3: Comparison of the different settings of the simple upper bound algorithm. The upper bound values for Bermudan style interest rate derivative 2 and their corresponding standard errors. As benchmarks
we give the lower bound value calculated with the LSM algorithm and the value of the lookback option.
The duality gap is the difference between the upper bound and the lower bound value. All simulations
are based on 1,000 paths of the underlying interest rate process.
For the results of trade 2 exactly the same story holds as for trade 1. The smallest duality gap is again
obtained for the upper bound based on all paths for both the exercise decision and the martingale and
with all state variables in the set of regression variables. This duality gap is about 3.6 times the standard
error of the upper bound simulation. For comparison the difference between the value of the lookback
option and the best lower bound is about 4.4 times the standard error of the lookback option simulation.
P
D
G
38
January 4, 2008
8. COMPUTATIONAL RESULTS
8.1.3
Trade 3
parameter
settings
oitm-und
oitm-all
all-und
all-all
LSM
lower
bound
50,936
54,951
42,923
53,501
best
lower
bound
54,951
std
error
7,361
6,989
7,930
7,054
std
error
6,989
upper
bound
83,094
80,411
87,584
79,640
lookback
option
88,260
std
error
duality
gap
5,952
5,862
5,985
5,898
32,158
25,460
44,661
26,139
std
error
duality
gap
5,740
33,309
only itm
upper
bound
81,223
80,497
85,394
79,677
std
error
duality
gap
5,875
5,827
5,915
5,852
30,287
25,546
42,471
26,176
Table 4: Comparison of the different settings of the simple upper bound algorithm. The upper bound values for Bermudan style interest rate derivative 3 and their corresponding standard errors. As benchmarks
we give the lower bound value calculated with the LSM algorithm and the value of the lookback option.
The duality gap is the difference between the upper bound and the lower bound value. All simulations
are based on 1,000 paths of the underlying interest rate process.
For the lower bounds the same story holds as for trade 1 and 2. The upper bounds with a martingale
based on all paths are equivalent to the ones calculated with a martingale based on in the money paths
only. The only itm upper bound is better when the value of the underlying is the only regression variable.
All upper bounds are within 2 standard errors of the value of the lookback option hence they are not likely
to be tight. The smallest duality gap is obtained for the upper bound based on only in the money paths
for the exercise decision, all paths for the martingale and with all state variables as regression variables.
This duality gap is about 4.3 times the standard error of the simulation. For comparison the difference
between the value of the lookback option and the best lower bound is about 5.8 times the standard error
of the lookback option simulation.
8.1.4
Conclusions
The best lower bounds are obtained when we use all state variables as regression variables and when we
use only in the money paths for the regression of the continuation value. When determining the exercise
scheme we only need continuation value when a path is in the money. Therefore is makes sense to use only
the in the money paths in this calculation. The best upper bounds are obtained when all paths are used in
the calculation of the martingale. Since we need the martingale for every path it makes sense to calculate
the continuation value used in the martingale construction with all paths. Over all we must conclude
that the upper bounds are not very tight at all. In most settings the bounds are not significantly better
than the values of the lookback option. Because of these disappointing results we decided to implement
the algorithm with inner simulation as is described in the literature by Anderson and Broadie for stock
options. To be sure that the duality gap is caused by the simple upper bounds we also implemented the
simple upper bound method for stock options. Furthermore we developed a new method to avoid inner
simulation.
8.2
Bermudan call options on stocks
In Table 5 we present lower bounds for the value of Bermudan call options on stocks. In all cases the
strike K = 40, the maturity time T = 1 year and the number of exercise moments N = 6 and they are
equally distributed over the time. The risk-free rate r = 0.06 and the volatility σ is equal to 0.2 and 0.4
respectively. We take the initial stock value S0 equal to 36, 38, 40, 42 and 44. The lower bound values
and the corresponding standard errors are calculated via simulation with 10,000 paths. The value of the
European option is calculated with the Black Scholes formula.
P
D
G
39
January 4, 2008
8. COMPUTATIONAL RESULTS
S0
σ
36
36
38
38
40
40
42
42
44
44
0.2
0.4
0.2
0.4
0.2
0.4
0.2
0.4
0.2
0.4
European
option
value
2.1737
5.0408
3.1814
6.1637
4.3958
7.3890
5.7939
8.7081
7.3463
10.1122
LSM
lower
bound
2.1371
4.9698
3.1249
6.0613
4.3257
7.2745
5.7146
8.5772
7.2583
9.9630
std
error
gap
0.042
0.101
0.051
0.113
0.060
0.125
0.069
0.137
0.076
0.149
0.037
0.071
0.057
0.102
0.070
0.115
0.079
0.131
0.088
0.149
weighted
lower
bound
2.1276
4.9320
3.1190
6.0310
4.3203
7.2399
5.7093
8.5403
7.2500
9.9310
std
error
gap
0.041
0.099
0.051
0.111
0.060
0.123
0.068
0.135
0.076
0.147
0.046
0.109
0.062
0.133
0.076
0.149
0.085
0.168
0.096
0.181
Table 5: Lower bounds on the value of Bermudan call options on stocks without dividend payments for
different spot values and volatilities. The gap is the difference between the European value and the lower
bound value.
In Section 5.4 we found that early exercise of a Bermudan call option is never optimal and therefore its
value is equal to the value of the corresponding European call option. In the table we see that the lower
bound values are indeed below the true option value. The difference between the true value and the lower
bound value is about one standard error. Remark that in practice won’t use simulation to calculate the
value of the Bermudan call option since we can calculate its true value exactly with the Black-Scholes
formula. These values are presented to examine the behavior of the lower bound algorithms. Analysis of
the exercise schemes shows that the percentage of early exercised paths is about 3% in the worst case. A
first analysis of the calculation time shows that the weighted cash flow method is very slow compared to
the LSM algorithm.
8.2.1
Conclusions
The LSM lower bound algorithm and the weighted cash flow method give equivalent results for Bermudan
call options. The LSM lower bounds are slightly better. Because of the shorter computation time the LSM
algorithm is preferable for lower bound calculations.
8.3
Bermudan put options on stocks
In all cases the strike K = 40, the maturity time T = 1 year and the number of exercise moments N = 6
and they are equally distributed over the time. The risk-free rate r = 0.06 and the volatility σ is equal
to 0.2 and 0.4 respectively. We take the initial stock value S0 equal to 36, 38, 40, 42 and 44. The lower
bound values with corresponding standard errors are calculated via simulation with 10,000 paths. The
value of the European option is calculated with the Black Scholes formula.
8.3.1
Lower bounds
In Table 6 we present lower bound values of Bermudan put options on stocks without dividend payments.
The details are exactly the same as in Section 8.3.
P
D
G
40
January 4, 2008
8. COMPUTATIONAL RESULTS
S0
σ
36
36
38
38
40
40
42
42
44
44
0.2
0.4
0.2
0.4
0.2
0.4
0.2
0.4
0.2
0.4
European
option
value
3.8443
6.7114
2.8519
5.8343
2.0664
5.0596
1.4645
4.3787
1.0169
3.7828
LSM
lower
bound
4.4304
7.0899
3.2101
6.1406
2.2917
5.3088
1.6012
4.5813
1.0855
3.9515
std
error
0.033
0.063
0.032
0.061
0.029
0.059
0.025
0.056
0.021
0.054
weighted
lower
bound
4.4258
7.0955
3.1921
6.1406
2.2918
5.2988
1.5948
4.5860
1.0842
3.9395
std
error
0.034
0.064
0.031
0.062
0.029
0.059
0.025
0.057
0.021
0.054
Table 6: Lower bounds on the value of Bermudan put options on stocks with different spot values and
volatilities
Both the LSM lower bounds and the weighted lower bounds have higher values than the corresponding
European put options. This shows that for Bermudan put options early exercise can be optimal. The
values of both lower bound algorithms are very similar. The difference in value is smaller than the
standard error of the simulation. A first analysis of the calculation time shows that the weighted cash
flow method is very slow compared to the LSM algorithm. Therefore for the calculation of lower bounds
the LSM algorithm is preferable.
8.3.2
Upper bounds
In Tables 7 and 8 we present upper bound values of Bermudan put options on stocks without dividend
payments. The details are exactly the same as in Section 8.3. In Table 7 we present the upper bound values
calculated with inner simulation and with the weighted cash flow method both with their corresponding
standard errors. In Table 8 we present the upper bound value calculated with the simple cash flow method
and the value of the lookback option with corresponding standard errors. In both tables we show the lower
bound value from the LSM algorithm as a benchmark. All calculations are based on 10,000 simulated
paths. For inner simulation we use 1,000 paths.
S0
σ
36
36
38
38
40
40
42
42
44
44
0.2
0.4
0.2
0.4
0.2
0.4
0.2
0.4
0.2
0.4
LSM
lower
bound
4.4304
7.0899
3.2101
6.1406
2.2917
5.3088
1.6012
4.5813
1.0855
3.9515
std
error
0.033
0.063
0.032
0.061
0.029
0.059
0.025
0.056
0.021
0.054
inner sim
upper
bound
4.4335
7.1124
3.2136
6.1621
2.2955
5.3275
1.6037
4.5945
1.0892
3.9632
std
error
duality
gap
0.033
0.063
0.032
0.061
0.029
0.059
0.025
0.057
0.021
0.054
0.0031
0.0225
0.0035
0.0215
0.0038
0.0187
0.0025
0.0132
0.0037
0.0117
weighted
upper
bound
4.4364
7.0983
3.2157
6.1467
2.2946
5.3151
1.603
4.5845
1.0875
3.9552
std
error
duality
gap
0.033
0.063
0.032
0.061
0.029
0.059
0.025
0.056
0.021
0.054
0.0060
0.0084
0.0056
0.0061
0.0029
0.0063
0.0018
0.0032
0.0020
0.0037
Table 7: Upper bounds on the value of Bermudan put options on stocks without dividend payments for
different spot values and volatilities
Table 7 shows very small duality gaps for both the upper bounds calculated with inner simulation and
the weighted upper bounds. The duality gaps are much smaller than the standard error of the simulation.
The standard errors of both methods are approximately equal. For σ = 0.2 both upper bounds are
equivalent but for σ = 0.4 the weighted cash flow method gives tighter upper bounds than the inner
P
D
G
41
January 4, 2008
8. COMPUTATIONAL RESULTS
simulation algorithm. A first analysis of the computation time shows that for 10,000 simulated paths
inner simulation takes less computation time than the weighted cash flow method. For 20,000 paths both
methods use much computation time although inner simulation costs the most time.
S0
σ
36
36
38
38
40
40
42
42
44
44
0.2
0.4
0.2
0.4
0.2
0.4
0.2
0.4
0.2
0.4
LSM
lower
bound
4.4304
7.0899
3.2101
6.1406
2.2917
5.3088
1.6012
4.5813
1.0855
3.9515
std
error
0.033
0.063
0.032
0.061
0.029
0.059
0.025
0.056
0.021
0.054
simple
upper
bound
6.4909
10.7379
5.0980
9.6031
3.8771
8.5334
2.8413
7.5403
1.9916
6.6352
std
error
duality
gap
lookback
option
std
error
duality
gap
0.053
0.100
0.053
0.099
0.050
0.098
0.045
0.095
0.038
0.091
2.0605
3.6480
1.8879
3.4625
1.5854
3.2246
1.2401
2.9590
0.9061
2.6837
6.4281
10.1021
4.8242
8.7902
3.4535
7.5927
2.3762
6.5196
1.5937
5.5757
0.038
0.067
0.038
0.067
0.036
0.066
0.032
0.064
0.027
0.062
1.9977
3.0122
1.6141
2.6496
1.1618
2.2839
0.7750
1.9383
0.5082
1.6242
Table 8: Results of the simple cash flow method and values of the lookback option. Upper bounds for the
value of put options on stocks with different spot values and volatilities
Table 8 shows very large duality gaps for both the simple upper bound values and the lookback option
values. The duality gaps are twenty up to forty times the standard error of the simulation. All simple
upper bounds are worse than the lookback option value. Therefore the simple cash flow method is not
suitable as upper bound algorithm.
8.3.3
Conclusions
The two different lower bound algorithms provide similar results. A first analysis of the computation time
is in favor of the LSM algorithm. The upper bounds calculated with inner simulation and the weighted
cash flow method are equivalent and very close to the corresponding LSM lower bounds. A first analysis
of the computation time is not in favour of any of the two algorithms. The upper bound values from
the simple cash flow method are higher than the value of the corresponding lookback option. It is clear
that the simplification made in the simple cash flow method is not legitimate for a proper working upper
bound algorithm.
P
D
G
42
January 4, 2008
9. CONCLUSIONS AND RECOMMENDATIONS
9
Conclusions and recommendations
9.1
Conclusions
We started with a simplified version of the upper bound algorithm from Andersen and Broadie, called
simple cash flow method. We implemented this algorithm in CAL, the common analytics library of the
quantitative analytics group within ABN AMRO. We conclude from the results that for the exercise
decision it is best to use only the information of the in the money paths. For the calculation of the
martingale on the other hand it is preferable to use the information of all simulated paths. Over all we
have to conclude that none of the settings of the simple cash flow method provides tight upper bounds
for the value of Bermudan options. We extended the implementation of the LSM lower bound algorithm
for underlying products whose value can be determined analytically, with the possibility to add all state
variables to the set of regression variables. The performance of the LSM algorithm improves when all
state variables are included in the set of regression variables. First analysis shows that the computation
time is at least doubled when we regress with all state variables.
Because of the disappointing results of the simple cash flow method we implemented the upper bound
algorithm by Anderson and Broadie for Bermudan stock options. To be sure that the duality gap is
caused by the simple upper bounds we also implemented the simple upper bound method for stock
options. Furthermore we developed a new method to avoid inner simulation. This method turns out to
be applicable to lower bounds too. The method is called weighted cash flow method. The corresponding
lower bound and upper bound are called weighted lower bound and weighted upper bound respectively.
The weighted lower bound values are similar to the lower bound values calculated with the LSM algorithm.
But compared to the LSM algorithm the weighted cash flow method is very slow. This is caused by the
frequent use of sort operations. For the calculation of lower bounds the LSM algorithm is preferable.
The weighted upper bound values are similar to the upper bounds calculated with inner simulation. Both
upper bounds are very close to the corresponding LSM lower bounds. For smaller numbers of simulated
paths inner simulation takes less computation time than the weighted cash flow method. For higher
numbers of paths both algorithms need very much computation time, but the weighted cash flow method
is then faster.
The implementation of the simple cash flow method for Bermudan options on stocks shows similar
behavior as the implementation in CAL. The duality gaps are very large. And the values of the simple
upper bounds are even higher than the values of the corresponding lookback option. It is clear that the
simplification made in the simple cash flow method is not legitimate for a proper working upper bound
algorithm. The main reason is that the simple cash flow method fully ignores the influence of the state
change on the continuation value.
9.2
Recommendations
• The set of regression variables in the LSM algorithm should contain all state variables by default.
The continuation value is estimated via least squares regression does not only depend on the value
of the underlying product, but also on the state variables. Including all state variables will improve
the estimates of the continuation value. A better estimate of the continuation value leads to a better
approximation of the optimal exercise scheme and hence to a tighter lower bound for the option
value. Remark that in a practical environment of thirty year trades with more than one hundred
state variables memory space is a bottleneck. Furthermore calculation time of the regression step
increases with the number of state variables, especially when also cross products are involved.
• As an alternative to the simple upper bound method, the multivariate equivalent of the weighted
cash flow should be implemented in CAL. In order to determine the quality of the weighted cash
flow method one should look at the next two recommendations.
P
D
G
43
January 4, 2008
9. CONCLUSIONS AND RECOMMENDATIONS
• The multivariate version of the weighted cash flow method ignores that the underlying process is
jointly Markov. Instead the underlying process is assumed to be Markov in the separate variables.
This simplification will cause extra bias. The magnitude of this bias should be investigated.
• The laborious part of the weighted cash flow method is the sorting of the state vectors. In the
multivariate version of the weighted cash flow method sorting is needed in every dimension. Therefore the method is expected to be slow. Taking a smaller subset of the simulated paths will reduce
calculation time. The impact on the convergence should be investigated.
• When the multivariate weighted cash flow method does not turn out to give tight bounds, inner
simulation should be implemented. Then one should do research to reduce the number of paths for
the inner simulation.
P
D
G
44
January 4, 2008
A. TYPES OF CONVERGENCE
A
Types of convergence
Definition 17 Convergence in distribution (in dist.): A sequence of random variables {Xn } is said to
converge in distribution to F, with F (ξ) = P (X ≤ ξ) iff the sequence {Fn } of corresponding distribution
functions converges to F:
lim P (Xn ≤ ξ) = P (X ≤ ξ) for every ξ ∈ R for which F (ξ) is continuous.
n→∞
(33)
Definition 18 Convergence in probability (in pr.): The sequence {Xn } is said to converge in probability
to X∞ iff for every ε > 0 we have
lim P (|Xn − X∞ | > ε) = 0
(34)
n→∞
Definition 19 Convergence in Lp , 0 < p < ∞: The sequence {Xn } is said to converge in Lp to X∞ iff
lim E[|Xn − X∞ |p ] = 0
(35)
n→∞
Definition 20 Convergence almost everywhere (a.e.): The sequence {Xn } is said to converge almost
everywhere to X∞ iff
P ({ω : lim Xn (ω) = X∞ (ω), X∞ (ω) < ∞}) = 1
(36)
n→∞
B
Matlab code
function S = stock(S0, T, r, sigma, t, n)
% calculates price paths of a stock with
% S0: initial value
% T: maturity time
% r: risk-free rate
% sigma: volatility
% t: number of time steps
% n: number of paths
stemp = S0*ones(n,t+1);
state = 1022008; % fix seed of random generator for reproducible results
rand(’state’, state);
randn(’state’, state);
dt = T/t;
for i = 2:(t+1)
stemp(:,i)= stemp(:,i-1).*exp(sigma*randn(n,1)*sqrt(dt)+(r-0.5*sigma^2)*(dt));
end
S = stemp;
function Z = payoff(S,k)
nm = size(S);
n = nm(1);
m = nm(2);
K = k*ones(n,m);
Z = max(0, K - S);
function itm = inthemoney(s,p)
isitm = p>0;
numitm = sum(isitm);
n = size(p);
itm = zeros(numitm,1);
P
D
G
45
January 4, 2008
B. MATLAB CODE
j = 1;
for i = 1:n
if isitm(i) == 1;
itm(j) = s(i);
j = j+1;
end
end
function setCF = setcashflow(CF, beta, svec, p, degree)
if size(beta) ~= degree+1
error(’wrong dimension beta’)
end
if size(CF) ~= size(p)
error(’size CF and payoff do not match’)
end
n = size(p);
cont = beta(degree+1)*ones(n,1);
for i = 0:(degree-1)
cont = cont + beta(degree-i)*svec;
svec = svec.*svec;
end
setCF = CF;
for i = 1:n
if cont(i) < p(i) && p(i) > 0
setCF(i) = p(i);
end
end
function [LS,stderror,S,CF] = longstaff(S0, K, T, r, sigma, t, n, degree, regtype)
% regtype: choose 0 for polyfit and 1 for svdfit.
df = exp(-r/(t/T)); % discount factor for one time step
if size(S0) == 1, S = stock(S0, T, r, sigma, t, n);
else S = S0; end
P = payoff(S,K);
CF = P(:,t+1);
time = t;
while time > 1
pcurrent = P(:,time);
svec = S(:,time);
CF = CF*df;
x = inthemoney(svec, pcurrent);
y = inthemoney(CF,pcurrent);
if and(regtype == 1,size(x) > 2)
beta = svdfit(x,y,degree);
elseif or(regtype == 0, size(x) > 0)
beta = polyfit(x,y,degree);
end
if size(x) > 0
CF = setcashflow(CF, beta, svec, pcurrent, degree);
end
time = time - 1;
end
CF = df*CF;
LS = mean(CF);
P
D
G
46
January 4, 2008
B. MATLAB CODE
stderror = std(CF)/sqrt(n);
function [logintervalue, snextorder] = sortforweights(snextvec)
n = length(snextvec);
snextsorted = sort(snextvec);
intervalue = filter([1,1],2,snextsorted);
intervalue(1) = 0;
intervalue(n+1) = Inf;
logintervalue = log(intervalue);
for i = 1:n
snextorder(i) = 1+find(snextsorted==snextvec(i));
end
function w = weights(scurrent,n, mu, sigma, dt, logintervalue, snextorder)
sortedbounds = (logintervalue - log(scurrent)-(mu-0.5*sigma^2)*dt)/(sigma*sqrt(dt));
sortednormvals = normcdf(sortedbounds);
sortedweights = filter([1,-1],1,sortednormvals);
for j = 1:n
w(j,:) = sortedweights(snextorder(j));
end
function [WLB,stderror,S,CF] = weightedlowerbound(S0, K, T, r,
sigma, t, n, degree, regtype)
% regtype: choose 0 for polyfit and 1 for svdfit.
dt = T/t;
df = exp(-r*(dt)); % discount factor for one time step
if size(S0) == 1, S = stock(S0, T, r, sigma, t, n);
else S = S0; end
P = payoff(S,K);
CF = P(:,t+1);
time = t;
while time > 1
pcurrent = P(:,time);
svec = S(:,time);
CF = CF*df;
[loginterval, order] = sortforweights(S(:,time+1));
for i=1:n
if pcurrent(i) > 0
wcont = weights(svec(i), n, r, sigma, dt, loginterval, order);
cont = wcont’*CF;
if cont < pcurrent(i)
CF(i) = pcurrent(i);
end
end
end
time = time - 1;
end
CF = df*CF;
WLB = mean(CF);
stderror = std(CF)/sqrt(n);
function dm = discountmatrix(r,t,T,n)
dm = ones(n,t+1);
for i = 2:(t+1)
P
D
G
47
January 4, 2008
B. MATLAB CODE
dm(:,i) = dm(:,i-1)*exp(-r*(T/t));
end
function [cashFlowVec, contVec, exerciseVec] = setcashflowextra(CF,beta,S,exval)
if size(beta) ~= 3
error(’wrong dimension beta’)
end
if size(CF) ~= size(exval)
error(’size CF and payoff do not match’)
end
n = size(exval);
exerciseVec = zeros(n,1);
contVec = (S.*S)*beta(1) + S*beta(2) + beta(3);
cashFlowVec = CF;
for i = 1:n
if contVec(i) < exval(i) && exval(i) > 0
cashFlowVec(i) = exval(i);
exerciseVec(i) = 1;
end
end
function [LS, S, CF, cont, exScheme] = longstaffextra(S0, K, T, r,
sigma, t, n, regtype)
% regtype: choose 0 for polyfit, 1 for svdfit and 2 for weighted.
df = exp(-r*(T/t)); % discount factor for one time step
if size(S0) == 1, S = stock(S0, T, r, sigma, t, n);
else S = S0; end
P = payoff(S,K);
exScheme = zeros(n,t+1);
exScheme(:,t+1) = P(:,t+1)>0;
cont = zeros(n,t+1);
CF = P;
time = t;
while time > 1
pcurrent = P(:,time);
svec = S(:,time);
CF(:,time) = CF(:,time+1)*df;
x = inthemoney(svec, pcurrent);
y = inthemoney(CF(:,time),pcurrent);
if and(regtype == 1,size(x) > 2)
beta = svdfit(x,y,2);
elseif or(regtype == 0, size(x) > 0)
beta = polyfit(x,y,2);
end
if size(x) > 0
[CF(:,time), cont(:,time), exScheme(:,time)] = setcashflowextra(CF(:,time),
beta, svec, pcurrent);
end
time = time - 1;
end
CF(:,time) = df*CF(:,time+1);
LS = mean(CF(:,time));
stderror = std(CF(:,time))/sqrt(n);
P
D
G
48
January 4, 2008
B. MATLAB CODE
function [lower, upper, lookback, lstderror, ustderror, lbstderror]
= simpleupperbound(S0, K, T, r, sigma, t, n)
[lower, S, CF, contVal, exScheme] = longstaffextra(S0, K, T, r, sigma, t, n, 1);
dm = discountmatrix(r,t,T,n);
CF = CF.*dm;
P = payoff(S,K);
P = P.*dm;
contVal = contVal.*dm;
pi = lower*ones(n,1);
runningmax = zeros(n,1);
lookback = zeros(n,1);
for i = 2:(t + 1)
for j = 1:n
if exScheme(j,i) == 1
lcurrent = CF(j,i);
lexpected = contVal(j,i);
pi(j) = pi(j) + lcurrent - lexpected;
end
end
runningmax = max(runningmax, P(:,i)-pi);
lookback = max(lookback, P(:,i));
end
totalCF = CF(:,1) + runningmax;
upper = mean(totalCF);
delta = mean(runningmax);
lbstderror = std(lookback)/sqrt(n);
lookback = mean(lookback);
lstderror = std(CF(:,1))/sqrt(n);
ustderror = std(totalCF)/sqrt(n);
function [lower,upper,stderror,S] = weightedupperbound(S0, K, T, r, sigma, t, n)
% K: strike price
% T: maturity time
% t: number of exercise moments
% n: number of simulated paths
[lower, S, cf, cont, exscheme] = longstaffextra(S0, K, T, r, sigma, t, n, 1);
clear cont
dt = T/t;
df = exp(-r*dt);
dm = discountmatrix(r,d,T,n);
P = payoff(S,K).*dm; % discounted payoff matrix
clear dm
pi = lower*ones(n,1); % initial value of pi
runningmax = zeros(n,1);
for i = 2:(t+1)
if i > 2
[exploginterval, exporder] = sortforweights(S(:,i));
end
if i < d+1
[contloginterval, contorder] = sortforweights(S(:,i+1));
end
for j = 1:n
if i == 2
lexpected = lower;
P
D
G
49
January 4, 2008
B. MATLAB CODE
else
wexpected = weights(S(j,i-1),n, r, sigma, dt, exploginterval, exporder);
lexpected = wexpected’*cf(:,i)*df^(i-1);
end
lcurrent = 0;
if or(exscheme(j,i) == 1, i==d+1)
lcurrent = P(j,i);
else
wcont = weights(S(j,i),n, r, sigma, dt, contloginterval, contorder);
lcont = wcont’*cf(:,i+1)*df^(i);
lcurrent = lcont;
end
pi(j) = pi(j) + lcurrent - lexpected;
end
runningmax = max(runningmax, P(:,i)-pi);
end
totalCF = cf(:,1) + runningmax;
delta = mean(runningmax);
upper = mean(totalCF);
stderror = std(totalCF)/sqrt(n);
function bs = blackscholes(S0, K, r, sigma, T, c)
% c = 0 for put and c = 1 for call
d1 = (log(S0/K) + (r+0.5*sigma^2)*T)/(sigma*sqrt(T));
d2 = d1 - sigma*sqrt(T);
if c == 0
bs = K*exp(-r*T)*normcdf(-d2) - S0*normcdf(-d1);
else if c == 1
bs = S0*normcdf(d1)-K*exp(-r*T)*normcdf(d2);
else
error(’take 0 for put or 1 for call’)
end
end
P
D
G
50
January 4, 2008
REFERENCES
References
[1] L. Andersen and M. Broadie. Primal-dual simulation algorithm for pricing multidimensional American options. Management Science, 50(9):1222—1234, 2004.
[2] F. Black. The pricing of commodity contracts. Journal of Financial Economics, pages 167—179,
1976.
[3] F. Black and M. Scholes. The pricing of options and corporate liabilities. Journal of Political
Economy, 3:637—654, 1973.
[4] A. Brace, D. Ga̧tarek, and M. Musiela. The market model of interest rate dynamics. Mathematical
Finance, 7(2):127—155, 1997.
[5] J. C. Cox, S. A. Ross, and M. Rubinstein. Option pricing: A simplified approach. Journal of Financial
Economics, 7(3):229—263, 1979.
[6] P. Dupuis and H. Wang. On the convergence from discrete to continuous time in an optimal stopping
problem. The Annals of Applied Probability, 15(2):1339—1366, 2005.
[7] T. S. Ferguson. Mathematical Statistics: A Decision Theoretic Approach. Academic Press, New
York, 1967.
[8] P. Glasserman. Monte Carlo Methods in Financial Engineering. Springer, New York, 2004.
[9] M. Haugh and L. Kogan. Pricing American options: A duality approach. Operations Research,
52(2):258—270, 2004.
[10] J. Hull. Options, Futures, and Other Derivatives. Pearson Prentice Hall, New Jersey, 6th edition,
2006.
[11] F. Jamshidian. Minimax optimality of Bermudan and American claims and their Monte-Carlo upper
bound approximation. 2003.
[12] I. Karatzas and S. Shreve. Brownian Motion and Stochastic Calculus. Springer, New York, 1991.
[13] D. Lamberton. Error estimates for the binomial approximation of American put options. The Annals
of Applied Probability, 8(1):206—233, 1998.
[14] F. A. Longstaff and E. S. Schwartz. Valuing American options by simulation: A simple least-squares
approach. Review of Financial Studies, 14(1):113—147, 2001.
[15] P. K. Medina and S. Merino. Mathematical Finance and Probability. 2003.
[16] L. C. G. Rogers. Monte Carlo valuation of American options. Mathematical Finance, 12(3):271—286,
2002.
[17] J. L. Snell. Applications of martingale system theorems. Transactions of the American Mathematical
Society, 73(2):293—312, 1952.
[18] J. Steele. Stochastic Calculus and Financial Applications. Springer, New York, 2001.
P
D
G
51
January 4, 2008