Lecture 8. Numerical PDE methods for exotic options. Lecture Notes by Andrzej
Palczewski. Computational Finance – p. 1 ...
Lecture 8
Numerical PDE methods for exotic options Lecture Notes by Andrzej Palczewski
Computational Finance – p. 1
Barrier options For barrier option part of the option contract is triggered if the asset price hits some barrier S = X , at some time prior to expiry. Depending on the way the hitting time is monitored we distinguish following options: continuous monitoring (called American barrier) – hitting moment can be any time between issue and expiry of the option; discrete monitoring – security price is monitored only in selected moments of time (say daily or weekly); discrete monitoring called European barrier – security price is monitored only at expiry. Computational Finance – p. 2
Barrier options – cont. Depending on the conditions under which the option gets or losses value we have following type of barrier options: up-and-in – the option expires worthless unless the barrier S = X is reached from below; down-and-in – the option expires worthless unless the barrier S = X is reached from above; up-and-out – the option expires worthless if the barrier S = X is reached from below; down-and-out – the option expires worthless if the barrier S = X is reached from above.
Computational Finance – p. 3
Barrier options – valuation The value of a barrier option can be computed using the Black-Scholes equation. For European options with barriers of European or American type there are explicit analytic formulas (although some of them are quite complicated). But American options or option with the barrier monitored discretely have to be valued numerically. To solve the Black-Scholes equation for barrier options we have to supplement the equation with proper boundary and terminal conditions.
Computational Finance – p. 4
Knock-out options Terminal conditions are as for vanila options modified by limitations coming from boundary conditions. Boundary conditions: Down-and-out option V (S, t) = 0, for S = X, V (S, t) = boundary value for vanila option, for S > X.
Up-and-out option V (S, t) = boundary value for vanila option, for S < X, V (S, t) = 0, for S = X. Computational Finance – p. 5
Double knock-out options A double knock-out option is a barrier option which expires worthless when the price of the underlying asset is to the left of the lower barrier X1 or to the right of the upper barrier X2 . Terminal conditions are as for vanila options modified by limitations coming from boundary conditions. Boundary conditions:
V (S, t) = 0, for S = X1 , V (S, t) = 0, for S = X2 .
Computational Finance – p. 6
Knock-in options Down-and-in option. For S ∈ [0, X] this is a plain vanila option. We show conditions for S > X . Terminal condition V (S, T ) = 0 for S > X.
Boundary condition V (S, t) → 0 as S → ∞, V (X, t) = C(X, t),
where C(S, t) is the price of corresponding vanila option. Computational Finance – p. 7
Up-and-in option. For S ∈ [X, ∞) this is a plain vanila option. We show conditions for S < X . Terminal condition V (S, T ) = 0 for S < X.
Boundary condition V (S, t) → 0 as S → 0, V (X, t) = C(X, t),
where C(S, t) is the price of corresponding vanila option. Computational Finance – p. 8
Discretely monitored barrier A boundary constraint which holds at a point in time can be applied directly in an explicit manner. We compute the solution for a given time level and apply the constraint if necessary. Then move to the next time level. Consider a down-and-out option with barrier X monitored in time moments tα . At time level ν we compute V ν and then apply the boundary constraint ( 0, if si ≤ δ(tν ,tα ) X, ν Vi = V (si , tν ) = Viν , otherwise where δ(tν ,tα ) is the Kronecker delta.
Computational Finance – p. 9
Discretely monitored barrier – cont. Boundary conditions on outer boundaries For discretely monitored barriers we need boundary conditions for S → 0 and/or S → ∞. To impose these boundary conditions correctly we can use the relation knock-in option + knock-out option = vanilla option
(1)
which holds as well for continuously and discretely monitored barriers when the monitoring moments are the same for in and out options. Consider again a down-and-out option with barrier monitored discretely. For the upper boundary we have V (S, t) = boundary value for vanila option, for S → ∞.
Computational Finance – p. 10
Discretely monitored barrier – cont. To impose proper conditions on the lower boundary S = 0 let us observe that for the down-and-in option we have V (S, t) = boundary value for vanila option, for S → 0.
Using relation (1) we obtain for a down-and-out option V (S, t) = 0, for S → 0.
Boundary conditions for other options can be obtained in a similar manner.
Computational Finance – p. 11
Lookback options For the basic lookback contracts, the payoff comes in two varieties: the fixed strike and the floating strike. These options have payoffs that are the same as vanilla options except that in the floating strike option the vanilla exercise price is replaced by the maximum or minimum. In the fixed strike option it is the asset value in the vanilla option that is replaced by the maximum or minimum. MT − ST , floating put, S − m , floating call T T H(ST , JT ) = + , fixed call, (M − K) T (K − mT )+ , fixed put,
where JT denotes MT or mT and MT = max0≤t≤T St , mT = min0≤t≤T St .
Computational Finance – p. 12
Lookback options – cont. Depending on the way the maximum or minimum is monitored we distinguish: continuous monitoring – security price is monitored continuously between the issue and expiry of the option; discrete monitoring – security price is monitored only in selected moments of time (say weekly or monthly). The pair (St , Jt ) is a Markov process, and the price at time t of the lookback option is equal to V (t, St , Jt ) where the function V is defined for t ∈ [0, T ] and (S, J) in an appropriate set depending whether J = M or J = m ( {(S, M ) ∈ R2+ : 0 ≤ S ≤ M }, for J = M , (S, J) ∈ m. Finance – p. 13 {(S, m) ∈ R2+ : 0 ≤ m ≤ S}, for J =Computational
Lookback options – valuation The value of a lookback option can be computed using an extended version of the Black-Scholes equation. We derive this equation assuming J = M . Let Z t n 1/n Mn (t) = Sτ . 0
We have
lim Mn (t) = max Sτ = Mt .
n→∞
0≤τ ≤t
Next we consider the function V (S, Mn , t), which can be think of as a price of an instrument depending on the variable Mn .
Computational Finance – p. 14
Black-Scholes equation Using the Feynman-Kac theorem and the differential
we obtain
1 Stn dMn (t) = n−1 dt n Mn (t)
∂V (S, Mn , t) 1 S n ∂V (S, Mn , t) ∂V (S, Mn , t) + + rS + n−1 ∂t ∂S n Mn ∂Mn 1 2 2 ∂ 2 V (S, Mn , t) + σ S − rV (S, Mn , t) = 0. 2 2 ∂S
Computational Finance – p. 15
Black-Scholes equation – cont. Since St ≤ max0≤τ ≤t Sτ = Mt then for S < M Sn 1 =0 lim n−1 n→∞ n M n
and we obtain the Black-Scholes equation ∂V (S, M, t) ∂V (S, M, t) 1 2 2 ∂ 2 V (S, M, t) −rV (S, M, t) = 0. +rS + σ S 2 ∂t ∂S 2 ∂S
Observe that the above equation is the standard onedimensional Black-Scholes equation in which the variable M plays the role of a parameter. This parameter enters however into boundary and terminal conditions. Computational Finance – p. 16
Black-Scholes equation – cont. At expiry we have V (S, M, T ) = H(S, M ).
We require a boundary condition on the line S = M . Consider the stochastic process St close to current maximum. Since the probability that the current maximum is still the maximum at expiry is zero, the option price must be insensitive to small changes of M when S is close to M . Hence ∂V (S, M, t) =0 ∂M
for S = M.
Computational Finance – p. 17
Black-Scholes equation – cont. Additional boundary conditions depend on the type of the option. For a floating put option we have V (0, M, t) = M e−r(T −t) .
For a floating call option we have boundary conditions as for a vanila option V (S, m, t) ≈ S for S very large.
Observe that in all these cases we have to solve a 3dimensional PDE.
Computational Finance – p. 18
Similarity reduction For floating strike lookback options the 3-dimensional BlackScholes equation can be reduced to 2 dimensions. We perform all calculations for a floating put option. S . When the payoff can We introduce the new variable x = M be written as (this is the case of the floating put and call) H(S, M ) = M h(x),
then we search for a solution of the Black-Scholes equation assuming V (S, M, t) = M W (x, t). The equation for W has the form ∂W (x, t) ∂W (x, t) 1 2 2 ∂ 2 W (x, t) − rW (x, t) = 0. + rx + σ x 2 ∂t ∂x 2 ∂x Computational Finance – p. 19
Similarity reduction – cont.
The terminal and boundary conditions are as follows: W (x, T ) = max(1 − x, 0), W (0, t) = e−r(T −t) , ∂W = W at x = 1. ∂x
Computational Finance – p. 20
Asian options For the basic Asian contracts, the payoff comes in two varieties: the average price and the average strike. These options have payoffs that are the same as vanilla options except that in the average strike option the vanilla exercise price is replaced by the average of asset prices. In the average price option it is the asset value in the vanilla option that is replaced by the average of asset prices. (Sb − K)+ ,
b +, (K − S)
b +, (ST − S)
(Sb − ST )+ ,
average price call, average price put, average strike call, average strike put,
where Sb denotes the average of asset prices.
Computational Finance – p. 21
Asian options – cont. There are several ways the average of past values of St can be formated: arithmetic average continuously monitored RT 1 Sb = T 0 St dt, arithmetic average discretely monitored 1 Pn b S = n i=1 Sti ,
geometric continuously monitored average RT 1 log(St )dt , Sb = exp T
0
geometric average 1/n Q n , i=1 Sti
discretely
monitored
Sb
=
Computational Finance – p. 22
Asian options – cont. Since for geometric average Asian options we have analytic expressions for the price, we are only interested in calculation of arithmetic average Asian option. In what follows, we shall describe the PDE method for the calculation of an arithmetic average continuously monitored Asian option. This problem leads to a 3-dimensional BlackScholes equation. For an arithmetic average continuously monitored Asian option this equation can be reduced to two dimensions and solved numerical by finite difference algorithms. For an arithmetic average discretely monitored Asian option we can use straightforwardly the known 2-dimensional Black-Scholes equation appropriately modifying initial conditions at the time of monitoring. Computational Finance – p. 23
Asian options – valuation The value of an arithmetic average continuously monitored Asian option can be computed using an extended version of the Black-Scholes equation. Let us consider a generalized arithmetic average At =
Z
t
f (Sτ , τ )dτ, 0
where f (x, t) depends on the type of averaging (for a simple arithmetic average f (x, t) = x up to a constant factor). The pair (St , At ) is a Markov process, and the price at time t of an arithmetic average Asian option is equal to V (t, St , At ) where the function V is defined for t ∈ [0, T ], St > 0 and At > 0. Computational Finance – p. 24
Black-Scholes equation Using the Feynman-Kac theorem and the differential dAt = f (St , t)dt
we obtain ∂V (S, A, t) ∂V (S, A, t) ∂V (S, A, t) + rS + f (S, t) + ∂t ∂S ∂A 1 2 2 ∂ 2 V (S, A, t) − rV (S, A, t) = 0. + σ S 2 2 ∂S
Computational Finance – p. 25
Similarity reduction We consider an arithmetic average strike call with payoff
1 ST − AT T
+
+ Z T 1 Sτ dτ . = ST 1 − T ST 0
This form of the payoff suggest introduction of an auxiliary variable Z t 1 Sτ dτ. Rt = St 0 Then the payoff is + 1 ST 1 − RT , T and we can look for the factorization V (S, A, t) = SH(R, t).
Computational Finance – p. 26
Similarity reduction – cont. The equation for H has the form ∂H(R, t) ∂H(R, t) 1 2 2 ∂ 2 H(R, t) = 0. + (1 − rR) + σ R 2 ∂t ∂R 2 ∂R
The terminal condition follows from the payoff + 1 H(RT , T ) = 1 − RT . T
Since St is integrable, then, from the definition of Rt , for R → ∞ we have S → 0. Remembering that for S → 0 call option is not exercised, we obtain H(R, t) = 0
for
R → ∞. Computational Finance – p. 27
Similarity reduction – cont. To obtain the boundary condition on the boundary R = 0 we return to the PDE which H fulfills. For R → 0 this equation gives ∂H(R, t) ∂H(R, t) + = 0 for R → 0. ∂t ∂R Finally we obtain the following boundary value problem ∂H ∂H 1 2 2 ∂ 2 H = 0, + (1 − rR) + σ R 2 ∂t ∂R 2 ∂R H = 0 for R → ∞, ∂H ∂H + = 0 for R → 0, ∂t ∂R + 1 H(RT , T ) = 1 − RT . T
Computational Finance – p. 28
Numerical scheme We solve the 2-dimensional Black-Scholes PDE of the previous slides (barrier, lookback and options) without transformation of variables. This approach is very usefull because the boundary conditions can be easily implemented. The equation reads ∂u(x, t) 1 2 2 ∂ 2 u(x, t) ∂u(x, t) − ρu(x, t) = 0, + α(x) + σ x 2 ∂t ∂x 2 ∂x
with appropriate terminal and boundary conditions.
Computational Finance – p. 29
Finite difference approximation Let vi,ν be an approximation of u(xi , tν ) and ηi approximation of
2α(xi ) xi+1 −xi−1 .
Then
vi,ν−1 − vi,ν = θAi vi−1,ν−1 + θBi vi,ν−1 + θCi vi+1,ν−1 + δt + (1 − θ)Ai vi−1,ν + (1 − θ)Bi vi,ν + (1 − θ)Ci vi+1,ν , (2)
where 1 22 Ai = (σ i − ηi ), 2
2 2
Bi = −(σ i + ρ),
1 22 Ci = (σ i + ηi ). 2
The choice of θ gives the explicit (θ = 0), the implicit (θ = 1) and the Crank-Nicolson (θ = 12 ) scheme. Computational Finance – p. 30
Spurious oscillations Numerical scheme (2), even if the grid is chosen properly to avoid instabilities, can be a subject of spurious oscillations.
Computational Finance – p. 31
Spurious oscillations – cont. To understand the phenomenon of spurious oscillations let us consider a model equation ∂u ∂u ∂ 2u +a = b 2. ∂t ∂x ∂x
The source of oscillations is the first order term a ∂u ∂x . To see this let us perform the von Neumann stability analysis. To this end we approximate the above equation by finite differences wj+1,ν − wj−1,ν wj+1,ν − 2wjν + wj−1,ν wj,ν+1 − wjν . +a =b 2 ∆t 2∆x (∆x)
Computational Finance – p. 32
Spurious oscillations – cont. Let us express the approximations wjν of the ν -th time level by a sum of Fourier modes X (ν) wjν = ck eikj∆x , k
The linearity of the numerical scheme allows to find a relation (ν+1) (ν) ck = G k ck , where Gk is the growth factor. For |Gk | ≤ 1 it is guaranteed that the modes eik∆x are not amplified.
Computational Finance – p. 33
Spurious oscillations – cont. For the model equation we arrive at Gk = 1 − 2λ + 2λ cos k∆x − iβλ sin k∆x
and |Gk |2 = (1 − 4λs2 )2 + 4β 2 λ2 s2 (1 − s2 ),
where b∆t λ= , 2 (∆x)
a∆x β= , b
k∆x s = sin . 2
A straightforward analysis of the polynomial |Gk |2 reveals that |Gk | ≤ 1 for 1 0 ≤ λ ≤ , and, in addition, for β > 2 we need λβ 2 ≤ 2. 2 Computational Finance – p. 34
Spurious oscillations – cont. The inequality 0 ≤ λ ≤ 1/2 brings back the stability criterion of the heat equation. β is called a mesh Péclet number and corresponds to the ∂u ∂2u ratio of the convection term a ∂x to the diffusion term b ∂x2 in the model equation.
It is clear that controlling oscillations means that β must be small.
Computational Finance – p. 35
Spurious oscillations for BS equation Theorem In order to prevent the formation of spurious oscillations in the numerical scheme (2), the following conditions must be satisfied σ2 (xi − xi−1 )2 < 2 ηi xi
and 2 x 1 i > σ2 + ρ. (1 − θ)δt (xi+1 − xi )(xi − xi−1 )
Computational Finance – p. 36
Upwind scheme The source of oscillations is the first order term a ∂u ∂x . Let us consider the model equation ∂u ∂u +a = 0. ∂t ∂x
The solution of this equation is F (x−at), where F (y) = u0 (y) is the initial condition for our equation u(x, 0) = u0 (x). For a > 0, we approximate the above equation by finite differences wj,ν+1 − wjν wj,ν − wj−1,ν +a =0 ∆t ∆x This scheme is called upwind scheme.
Computational Finance – p. 37
Upwind scheme – cont. To explain the name we return to the solution F (x − at). As t increases the profile F (y) drifts in positive x-directions. We say that ”the wind blows to the right”. In agreement with that ”blowing direction” we approximate the derivative wj,ν − wj−1,ν ∂u ≈ , ∂x ∆x i.e. the information flows from downstream to upstream nodes. The stability analysis for this scheme gives Gk = 1 − γ + γ e−ik∆x , ∆t . Then |Gk | ≤ 1 for γ ≤ 1. where γ = a ∆x Computational Finance – p. 38
Upwind scheme – cont. For a < 0, the upwind scheme is wj,ν+1 − wjν wj+1,ν − wj,ν +a = 0. ∆t ∆x
The stability analysis for this scheme gives |Gk | ≤ 1 for |γ| ≤ 1.
Computational Finance – p. 39