a finite-difierence approach to the pricing of barrier

35
A Finite-difference approach to the pricing of barrier options in stochastic skew models Andrey Itkin * , Peter Carr February 5, 2008 Revision: (submitted to the Journal of Computational Finance) Summary The market pricing of OTC FX options displays both stochastic volatility and stochastic skewness in the risk-neutral distribution governing currency returns. Carr and Wu develop a model with three dynamical state variables in order to capture this unique phenomenon. They then use Fourier methods to value simple European-style options. In this paper, we instead use finite differences to value both standard and barrier options. In particular, we apply operator splitting to enhance computational speed. * Volant Trading LLC, [email protected] Bloomberg LP, 731 Lexington Avenue, New York, NY 10022, (212) 617-5056, [email protected] 1

Upload: others

Post on 14-Apr-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A Finite-difierence approach to the pricing of barrier

A Finite-difference approach to the pricing of barrier options instochastic skew models

Andrey Itkin ∗, Peter Carr †

February 5, 2008

Revision:(submitted to the Journal of Computational Finance)

Summary

The market pricing of OTC FX options displays both stochastic volatility and stochastic skewnessin the risk-neutral distribution governing currency returns. Carr and Wu develop a model with threedynamical state variables in order to capture this unique phenomenon. They then use Fourier methodsto value simple European-style options. In this paper, we instead use finite differences to value bothstandard and barrier options. In particular, we apply operator splitting to enhance computationalspeed.

∗Volant Trading LLC, [email protected]†Bloomberg LP, 731 Lexington Avenue, New York, NY 10022, (212) 617-5056, [email protected]

1

Page 2: A Finite-difierence approach to the pricing of barrier

Contents

1 Introduction 4

2 Assumptions and Notation 4

3 Backward PIDE 5

4 Boundary conditions for barrier options 64.1 Down and Out Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64.2 Up-and-Out Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74.3 Double barrier Calls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

5 Necessary and sufficient condition for matrix of second derivatives 8

6 Numerical method 96.1 The Lie operator formalism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96.2 Jump-diffusion splitting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116.3 Convection-diffusion splitting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126.4 Our method of splitting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

7 Solution of integro-differential equations with operator Li, i = 1, 2 177.1 Coordinate transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177.2 Conservative form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207.3 Central difference scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

7.3.1 Computation of an integral term . . . . . . . . . . . . . . . . . . . . . . . . . . 227.3.2 Finite difference scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

8 Validation of the method 25

9 Numerical results 27

List of Figures

1 Mathematica commands to verify that the differential operators L1,2 commute as wellas the integral operators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2 New grid obtained from the uniform grid in x with the transformation Eq. (42) . . . . 193 d ln J(x)/dx as a function of S(x). Parameters for this test are given before the Fig. 2 204 New grid obtained from the uniform grid in x, vr with the transformation Eq. (42) . . 215 European call double barrier option price in the Heston model - BDF2 scheme. Pa-

rameters of the test are given in the Table 1, and ρ = 0, rd = rf = 0.05 . . . . . . . . . 286 European call double barrier option price in the Heston model - BDF2 scheme. Pa-

rameters of the test are given in the Table 1, and ρ = −0.5, rd = 0.05, rf = 0.03 . . . . 287 Barrier call option value under Stochastic Skew model with no jumps.

Parameters of the test are: σ = 0.2, ρR = 0.7, ρL = −0.2, κ = 0.1. Other parameters -see Table 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

8 Barrier call option value under Stochastic Skew model with no jumps.Parameters of the test are: σ = 0.2, ρR = 0.7, ρL = −0.2, κ = 0.1. Other parameters -see Table 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models2

Page 3: A Finite-difierence approach to the pricing of barrier

9 Barrier call option value under Stochastic Skew model with no jumps.Parameters of the test are: σ = 0.2, ρR = 0.7, ρL = −0.2. Other parameters - see Table 1. 30

10 Barrier call option value under Stochastic Skew model with the Kou double exponentialmodel of jumps.Parameters of the test are: σ = 0.2, ρR = 0.7, ρL = −0.2, κ = 0.1. Other parameters -see Table 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

11 Barrier call option value under Stochastic Skew model with no jumps.Parameters of the test are: σ = 0.2, ρR = 0.7, ρL = −0.2, κ = 0.1. Other parameters -see Table 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models3

Page 4: A Finite-difierence approach to the pricing of barrier

1 Introduction

Every 6 months, the Bank for International Settlements (BIS) publishes an overview of OTC deriva-tives market activity. The report covers OTC derivatives written on credit, interest rate, currencies,commodities, and equities. The latest report indicated that as of the end of June 2006, the total no-tional amount outstanding in OTC derivatives across all such asset classes stood at abut 370 trillionUS dollars. Just over a tenth of this figure is attributable to OTC derivatives on foreign exchange(FX), which includes forwards, swaps, and options. The notional in OTC FX options stands at $9trillion, which is roughly fifty times the notional in exchange-traded FX contracts.

If one wishes to understand how FX options are priced, it clearly becomes important to access OTCFX options data. Unfortunately, this data is not as readily available as its less liquid exchange-tradedcounterpart. As a consequence, almost all academic empirical research on FX options has focussedon the exchange-traded market. An exception is a paper by Carr and Wu[1] (henceforth CW), whoexamine OTC FX options on dollar-yen and on dollar-pound (cable). CW document an empiricalphenomenon that is unique to FX options markets. Specifically, at every maturity, the sensitivity ofimplied volatility to moneyness switches signs over calendar time. This contrasts with the pricing ofsay equity index options, for which the sensitivity of implied volatility to moneyness is consistentlynegative over (calendar) time. Since practitioners routinely refer to the sensitivity of implied volatilityto moneyness as skew, CW term this time-varying sensitivity “stochastic skew”. Using time-changedLevy processes, they develop a class of option pricing models which can accomodate stochastic skew.While their models can in principle be used to price any FX exotic, CW only develop their methodologyfor plain vanilla OTC FX options, which are European-style.

In the OTC FX arena, there is a thriving market for barrier options, whose pricing is not coveredby CW. The purpose of this paper is to show that barrier options can be priced in the stochastic skewmodels of CW. These models have 3 stochastic state variables, which evolve as a time-homogeneousMarkov process. While Monte Carlo can be used to price barrier options in these models, this paperfocusses on the use of finite difference methods. More specifically, we show that operator splittingcan be used to price a wide variety of barrier options. In particular, we examine the valuation ofdown-and-out calls, up-and-out calls, and double barrier calls.

An overview of this paper is as follows The next section lays out our assumptions and notation. Thesubsequent section develops a partial integro-differential equation (PIDE) that governs the arbitrage-free value of any barrier option on the continuation region. The following section develops boundaryconditions for the 3 types of barrier options that we cover. The next three sections show how operatorsplitting can be applied to the resulting boundary value problems. The eighth section discusses thetests we use to validate the method, while the penultimate section shows our numerical results. Thefinal section concludes.

2 Assumptions and Notation

We assume frictionless markets and no arbitrage. Carr and Wu [1] further assume that under anequivalent martingale measure Q, the dynamics of the spot exchange rate and the two activity rates

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models4

Page 5: A Finite-difierence approach to the pricing of barrier

are given by the following system of stochastic differential equations:

dSt = (rd − rf )St−dt + σ√

V Rt St−dWR

t +∫ ∞

0St−(ex − 1)

[µR(dx, dt)− λ

e−|x|/νj

|x|1+α

√V R

t dxdt

]

+ σ√

V Lt St−dWL

t +∫ 0

−∞St−(ex − 1)

[µL(dx, dt)− λ

e−|x|/νj

|x|1+α

√V L

t dxdt

]

dV Rt = κ(1− V R

t )dt + σV

√V R

t dZRt (1)

dV Lt = κ(1− V L

t )dt + σV

√V L

t dZLt

dWRt dWL

t = 0, dZRt dZL

t = 0, dWRt dZL

t = 0, dWLt dZR

t = 0, dWRt dZR

t = ρRdt, dWLt dZL

t = ρLdt,

for t ∈ [0,Υ] and where rd, rf , σ, λ, σV , κ are nonnegative constants, S0, VR0 , V L

0 , νj are positive con-stants, α < 2 is constant, ρR, ρL ∈ [−1, 1] are constant, and where Υ is some arbitrarily distanthorizon.

Since the spot exchange rate can jump, St− denotes the spot price just prior to any jump att. The processes WR,WL, ZL, ZR are all Q standard Brownian motions. The random measuresµR(dx, dt) and µL(dx, dt) are used to count the number of up jumps and down jumps of size x in thelog spot FX rate at time t. The processes

∫ t0

∫∞0 Ss−(ex − 1)λ e−|x|/νj

|x|1+α

√V R

s dxds and∫ t0

∫ 0−∞ Ss−(ex −

1)λ e−|x|/νj

|x|1+α

√V L

s dxds respectively compensate the driving jump processes∫ t0

∫∞0 St−(ex−1)µR(dx, dt)

and∫ t0

∫ 0−∞ St−(ex − 1)µL(dx, dt). As a result, the last terms in each line of the first equation in (1)

are the increments at t of a Q jump martingale.

When calibrating, we assume that S0, rd, and rf are directly observable. The parameter α < 2 ispre-specified. This leaves the two state variables V R

t , V Lt and the 7 free parameters σ, λ, σV , κ, νj , ρ

R, ρL

to be identified from the time series of option prices across multiple maturities and moneyness levels.

3 Backward PIDE

The vector process [St, VRt , V L

t , t] is Markovian in itself on the state space S > 0, VR > 0, VL > 0, t ∈[0, T )). Let:

C(S, VR, VL, t) ≡ e−r(T−t)EQ{(ST −K)+|[St, VRt , V L

t , t] = [S, VR, VL, t]} (2)

be the smooth function relating the arbitrage-free value of a European call option at time t to the

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models5

Page 6: A Finite-difierence approach to the pricing of barrier

vector of state variables. This function is governed by the following PIDE:

rdC(S, VR, VL, t) =∂

∂tC(S, VR, VL, t) + (rd − rf )S

∂SC(S, VR, VL, t) (3)

+ κ(1− VR)∂

∂VRC(S, VR, VL, t) + κ(1− VL)

∂VLC(S, VR, VL, t)

+σ2S2(VR + VL)

2∂2

∂S2C(S, VR, VL, t) + σρRσV SVR

∂2

∂S∂VRC(S, VR, VL, t)

+ σρLσV SVL∂2

∂S∂VLC(S, VR, VL, t) +

σ2V VR

2∂2

∂V 2R

C(S, VR, VL, t) +σ2

V VL

2∂2

∂V 2L

C(S, VR, VL, t)

+√

VR

∫ ∞

0

[C(Sex, VR, VL, t)− C(S, VR, VL, t)− ∂

∂SC(S, VR, VL, t)S(ex − 1)

e−|x|/νj

|x|1+αdx

+√

VL

∫ 0

−∞

[C(Sex, VR, VL, t)− C(S, VR, VL, t)− ∂

∂SC(S, VR, VL, t)S(ex − 1)

e−|x|/νj

|x|1+αdx,

on the domain S > 0, VR > 0, VL > 0 and t ∈ [0, T ].The same PIDE and domain holds for European put values. For American and barrier put and

call values, the above PIDE holds on the continuation region (only).Further it is convenient to introduce a backward time τ = T − t. In the new time the Eq. (3) reads

∂τC(S, VR, VL, τ) = −rdC(S, VR, VL, τ) + (rd − rf )S

∂SC(S, VR, VL, τ) (4)

+ κ(1− VR)∂

∂VRC(S, VR, VL, τ) + κ(1− VL)

∂VLC(S, VR, VL, τ)

+σ2S2(VR + VL)

2∂2

∂S2C(S, VR, VL, τ) + σρRσV SVR

∂2

∂S∂VRC(S, VR, VL, τ)

+ σρLσV SVL∂2

∂S∂VLC(S, VR, VL, τ) +

σ2V VR

2∂2

∂V 2R

C(S, VR, VL, τ) +σ2

V VL

2∂2

∂V 2L

C(S, VR, VL, τ)

+√

VR

∫ ∞

0

[C(Sex, VR, VL, τ)− C(S, VR, VL, τ)− ∂

∂SC(S, VR, VL, τ)S(ex − 1)

e−|x|/νj

|x|1+αdx

+√

VL

∫ 0

−∞

[C(Sex, VR, VL, τ)− C(S, VR, VL, τ)− ∂

∂SC(S, VR, VL, τ)S(ex − 1)

e−|x|/νj

|x|1+αdx,

4 Boundary conditions for barrier options

4.1 Down and Out Calls

Let L < S be a lower barrier. On the domain S > L, VR > 0, VL > 0 and t ∈ [0, T ], the down-and-out call value function solves the PIDE Eq. (3). On the domain S < L, VR > 0, VL > 0 andt ∈ [0, T ], C(S, VR, VL, t) = 0.

The terminal condition for the European call value is:

C(S, VR, VL, T ) = (S −K)+, S ∈ R, VR > 0, VL > 0. (5)

We impose a zero gamma boundary condition at extremely high return levels:

limS↑∞

∂2

∂S2C(S, VR, VL, t) = 0, VR > 0, VL > 0, t ∈ [0, T ]. (6)

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models6

Page 7: A Finite-difierence approach to the pricing of barrier

There exist a wide discussion in the literature on how to impose boundary conditions at extremevalues of the activities (see, for instance, [2], [3], [4] and discussion at forums at http//:www.wilmott.com). According to that the most reasonable and practically useful way to setup these conditions is asfollows. As either activity rate becomes infinite, the European call value is given by a Neumann-wisecondition:

limVR↑∞

∂2

∂S2C(S, VR, VL, t) = 0, S ∈ R, VL > 0, t ∈ [0, T ].

limVL↑∞

∂2

∂S2C(S, VR, VL, t) = 0, X ∈ R, VR > 0, t ∈ [0, T ]. (7)

These conditions mean that the diffusion flow vanishes at the boundary in the direction orthogonalto that boundary. Note that in what follows we don’t use these conditions as it is. Instead wesubstitute these conditions into the Eq. (3) and further use the obtained equation as the boundarycondition.

As either activity rate approaches zero, we must either evaluate the above PIDE with the appro-priate value of V = 0, or else study the effect of reflecting boundary conditions. Some authors assumeit is empirically safe to set Vmin = 0 and let the value of C vanish at Vmin. However, such boundaryconditions are inconsistent with the terminal function at t = T and S > K. This discrepancy createsa jump in the option value at t = T and S > K, thus introducing additional computational error intothe solution.

Note that the original stochastic model doesn’t require any boundary condition at V = 0. Thatseems to be reasonable if the convection at V = 0 in the V direction is flowing outside (that is truefor the described model as could be seen from the Eq. (3)). But as it is know from CFD for thepure convection equation no boundary condition can be imposed if the flow points outside. Sincediffusion slowly disappears as V approaches the zero boundary it is possible that the same appliesto the Eq. (3). Therefore, motivated by the stability result of the numerical scheme, for instance,[3] suggests to leave the left variance boundary at V = 0 and not to impose any artificial boundarycondition. Instead the author recommends to discretise the PDE at these boundary grid points byfinite differences from the right as it is for example done in upwind schemes. The accurate numericalimplementation of the left variance boundary is decisive for errors of the numerical solution at anyinternal point we are interested in since the boundary V = 0 influence the value at this internal point.

Therefore, in this paper at V = 0 we use a ”weak” boundary condition. Namely, we impose sameboundary conditions as at the infinite activities

limVR↑0

∂2

∂S2C(S, VR, VL, t) = 0, S ∈ R, VL > 0, t ∈ [0, T ].

limVL↑0

∂2

∂S2C(S, VR, VL, t) = 0, X ∈ R, VR > 0, t ∈ [0, T ]. (8)

and then substitute these expression into the original PIDE further using the result of this substitutionas the boundary condition.

4.2 Up-and-Out Calls

The terminal condition for the European call value is still given by the Eq. (5).Let H < S be a higher barrier. On the domain H > S, VR > 0, VL > 0 and t ∈ [0, T ], the

call value function solves the PIDE Eq. (3). On the domain H < S, VR > 0, VL > 0 and t ∈[0, T ], C(S, VR, VL, t) = 0. Boundary conditions at extreme values of VR and VL are same as for theDown-and-Out call.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models7

Page 8: A Finite-difierence approach to the pricing of barrier

4.3 Double barrier Calls

The terminal condition for the European call value is still given by the Eq. (5).On the domain H > S > L, VR > 0, VL > 0 and t ∈ [0, T ], the call value function solves

the PIDE Eq. (3). On the domain S < L, VR > 0, VL > 0 or S < L, VR > 0, VL > 0 and t ∈[0, T ], C(S, VR, VL, t) = 0. Boundary conditions at extreme values of VR and VL are same as for theDown-and-Out call.

5 Necessary and sufficient condition for matrix of second

derivatives

Before we proceed we have to underline that any numerical scheme could be applied to the aboveequation and proved to be convergent if the matrix of second derivatives of the Eq. (3) is symmetric andpositive definite. This statement is also equivalent to the existence of the matrix diagonal dominance.

Lemma 1. Matrix of second derivatives of the Eq. (4) is positive definite if |ρL| < 1 and |ρR| < 1.

Proof 1. Necessary and sufficient conditions for the matrix of coefficients (aij)3×3 to be positivedefinite are:

a11a22 − a212 > 0, a11a33 − a2

13 > 0, a22a33 − a223 > 0, (9)

a11a22a33 − a11a223 − a22a

213 − a33a

212 + 2a12a13a23 > 0

These results are well known and follow from completion of squares. The proof is given in [5].For the Eq. (3) and vector of independent variables x = (x, vr, vl) the matrix (aij)3×3 ≡ a(x) is

a(x) =12

∣∣∣∣∣∣

σ2S2(VL + VR) SVRσσV ρR SVLσσV ρL

SVRσσV ρR σ2V VR 0

SVLσσV ρL 0 σ2V VL

∣∣∣∣∣∣(10)

so direct substitution shows that

a11a22 − a212 =

14S2σ2σ2

V VR

[VL + VR(1− ρ2

R)]

> 0, if|ρR| < 1; (11)

a11a33 − a213 =

14S2σ2σ2

V VL

[VR + VL(1− ρ2

L)]

> 0, if|ρL| < 1;

a22a33 − a223 =

14VLVRσ4

V > 0;

a11a22a33 − a11a223 − a22a

213 − a33a

212 + 2a12a13a23 =

18S2σ2σ4

V VLVR

[VL(1− ρ2

L) + VR(1− ρ2R)

]> 0, if|ρL| < 1 && |ρR| < 1;

¥.

As follows from linear algebra any non-degenerate coordinate transformation also keeps the positivedefiniteness of the matrix.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models8

Page 9: A Finite-difierence approach to the pricing of barrier

6 Numerical method

To solve the Eq. (3) we heavily utilize the method of fractional steps [6, 7, 8] also known in thefinancial literature as Russian splitting. This method has been proposed by the above cited Russianauthors and sometimes is also called as locally one-dimensionally schemes (LOD). The method offractional steps reduces the solution of the original N -dimensional unsteady problem to the solutionof N three-diagonal matrix equations per time step. Marchuk [9] and then Strang [10] extendedthis idea for complex physical processes (for instance, diffusion in the chemically reacting gas, oradvection-diffusion problem) by providing in addition to splitting on spatial coordinates also splittingon physical processes. Such an approach becomes especially efficient if characteristic times of evolution(relaxation time) of such processes are highly different.

6.1 The Lie operator formalism

First we consider a general theory of splitting following to [11]. Suppose we can write the Eq. (4) inthe form

∂τC(S, VR, VL, τ) =

4∑

i=1

LiC(S, VR, VL, τ). (12)

Here Li are some differential or integral operators acting on function C(S, VR, VL, τ).Denote S(θ) the solution (semigroup) operator for the Eq. (4)), that is

C(τ + θ) = S(θ)C(τ),

and Sk(θ) the solution operator for the subproblem Cτ = Lk(C). Let Sk(θ) denote a consistentnumerical approximation to Sk(θ). For the abstract initial-boundary value problem Eq. (12) we thencompactly represent the celebrated Strang splitting scheme [10] by

C(τ + θ) = S(θ)C(τ), S(θ) = S1(12θ)S2(

12θ)S3(θ)S2(

12θ)S1(

12θ). (13)

The solution C(τ +θ) denotes the approximation to C(τ +θ) resulting from approximately solvingthe subproblems Cτ = Lk(C) in the given sequential order. The solution operator S is the resultingsplitting approximation to S.

Strang splitting always leads to a 2nd-order approximation, at least in a formal sense. We areinterested in the structure of the splitting error. Albeit tedious, local splitting errors can always beobtained by straightforward Taylor expansions. This, however, leads to an expression which doesnot reveal in a clear way the structure of the error. For its derivation Lanser and Verwer thereforeadopt the Lie operator formalism. This formalism will enable use of the celebrated Baker-Campbell-Hausdorf formula. The BCH formula yields a lot of insight in the particular structure of splittingerrors.

Consider first the general differential equation Eq. (12) (the integral equation could be treated inthe same way). With each given operator L, a Lie operator is associated, which we denote by F . ThisLie operator is a linear operator acting on the space of operators defined on S. Operator F mapseach operator G into the new operator FG, such that for any element c ∈ S

(FG)(C) = G′(C)L(C)

where ′ denotes differentiation with respect to C. For the solution C(τ) of the Eq. (12) it easily followsthat

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models9

Page 10: A Finite-difierence approach to the pricing of barrier

(FG)(C(τ)) =∂

∂τG(C(τ)),

and from induction to k that

(FkG)(C(τ)) =∂k

∂τkG(C(τ)).

The above relations hold for any G defined on S, in particular for the identity I. Inserting Ifor G and using the Taylor expansion of the true solution, we can write C(τ + θ) in terms of theexponentiated Lie operator form or Lie-Taylor series,

C(τ + θ) = (eθFI)(C(τ)).

The same argument concerning this exponentiated Lie operator applies to each of the subproblemsCτ = Lk(C). When we compose the resulting exponentiated Lie operators in the same order as thesolution operators in the splitting procedure, with which they are associated, we can reveal that theStrang splitting solution Eq. (13) can be expressed as

C(τ + θ) =(

e12 θF1

e12 θF2

eθF3e12 θF2

e12 θF1

I

)(C(τ)). (14)

Further Lanser and Verwer apply the BCH formula to say that the product eXeY can be writtenas the exponential eZ of

Z = X + Y +12[X,Y ] +

112

([X, X, Y ] + [Y, Y, X]) +124

[X,Y, Y, X] + ... (15)

where [X,Y ] is the commutator [X,Y ] = XY −Y X and [X,X, Y ] is recursively defined by [X, X, Y ] =[X, [X, Y ]], etc. Note that, if X and Y are Lie operators, Z is also a Lie operator.

Alternatively we can use the Yoshida’s formula who showed in [12] that

etXetY etX = etZ , Z = (2X + Y ) +t2

6([Y, Y, X]− [X, X, Y ]) + O(t4) (16)

Now put X = 12θL1 etc. and apply BCH four times or Yoshida’s formula two times that results

in an expression for the symmetrical Strang splitting solution

C(τ + θ) = (eθFI)(C(τ)), (17)

eθF = e12 θF1

e12 θF2

eθF3e12 θF2

e12θF1

,

where the new Lie operator F is formally defined by an infinite series expansion which is even in θ.Its leading part reads

F = F1 + F2 + F3 +112

θ2

{− 2[F1,F2,F3]− 2[F1,F1,F3] (18)

+ [F2,F2,F1]− 2[F2,F2,F3] + [F3,F3,F1]

+ [F3,F3,F2] + [F2,F3,F1] + [F3,F2,F1]

}+ O(θ4).

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models10

Page 11: A Finite-difierence approach to the pricing of barrier

To proceed we have to be able to recover the operator L corresponding with L to get the modifiedproblem Cτ = L(C) associated with the symmetrical Strang splitting scheme. Lanser and Verwershow that

[Fk,Fl,Fm]I(C) = L′lmLk − L′kLlm, Llm = L′mLl − L′lLm. (19)

Eventually they rewrite this modified problem in the form

Cτ = L(C) = L(C) + τ2EL(C) + O(τ4), (20)

where term EL represents the leading term of the local error of the Strang splitting scheme evaluatedat C(τ) and consists of various combinations of commuters of [Lk,Ll,Lm,Ln].

The global error, C(τ + θ)− C(τ + θ) can be directly seen to satisfy

C(τ + θ)− C(τ + θ) =(eθFI

)(C(τ)− C(τ)) +

(eθFI − eθFI

)(C(τ)),

where(eθFI − eθFI

)(C(τ)) is the complete local splitting error. The local splitting error is even in

τ provided that the Lie operators are independent of τ and also even in τ .The most important aspect concerning the splitting error should be mentioned. When the four

split operators Lk, k = 1, 2, 3 commute with one another, L = L and no splitting error occurs.

6.2 Jump-diffusion splitting

Returning back to the financial terminology we note that the idea of splitting on physical processesfor jump-diffusion models has been already proposed in [13]. Below we describe this idea as appliedto the Eq. (4).

The method is based on splitting the operator L into two parts:

∂τC(S, VR, VL, τ) = DC(S, VR, VL, τ) + JC(S, VR, VL, τ), (21)

whereD and J stand for the differential and integral parts of L respectively. We replaceDC(S, VR, VL, τ)with a finite difference approximation D, JC(S, VR, VL, τ) with a certain finite approximation of theintegral J (that we will further discuss) and use the following explicit-implicit time stepping scheme:

C(S, VR, VL, τ)n+1 − C(S, VR, VL, τ)n

∆τ= DC(S, VR, VL, τ)n+1 + JC(S, VR, VL, τ)n (22)

Thus, Cont and Volchkova treat the integral part in an explicit time stepping in order to avoidthe inversion of the non-sparse matrix J . They further show that this does not affect the stability ofthe scheme: it is unconditionally stable like the fully implicit scheme, but does not require to invertthe dense matrix J .

Introducing a intermediate function C(S, VR, VL, τ)∗ the splitting of the Eq. (22) could be writtenas

C(S, VR, VL, τ)∗ − C(S, VR, VL, τ)n

∆τ= DC(S, VR, VL, τ)∗ (23)

C(S, VR, VL, τ)n+1 − C(S, VR, VL, τ)∗

∆τ= JC(S, VR, VL, τ)∗

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models11

Page 12: A Finite-difierence approach to the pricing of barrier

Unfortunately this scheme approximates the original PIDE with the accuracy O(θ). One canexpect that the higher-order operator splitting algorithms can be obtained, for instance, by doing onetime step of the Strang splitting method [10], which consists of three substeps:

C(S, VR, VL, τ)∗ − C(S, VR, VL, τ)n

∆τ/2= JC(S, VR, VL, τ)n (24)

C(S, VR, VL, τ)∗∗ − C(S, VR, VL, τ)∗

∆τ= DC(S, VR, VL, τ)∗∗

C(S, VR, VL, τ)n+1 − C(S, VR, VL, τ)∗∗

∆τ/2= JC(S, VR, VL, τ)∗∗

Usually for parabolic equations with constant coefficients this composite algorithm is second-order-accurate provided the numerical procedures for the split equations are at least second-order-accurate.

6.3 Convection-diffusion splitting

The second equation of the Eq. (24) is a discrete equivalent of the differential equation

∂τC(S, VR, VL, τ) = DC(S, VR, VL, τ). (25)

This is a three-dimensional unsteady diffusion equation that contains mixed derivatives in thediffusion part and first order derivatives in the convection part. Systems of convection-diffusionequations arise in a variety of applications and represent mathematical models for a number of physicalprocesses in fluid mechanics, astrophysics, meteorology, multiphase flow in oil reservoirs, polymer flow,as well as in financial modeling. The convection dominated case, which is of a particular importance, isthe most challenging one from numerical perspective: although the solution of the Eq. (25) is typicallysmooth for τ > 0, its gradients may be very large at σ/µ ¿ 1, and a full resolution of viscous shocklayers may be out of practical reach, especially in the multidimensional case. Therefore, one may haveto apply shock capturing methods, originally developed for hyperbolic systems of conservation laws.At the same time, even though the impact of diffusion is not too significant, its presence typicallyreduces the efficiency of an explicit numerical scheme for the Eq. (25). One of the ways to overcomethis difficulty is to use again an operator splitting method.

To construct such a scheme one can represent the differential operator D as a sum D = OD + OH

where index H refers to the hyperbolic (convective) part of L

OHC(S, VR, VL, τ) =

(− rd + (rd− rf )S

∂S+ κ(1− VR)

∂VR+ κ(1− VL)

∂VL

)C(S, VR, VL, τ), (26)

and index D refers to the diffusion part of L

ODC(S, VR, VL, τ) =

(σ2S2(VR + VL)

2∂2

∂S2+ σρRσV SVR

∂2

∂S∂VR+ σρLσV SVL

∂2

∂S∂VL(27)

+σ2

V VR

2∂2

∂V 2R

+σ2

V VL

2∂2

∂V 2L

)C(S, VR, VL, τ).

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models12

Page 13: A Finite-difierence approach to the pricing of barrier

Then again using the Strang splitting we obtain

C(S, VR, VL, τ)+ − C(S, VR, VL, τ)∗

∆τ/2= ODC(S, VR, VL, τ)+ (28)

C(S, VR, VL, τ)++ − C(S, VR, VL, τ)+

∆τ= OHC(S, VR, VL, τ)++

C(S, VR, VL, τ)∗∗ − C(S, VR, VL, τ)++

∆τ/2= ODC(S, VR, VL, τ)∗∗,

where we use implicit approximations of finite-difference operators OH and OD to provide uncondi-tional stability of the whole scheme.

Note that the main advantage of the operator splitting technique is the fact that the hyperbolicEq. (26) and the parabolic Eq. (27) subproblems, which are of different nature, can be solved nu-merically by different methods. Also this splitting method provides the second order accuracy, i.e.O(θ2).

Combining the Eq. (28) and Eq. (24) we can obtain the whole splitting scheme of the order O(θ2)

C(S, VR, VL, τ)∗ − C(S, VR, VL, τ)n

∆τ/2= JC(S, VR, VL, τ)n (29)

C(S, VR, VL, τ)+ − C(S, VR, VL, τ)∗

∆τ/2= ODC(S, VR, VL, τ)+

C(S, VR, VL, τ)++ − C(S, VR, VL, τ)+

∆τ= OHC(S, VR, VL, τ)++

C(S, VR, VL, τ)∗∗ − C(S, VR, VL, τ)++

∆τ/2= ODC(S, VR, VL, τ)∗∗

C(S, VR, VL, τ)n+1 − C(S, VR, VL, τ)∗∗

∆τ/2= JC(S, VR, VL, τ)∗∗

The order of operators OD and OH in the Eq. (28) is chosen according to the following reason.The hyperbolic operator OH is of the first order. Therefore, the obtained solution is not able to obeyboundary conditions at both boundaries on S. This situation has been analyzed, for instance, in [11].They focus on the subject of prescribing boundary conditions in the intermediate steps of the Strangsplitting and on the resulting possibility of inconsistencies between these boundary conditions andthe solutions calculated in the proceeding intermediate steps. As using of operator splitting for theinitial boundary advection-diffusion problem results with the boundary errors, these inconsistenciescan lead to numerical errors. On the contrary the operator OD prescribes the boundary conditions.Thus, the last step in the Eq. (28) must be that with OD.

Numerical errors in the intermediate solution of the hyperbolic problem mean that the initial valuefor step 3 in the Eq. (28) is inconsistent with the boundary conditions prescribed in this step. Asfor the convection equation we met the boundary condition at x = 0 it is likely to happen that noboundary condition inconsistency will exist in the immediate vicinity of this boundary. However, atx = 1 this is not true. Numerical errors will exist if we don’t choose the time step large enough todamp out the initial error due to this inconsistency. Also it is useful to condense a finite-differencegrid in the vicinity of the boundaries on x to dump a jump in the initial solution for step 3 at x = 1.However, it doesn’t resolve the problem at all.

At the diffusion step one has to solve a three-dimensional unsteady diffusion with variable coeffi-cients. McKee and Mitchell [14] proposed alternating direction methods (ADI) to solve such kind ofequations which in essence is very close to the method of fractional steps. Considering this equation

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models13

Page 14: A Finite-difierence approach to the pricing of barrier

in the region which is covered by a rectangular grid with hi = h the grid spacing in the xi-direction(i = 1, 2, 3) and k the grid spacing in the τ -direction they managed to obtain an ADI scheme with theapproximation error O(k + h2). The scheme requires solution of three separate ordinary differentialequations with three-diagonal matrix. They also constructed (but not published) a similar splittingwhere every finite-difference analog of the ordinary differential equation was solved using a three leveldifference scheme. These enable split difference schemes of an order of local accuracy of at leastO(k2 + h2) to be obtained but this increased accuracy eventually results in the additional complexityof the scheme.

6.4 Our method of splitting

Despite the proposed above numerical method allows solution of the considered problem, it providesonly the first order approximation in time (O(θ)). For financial applications it could be a seriouslimitation, therefore we are looking for a new scheme which is O(θ2 + h2). We are also interesting inobtaining an unconditionally stable scheme, rather than the scheme that is stable under the parabolicCFL condition. We also follow argumentation of [15] who constructed an Implicit-Explicit Runge-Kutta methods for integro-differential equations. In addition to the above they also suppose that it isnot practically feasible an implicit time difference scheme, because the non local (integral) term leadsto a dense system of equations. However, we don’t use the method of [15] because our method allowsto treat the differential operator implicitly and the integral one explicitly, thus avoiding dense matrixbut still preserving the unconditional stability of the method.

Based on that the idea behind our method of splitting is first to rewrite the Eq. (4) introducing anew variable x = lnS/Q, where Q is a certain constant. That gives

∂τC(x, VR, VL, τ) = −rdC(x, VR, VL, τ) +

[rd − rf − σ2

2(VL + VR)− aR

√VR − aL

√VL

]∂

∂xC(x, VR, VL, τ)

(30)

+ κ(1− VR)∂

∂VRC(x, VR, VL, τ) + κ(1− VL)

∂VLC(x, VR, VL, τ)

+σ2(VR + VL)

2∂2

∂x2C(x, VR, VL, τ) + σρRσV VR

∂2

∂x∂VRC(x, VR, VL, τ)

+ σρLσV VL∂2

∂x∂VLC(x, VR, VL, τ) +

σ2V VR

2∂2

∂V 2R

C(x, VR, VL, τ) +σ2

V VL

2∂2

∂V 2L

C(x, VR, VL, τ)

+√

VR

∫ ∞

0

[C(x + y, VR, VL, τ)− C(x, VR, VL, τ)− ∂

∂xC(x, VR, VL, τ)y

e−|y|/νj

|y|1+αdy

+√

VL

∫ 0

−∞

[C(x + y, VR, VL, τ)− C(x, VR, VL, τ)− ∂

∂xC(x, VR, VL, τ)y

e−|y|/νj

|y|1+αdy,

where

aR =∫ ∞

0(ey − 1− y)λ

e−|y|/νj

|y|1+αdy

aL =∫ 0

−∞(ey − 1− y)λ

e−|y|/νj

|y|1+αdy

Now let us represent the Eq. (30) in the form

∂τC(x, VR, VL, τ) = (L1 + L2)C(x, VR, VL, τ), (31)

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models14

Page 15: A Finite-difierence approach to the pricing of barrier

where

L1C(x, VR, VL, τ) =

[− 1

2rd +

(12(rd − rf )− 1

2σ2VR − aR

√VR

)∂

∂x+ κ(1− VR)

∂VR+ VR

σ2

2∂2

∂x2

+ σρRσV VR∂2

∂x∂VR+

σ2V VR

2∂2

∂V 2R

]C(x, VR, VL, τ) +

√VR

∫ ∞

0

[C(x + y, VR, VL, τ)− C(x, VR, VL, τ)

− ∂

∂xC(x, VR, VL, τ)y

e−|y|/νj

|y|1+αdy (32)

L2C(x, VR, VL, τ) =

[− 1

2rd +

(12(rd − rf )− 1

2σ2VL − aL

√VL

)∂

∂x+ κ(1− VL)

∂VL+ VL

σ2

2∂2

∂x2

+ σρLσV VL∂2

∂x∂VL+

σ2V VL

2∂2

∂V 2L

]C(x, VR, VL, τ) +

√VL

∫ 0

−∞

[C(x + y, VR, VL, τ)− C(x, VR, VL, τ)

− ∂

∂xC(x, VR, VL, τ)y

e−|y|/νj

|y|1+αdy,

The most important advantage of this kind of splitting is that these L operators commute witheach other.

Lemma 2. Operators Li, i = 1, 2 defined in the Eq. (32) commute.

Proof 2. As the commuter of these operators can be derived explicitly so it can be verified directly thatit vanishes. Let us consider first the operators L1 and L2 without the term C(x + y, VR, VL, τ) underthe integrals. The coefficients of all terms of L1 are either constants or functions of VR. Similarly,the coefficients of all terms of L2 are either constants or functions of VL. Therefore, these reducedoperators commute.

Users of the Wolfram Mathematica package could run the following commands to prove this state-ment (see Fig. 1).

Figure 1: Mathematica commands to verify that the differential operators L1,2 commute as well as theintegral operators.

As far as the term√

VL

∫ 0−∞C(x + y, VR, VL, τ)yλ e−|y|/νj

|y|1+α dy is concerned, we can expand C(x +

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models15

Page 16: A Finite-difierence approach to the pricing of barrier

y, VR, VL, τ) in power series on y to obtain

IL =√

VL

∫ 0

−∞C(x + y, VR, VL, τ)yλ

e−|y|/νj

|y|1+αdy =

√VL

[C(x, VR, VL, τ) +

∞∑

n=1

an∂n

∂xn C(x, VR, VL, τ)

],

(33)

IR =√

VR

∫ ∞

0C(x + y, VR, VL, τ)yλ

e−|y|/νj

|y|1+αdy =

√VR

[C(x, VR, VL, τ) +

∞∑

n=1

bn∂n

∂xn C(x, VR, VL, τ)

],

an =∫ 0

−∞

yn+1

n!λ

e−|y|/νj

|y|1+αdy, bn =

∫ ∞

0

yn+1

n!λ

e−|y|/νj

|y|1+αdy.

Again all coefficients of IR are just functions of VR, and all coefficients of IL are just functionsof VL. Therefore, IR commutes with IL and the other part of L2 (L[f ] in the Fig. 1). Similarly, IL

commutes with IR and the other part of L1 (R[f ] in the Fig. 1). Thus, the whole operators L1 andL2 commute.

¥.

Thus according to the analysis of Section 6.1 this splitting scheme doesn’t introduce any splittingerror. In other words the local error of the method is determined by the local errors of each step withno additional error coming up from splitting.

Another very important advantage of our splitting scheme is that operators L1 and L2 aretwo-dimensional integro-differential operators while the original problem Eq. (4) contains a three-dimensional integro-differential operator. Thus, we managed to reduce the dimension of the problem.

Note, that alternatively we could extract the part 12

[−rd + (rd − rf ) ∂∂x

]C(x, VR, VL, τ) from each

operator L1 and L2 and combine them as the third operator L3. In other words, we could split ouroriginal operator L into three operators

∂τC(x, VR, VL, τ) = (L1 + L2 + L3)C(x, VR, VL, τ), (34)

where now in contrast to the Eq. (32) L1 and L2 don’t have the above part which moved to theoperator L3. It could be again shown that all three operators commute. Therefore this splittingalgorithm also doesn’t bring any numerical error. However, the operator L3 is of the first order, andthus we again face the problem with the boundary conditions, despite the equation

∂τC(x, VR, VL, τ) = L3C(x, VR, VL, τ)

can be solved analytically. To improve this situation one can try to add a second order derivative∂2

∂x2 to the operator L3 and subtract a half of it from the operators L1 and L2. However, it results inlosing the diagonal dominance property of the matrixes of second derivatives of the operators L1, L2.On contrary, it could be seen that for the Eq. (37) the matrix of second derivatives still keeps thediagonal dominance if ρi 6= 1 because

12(a11a22 − a2

12) = σ2S2V 2i σ2

V (1− ρ2i ). (35)

Based on the above the whole numerical scheme for one time step θ could be written as such

∂τCa(x, VR, VL, τ) = L1C

a(x, VR, VL, τ), τ ∈ [0, θ], Ca(x, VR, VL, 0) = C(x, VR, VL, 0) (36)

∂τC(x, VR, VL, τ) = L2C(x, VR, VL, τ), τ ∈ [0, θ], C(x, VR, VL, 0) = Ca(x, VR, VL, θ)

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models16

Page 17: A Finite-difierence approach to the pricing of barrier

As the L operators commute, in principle, we could run them in an arbitrary order.Further we will solve the obtained integro-differential equations with the second order of accuracy

in space and time, thus providing the total second order of accuracy. The whole diffusion operatorsallows an exact match of the boundary conditions eliminating the problem with boundary conditionswhich occurs if one splits the convection and diffusion parts.

7 Solution of integro-differential equations with opera-

tor Li, i = 1, 2

According to the Eqs. (31, 32) this equation reads

∂τC(x, VR, VL, τ) = −1

2rdC(x, VR, VL, τ) +

(12(rd − rf )− 1

2σ2Vi − ai

√Vi

)∂

∂xC(x, VR, VL, τ) (37)

+ κ(1− Vi)∂

∂ViC(x, VR, VL, τ) +

σ2Vi

2∂2

∂x2C(S, VR, VL, τ) + σρiσV Vi

∂2

∂x∂ViC(x, VR, VL, τ)

+σ2

V Vi

2∂2

∂V 2i

C(x, VR, VL, τ) +√

Vi

i

[C(x + y, VR, VL, τ)− C(x, VR, VL, τ)− ∂

∂xC(x, VR, VL, τ)y

e−|y|/νj

|y|1+αdy,

where i = R, L and∫R =

∫∞0 ,

∫L =

∫ 0−∞ . Going back to the coordinate S = Qex we obtain

∂τC(S, VR, VL, τ) = −1

2rdC(S, VR, VL, τ) +

12(rd − rf )S

∂SC(S, VR, VL, τ) (38)

+ κ(1− Vi)∂

∂ViC(S, VR, VL, τ) +

σ2Vi

2S2 ∂2

∂S2C(S, VR, VL, τ)

+ σρiσV SVi∂2

∂S∂ViC(S, VR, VL, τ) +

σ2V Vi

2∂2

∂V 2i

C(S, VR, VL, τ)

+√

Vi

i

[Sey, VR, VL, τ)− C(S, VR, VL, τ)− ∂

∂SC(S, VR, VL, τ)S(ey − 1)

e−|y|/νj

|y|1+αdy,

Boundary and initial conditions for this equation are given in Section 4.

7.1 Coordinate transformation

Reasons for coordinate transformation being applied to the Eq. (38) are twofold. First, finite differencemethods often require equal grid steps in S and VR, VL domains, so to achieve that the originalindependent variables should be normalized. Second, as it is well know, the solution of the Eq. (38)is very sensitive to localization errors when S is in the vicinity of K, because the second derivative ofthe payoff doesn’t exist at this point. Therefore, to increase accuracy it would be reasonable to usean adaptive mesh with high concentration of the mesh points around S = K, while a rarefied meshcould be used far away from this area. For the barrier options the situation is even more complicated[2]. Here we consider only continuously sampled barriers, so it is sufficient to place the barriers onthe boundaries of the grid and enforce a boundary condition of zero option value. The gradient ofthe option price is discontinuous at the barriers because we never solve the pricing equation (whichincludes second derivative terms that might become singular) there. Therefore it is reasonable toconcentrate the grid cells in the vicinity of the barriers as well 1.

1For the discretely sampling barriers this could result in some problems, see discussion in [2]

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models17

Page 18: A Finite-difierence approach to the pricing of barrier

To achieve these goals let us choose a ”factorize” coordinate transformation in sense that wetransform coordinate S independently of the other coordinates. In other words we use a map S ↔x, VR ↔ vr, VL ↔ vl, t ↔ τ of the form

S = S(x), , vr = VR(vr), vl = VL(vl), τ = T − t. (39)

Further we require that new independent coordinates x, vr, vl are normalized and range from 0 to 1.This could be done in many different ways. For instance, one of the simplest spot price transformationsis an exponential one

S =(H−L)ex + eL −H

e− 1, H = min(H, Smax), L = max(L, Smin). (40)

As can be easily seen the new variable x vary from 0 to 1. Another useful transformation has beenproposed in [2] with the idea of concentrating finite difference grid points near critical points such asbarrier prices and strike. We define the Jacobian of this transformation

J(x) =dS(x)

dx, (41)

as

J(x) = A

[k=3∑

k=1

Jk(x)−2

]−1/2

(42)

Jk(x) =[α2

k + (S(x)−Bk)2]1/2

Parameters Bk correspond to the critical points, i.e. in our case B1 ≡ L, B2 ≡ H, B3 ≡ K.Parameters A and αk, k = 1, 2, 3 are adjustable. Setting αk ¿ H−L yields a highly nonuniform gridwhile αk À H−L yields a uniform grid.

For the transformation given by the Eq. (42) near the strike and barriers the global Jacobian J(x)is dominated by the behavior of the local Jk(x) but the influence of nearby critical points ensuresthat the transitions between them are smooth. In general the global Jacobian must be integratednumerically to yield the transformation S(x). Any standard ODE integrator could be used for thatusing the initial condition S(0) = L. To obey the second boundary condition S(1) = H one canvary the adjustable parameter A. Since S(x = 1) is monotonically increasing with A the numericaliterations are guaranteed to converge.

In Fig. 2 we present a map of the new grid obtained from the original uniform S grid by usingthe transformation Eq. (42). The new grid in x contains 100 nodes uniformly distributed from 0to 1. Value of parameters used in this example are: H = 120, L = 50,K = 100, αH = αL =(H − L)/60, αK = (H −K)/20. The computed value of A is 13.935.

In new coordinates the Eq. (38) could be rewritten using the chain rules

S∂

∂S=

S(x)J(x)

∂x(43)

S2 ∂2

∂S2 =S2(x)J(x)

∂x

(1

J(x)∂

∂x

),

Let W (x, vr, vl, τ) be the barrier call value considered as a function of x, vr, vl, τ rather thanS, VR, VL, t. Substituting the above expressions into the Eq. (38) one can find that this function is

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models18

Page 19: A Finite-difierence approach to the pricing of barrier

50 60 70 80 90 100 110 120 130S(x)

Figure 2: New grid obtained from the uniform grid in x with the transformation Eq. (42).

governed by the following PIDE

∂τW (S(x), vr, vl, τ) =

{− 1

2rd +

12(rd − rf )ξ(x)

∂x+

κ

Ji(1− Vi(vi))

∂vi+ σρiσV ξ(x)ηi(vi)

∂2

∂x∂vi

+ Vi(vi)σ2ξ2(x)J(x)

2∂

∂x

(1

J(x)∂

∂x

)+

σ2V ηi(vi)

2∂

∂vi

(1Ji

∂vi

)}W (S(x), vr, vl, τ) (44)

+√

Vi(vi)∫

i

[W (S(x)ey, vr, vl, τ)−W (S(x), vr, vl, τ)− ξ(x)

∂xW (S(x), vr, vl, τ)(ey − 1)

e−|y|/νj

|y|1+αdy,

where ξ(x) ≡ S(x)/J(x), ηr(vr) ≡ VR/Jr(vr), ηl(vl) ≡ VL/Jl(vl), Jacobians Jr(vr) and Jl(vl) aredefined as

Jr(vr) =dVR(vr)

dvr, Jl(vl) =

dVL(vl)dvl

, (45)

L is an integro-differential operator, and W (x, vr, vl, τ) ∈ C+p ([0, T ]×R) is a continuous function.

Note that for the transformation Eq. (42)

d lnJ(x)dx

=dJ

dS= A

{3∑

k=1

S −Bk[α2

k + (S −Bk)2]2

} [3∑

k=1

1α2

k + (S −Bk)2

]−3/2

≈ A

[1

(S −H)3+

1(S −K)3

+1

(S − L)3

] [1

(S −H)2+

1(S −K)2

+1

(S − L)2

]−3/2

.

This function is bounded and changes within the range (−A,A) as can be seen in Fig. 3. Thus|d ln J(x)/dx| is bounded.

Further for the variables vr and vl we use same type of the transformation as in the Eq. (42). Hereas the critical points Bk we choose B1 = 0 and B2 = Vi0, i = R, L, where the later is the initial levelof the activity.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models19

Page 20: A Finite-difierence approach to the pricing of barrier

50 60 70 80 90 100 110 120 130−15

−10

−5

0

5

10

15 A

−A

S(x)

dLog

[J(x

)]/d

S

Figure 3: d ln J(x)/dx as a function of S(x). Parameters for this test are given before the Fig. 2

In Fig. 4 we present a map of the new grid obtained from the original uniform S−VR grid by usingthe transformation Eq. (42). The new grid contains 100 nodes in x uniformly distributed from 0 to 1,and 100 nodes in vr also uniformly distributed from 0 to 1. Value of parameters used in this exampleare: H = 110, L = 95,K = 100, αH = αL = (H − L)/0.1, αK = (H −K)/10, α0 = αv0 = Vmax/20,where Vmax is a maximum value of VR and VL on the grid (here Vmax = 0.5), and v0 = 0.2.

7.2 Conservative form

According to [16] the terms ”conservative form”, ”conservation-law form”, ”weak form” or ”divergenceform” are all equivalent. PDEs having this form have the property that the coefficients of the derivativeterm are either constant or if variable their derivatives appear nowhere in the equation. Normallyfor PDEs to represent a physical conservation statement this means that the divergence of a physicalquantity can be identified in the equation. For example, the conservation form of the one dimensionalheat equation for a substance whose density, ρ, specific heat c and thermal conductivity K all varywith position is

ρc∂u

∂t=

∂x

(K(x)

∂u

∂x

)

In the conservative form the right hand side can be identified as the negative of the divergence ofthe heat flux. Thus, finite-difference scheme is conservative if it preserves some integral conservationlaws which are valid for the original differential equations.

In general the conservative schemes provide more accurate results than the non-conservative ones.As known from CFD this is especially important for the elliptic equations [17]. Also a finite-differencescheme applied to the conservative equation preserves monotonicity of the solution at arbitrary stepsof the scheme.

An one-dimensional equation could be rewritten in the conservative form by using the followingLemma

Lemma 3. Given the equation

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models20

Page 21: A Finite-difierence approach to the pricing of barrier

95 100 105 1100

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

0.45

0.5

S(x)

VR

(vr)

Figure 4: New grid obtained from the uniform grid in x, vr with the transformation Eq. (42).

∂tZ(x, t) = a(x)

∂xZ(x, t) + b(x)

∂2

∂x2Z(x, t), (46)

it can be transformed to the equation

∂tU(x, t) =

∂x

(b(x)U(x, t)

∂x

)U(x, t)− U(x, t)

[a(x)− b′(x)]2 + 2b(x)[a′(x)− b′′(x)]4b(x)

(47)

by substitution

Z(x, t) = U(x, t)√

b(x) exp[−

∫ x

0

a(k)2b(k)

dk]

(48)

Proof 3. It could be verified by a direct substitution of the Eq. (48) into the Eq. (46). ¥

However, in a multi dimensional case it could be hard or even impossible to transform the originalequation to the corresponding conservative form. For the Eq. (44) an additional problem is that ξ(x)and J(x) are not known in the explicit form and have to be computed numerically. Therefore, as itis seen from the above Lemma, such a transformation could require an extra computational work,namely numerical integration and differentiation. Therefore, in a general case we can not preserveconservativeness, but only monotonicity of the scheme working just with the original equation Eq. (44).This leads us to the idea of regularized finite-difference schemes [18].

Note, that when constructing a monotone and conservative finite difference scheme of the secondorder for multidimensional parabolic or elliptic it is important whether the coefficients at mixedderivatives change the sign in the computational domain. If this is the case, to the authors knowledgethe only scheme available in the literature is that described in [19]. Fortunately, in our case of theEq. (44) the coefficient at the mixed derivative doesn’t change sign.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models21

Page 22: A Finite-difierence approach to the pricing of barrier

One more problem with the Eq. (44) is that all coefficients at high order derivatives are proportionalto Vi. Since Vi varies from 0, it means that in the vicinity of that boundary all the coefficients athigh order derivatives become small while the coefficients at first order derivatives are of the orderO(1). It means that the original problem becomes convection dominated. It is well-known that specialnumerical methods has to be used to preserve monotonicity of the solution in such a case.

Below we discuss two numerical scheme used to solve the Eq. (44).

7.3 Central difference scheme

The first scheme is based on a standard central difference approximation of the differential terms ofthe Eq. (44). In doing so we treat the integral term as a source term using its approximation at theprevious step in time (see the above discussion).

Further we consider two situations: jumps with finite and infinite activity. When the activity isinfinite (for instance, the VG model) it is well-known that last two terms under the integral can notbe integrated out, because they don’t exist under such a kernel. Therefore, we must remain themunder the integral at their position and treat them as a part of the integral. In other words, in whatfollows we will approximate the integral as a source term using its value from the previous time step.In case of jumps of the finite activity we could integrate these two terms out and add them to thecorresponding terms in the differential part, further applying the below described method.

7.3.1 Computation of an integral term

In computing the integral term in the Eq. (44) we follow the method of [13].First let us consider jumps with finite activity. Then every term under the integral exists, and

therefore two last terms could be integrated out. Thus

i

[W (S(x)ey, vr, vl, τ)−W (S(x), vr, vl, τ)− ξ(x)

∂xW (S(x), vr, vl, τ)(ey − 1)

e−|y|/νj

|y|1+αdy = (49)

iW (S(x)ey, vr, vl, τ)µ(dy)− βiξ(x)

∂xW (S(x), vr, vl, τ)− γiW (S(x), vr, vl, τ),

βi =∫

i(ey − 1)µ(dy), γi =

iµ(dy), µ(dy) = λ

e−|y|/νj

|y|1+αdy.

In our setup βi and γi are constants that can be precomputed. The first integral

iW (S(x)ey, vr, vl, τ)λ

e−|y|/νj

|y|1+αdy

has to be computed with the second order approximation in x to preserve the second order approx-imation of the whole method. It measn that we have to approximate the integral kernel with thesame accuracy. Thus, trapezoidal approximation suffices for second order but higher order methodsare often even faster or require similar time. Therefore, to compute this integral as well as βi and γi

we use adaptive Lobatto quadratures [20].As one of the limits of our integrals is infinite it has to be truncated to reduce the region of

integration to a bounded interval. For options with the existing upper barrier, in the integral∫∞0

the upper limit can be truncated to H. This amounts to the truncation of large jumps. A detaileddiscussion on how to chose the integration limits and corresponding theorems could be found in [13].

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models22

Page 23: A Finite-difierence approach to the pricing of barrier

According to the above representation the Eq. (4) now reads

∂τW (S(x), vr, vl, τ) = L1dW (S(x), vr, vl, τ) + I(S(x), vr, vl, τ) (50)

I(S(x), vr, vl, τ) =∫

iW (S(x)ey, vr, vl, τ)λ

e−|y|/νj

|y|1+αdy

L1d = k0 + k1∂

∂x+ k2

∂vi+ k11

∂2

∂x2+ k12

∂2

∂x∂vi+ k22

∂2

∂v2i

k0 = −12rd − γi

√Vi(vi)

k1 =12(rd − rf )− βi

√Vi(vi))ξ(x)− 1

2Vi(vi)σ2ξ2(x)

d lnJ(x)dx

k2 =κ

Ji(1− Vi(vi))− 1

2Jiσ2

V ηi(vi)d ln Ji(vi)

dvi

k11 = Vi(vi)σ2ξ2(x)J(x)

2, k12 = σρiσV ξ(x)ηi(vi), k22 =

σ2V ηi(vi)

2∂2

∂v2i

Now let us introduce a grid in y - yi, i = 1...N . If this grid is uniform or adaptive in general itdoesn’t coincide with the grid in variable x or S(x). Therefore, to find the value of Z(S(x)eyi , vr, vl, τ)at least linear interpolation has to be used at each point i = 1, ..., N to preserve second order of ap-proximation. Under this procedure, one has to check if the value S(x)eyi belongs to the computationaldomain on x. Otherwise, the value of Z is set to the corresponding boundary value. For instance, incase of a double barrier option it must vanish outside the barriers.

7.3.2 Finite difference scheme

Let us introduce a uniform grid in x− vi space with steps h1 in x and h2 in vi, such that xi = h1i, i =0, N1, vi,j = h2j, j = 0, N2 and h1N1 = 1, h2N2 = 1. Here N1 is the number of grid nodes in the xdirection, and N2 is the number of grid nodes in the vi direction. We also use a uniform grid in theτ direction, such that τn = θ ∗ n, n = 0, Nτ , Nτθ = (T − t).

We use a standard Crank-Nicholson approximation of the Eq. (50)

Wn+1(x, vr, vl)−Wn(x, vr, vl)θ

=12(L1dW

n+1(x, vr, vl) + L1dWn(x, vr, vl)) + In (51)

Despite the original Crank-Nicholson scheme provides approximation O(θ2 + h21 + h2

2) given theoperator L1d provides approximation O(h2

1 + h22) in space, the Eq. (53) provides only O(θ) approxi-

mation because of the chosen approximation of the source term. To improve the situation a Strangsplitting could be used in the form of the Eq. (24). Alternatively, we can approximate the source termby a one-side finite difference of the second order to obtain

Wn+1(x, vr, vl)−Wn(x, vr, vl)θ

=12(L1dW

n+1(x, vr, vl) + L1dWn(x, vr, vl)) +

32In − 1

2In−1. (52)

As the initial (terminal) condition is not sufficiently smooth, at first three steps we use a fullyimplicit Euler scheme

Wn+1(x, vr, vl)−Wn(x, vr, vl)θ

= L1dWn+1(x, vr, vl) + In (53)

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models23

Page 24: A Finite-difierence approach to the pricing of barrier

providing O(θ+h21 +h2

2) approximation. This increases stability of the whole scheme and often allowsone to avoid oscillations inherent to the Crank-Nicholson method.

Alternative to the Crank-Nicholson scheme we also use the BDF2 scheme [21]

Wn+1(x, vr, vl) =43Wn(x, vr, vl)− 1

3Wn−1(x, vr, vl)+

23θL1dW

n+1(x, vr, vl)+23θ[2In − In−1)

]. (54)

Obviously, the solution W 1(x, vr, vl) of the first time step has to be obtained using another method.The most typical choice for this is the implicit Euler method. This scheme is L-stable which is astronger property than the unconditional stability [21]. Due to this the solution obtained with theBDF2 does not have oscillations similar to those in the solution obtained with the Crank-Nicolsonmethod. Also this scheme provides O(θ2 + h2

1 + h22) accuracy while requiring the only computation of

the integral term in contrast to the Strang splitting.When discretizing the space operator L1d the second-order and first-order spatial derivatives are

approximated with standard second-order accurate central finite differences. For this purpose, wedenote the finite difference operators by

δxWij =Wi+1,j −Wi−1,j

h1, δvWij =

Wi,j−1 −Wi,j−1

h2(55)

δ2xWij =

Wi+1,j − 2Wi,j + Wi−1,j

h21

, δ2vWij =

Wi,j+1 − 2Wi,j + Wi,j−1

h22

,

δ2xvWij =

Wi+1,j+1 −Wi+1,j−1 −Wi−1,j+1 + Wi−1,j−1

4h1h2,

Therefore, for the internal points i = 1...N1 − 1, j = 1...N2 − 1 from Eq. (53) and Eq. (50) weobtain the following scheme

L1d(i, j) =[

k12

4h1h2Wi−1,j−1 +

(− k1

2h1+

k11

h21

)Wi−1,j − k12

4h1h2Wi−1,j+1

](56)

+[(− k2

2h2+

k22

h22

)Wi,j−1 +

(−rd − 2

k11

h21

− 2k22

h22

)Wi,j +

(k2

2h2+

k22

h22

)Wi,j+1

]

+[− k12

4h1h2Wi+1,j−1 +

(k1

2h1+

k11

h21

)Wi+1,j +

k12

4h1h2Wi+1,j+1

]+ O(h2

1 + h22 + h1h2)

At j = 0 and j = N2 we have to impose a Neumann-wise boundary condition Eq. (7) and Eq. (8).We treat these conditions in the following way. We approximate these conditions using the centralfinite difference operators

δ2vWi0 =

Wi,−1 − 2Wi,0 + Wi,1

h21

= 0 (57)

δ2vWiN =

Wi,N+1 − 2Wi,N + Wi,N−1

h22

= 0

From this it follows that the fictitious grid point values Wi,−1 and Wi,N+1 that lies outside thecomputational domain could be expressed via the known grid point values. We can use this knowledgeto eliminate all fictitious grid point values appearing in the stencil Eq. (56) when it is used on the

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models24

Page 25: A Finite-difierence approach to the pricing of barrier

boundaries vi = 0 and vi = 1. Therefore, at the boundaries instead of Eq. (56) we have

L1d(i, 0) =[(− k1

2h1+

k11

h21

+k12

2h1h2

)Wi−1,1 − k12

2h1h2Wi−1,2

]+

[(−rd − 2

k11

h21

− k2

h2

)Wi,1 +

k2

h2Wi,2

]

+[(

k1

2h1+

k11

h21

− k12

2h1h2

)Wi+1,1 +

k12

2h1h2Wi+1,2

]+ O(h2

1 + h22 + h1h2)

L1d(i,N2) =[

k12

2h1h2Wi−1,N−1 +

(− k1

2h1+

k11

h21

− k12

2h1h2

)Wi−1,N

]

+[−k2

h2Wi,N−1 +

(−rd − 2

k11

h21

+k2

h2

)Wi,N

]+

[− k12

2h1h2Wi+1,N−1 +

(k1

2h1+

k11

h21

+k12

2h1h2

)Wi+1,N

]

+ O(h21 + h2

2 + h1h2)

This system of equations can be represented in a matrix form as

−A1Φ1 + C1Φ2 = F1 (58)−AjΦj−1 + CjΦj −BjΦj+1 = Fj , j = 2, N2 − 1

−ANΦN2−1 + CNΦN = FN

and can be effectively solved by a block LU factorization [22] (that in this case is about two ordersof magnitude faster than a standard iterative SOR method). At i = 0 and i = N1 according to theboundary conditions (double barrier options) W0,j = WN,j = 0.

8 Validation of the method

In order to verify our finite difference method we used it to price a double barrier European call optionusing a familiar Heston model. In this model the volatility assumes not to be constant, but rather astochastic variable. Heston [23] suggested to model the volatility of the spot price as a square-rootprocess. We can therefore write Heston’s model explicitly as

dS = Sµdt + S√

νdW (1) (59)dν = κ(Θ− ν)dt + σV

√νdW (2),

where W (1) and W (2) are Brownian motions with correlation ρ, κ is the rate of mean-reversion, σ isthe volatility of variance ν, θ is a long term run value, µ is the drift. All parameters in the Hestonmodel assume to be constant.

A corresponding PDE which every contingent claim U(t, S, ν) paying g(S) = U(T, S, ν) has tosatisfy reads [24]

∂τU(t, S, ν) = −rdU(t, S, ν) + (rd − rf )S

∂SU(t, S, ν) + κ(Θ− ν)

∂νU(t, S, ν) (60)

+12νS2 ∂2

∂S2U(t, S, ν) +

12σ2

V ν∂2

∂ν2U(t, S, ν) + ρσV νS

∂2

∂S∂νU(t, S, ν)

Initial and boundary conditions are similar to that described in Section 4.As can be seen this equation looks exactly like the Eq. (50) if one omit the integral term, put

σ = 1, Θ = 1 and use in the Eq. (50) values of rd and rf which are twice these values in the Eq. (60).

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models25

Page 26: A Finite-difierence approach to the pricing of barrier

Thus, the whole finite difference scheme elaborated to solve the Eq. (50) could be applied for solvingthe Eq. (60).

At ρ = 0 and rd = rf the Heston model for the European barrier option has an analytical solution[24]. A corresponding calculator is available online at http://www.wilmott.com/messageview.cfm?catid=10&threadid=9893&STARTPAGE=1. Therefore, first we verified our numerical method againstthis solution and determined the grid transformation parameters that provide the best agreement.Surprisingly, it turned out that condensing mesh points in the vicinity of the barriers make theagreement worse. However, the accuracy significantly improves if we condense mesh points aroundthe strike, the initial level of the volatility, and in the vicinity of the boundary vi = 0. So in furthercalculations we used αL = αH = 0.1, αK = α0 = αv0 = 20.

In our tests we used parameters of the Heston model given in Table 1. We also used h1 = h2 =0.01, θ = 0.01 and Vmax = 0.5.

T rd = rf K L H σV κ Θ ρ0.3 0.05 100 90 110 0.2 5 0.02 0

Table 1: Parameters of the Heston model used for testing our numerical method

In Table 2-3 the results obtained with the BDF2 and CN schemes and analytical data are presentedfor several combinations of S0 − V0. It can be seen that the relative error between the analytical andour numerical solutions is about 0.3%.

S 92 94 96 98 100 102 104 106 108Anal. 0.20174 0.39878 0.58045 0.72785 0.81660 0.82353 0.73487 0.55263 0.29645BDF2 0.20079 0.39716 0.57897 0.72468 0.81511 0.82385 0.73625 0.55458 0.29768CN 0.20060 0.39683 0.57861 0.72445 0.81514 0.82417 0.73678 0.55513 0.29803

Anal-BDF2 0.00095 0.00162 0.00148 0.00317 0.00149 -0.00032 -0.00138 -0.00195 -0.00123Anal-CN 0.00114 0.00195 0.00184 0.00340 0.00146 -0.00064 -0.00191 -0.00250 -0.00158

Table 2: Comparison of the analytical and our BDF2 and CN numerical solutions at V0 = 0.03

V0 0.0001 0.001 0.01 0.02 0.03 0.04 0.05 0.06 0.1 0.4Anal. 1.36083 1.34814 1.18203 0.98650 0.81660 0.67575 0.55992 0.46453 0.22154 0.00088BDF2 1.36642 1.36203 1.18424 0.98596 0.81512 0.67399 0.55813 0.46278 0.22067 0.00088CN 1.36499 1.36057 1.18352 0.98575 0.81514 0.67412 0.55831 0.46300 0.22095 0.00090

Anal-BDF2 -0.00559 -0.01389 -0.00221 0.00054 0.00148 0.00176 0.00179 0.00175 0.00087 0Anal-CN -0.00416 -0.01243 -0.00149 0.00075 0.00146 0.00163 0.00161 0.00153 0.00059 -0.00002

Table 3: Comparison of the analytical and our BDF2 and CN numerical solutions at S = 100

These results obtained with the BDF2 scheme also are presented in Fig. 5.When ρ is not zero our results could be validated against the online calculator produced by

T. Kluge and available at http://kluge.in-chemnitz.de/tools/pricer/. The details of the FDmethod behind this calculator could be found in [3].

In the below tests we used rd = 0.05, rf = 0.03, ρ = −0.5. In Table 4-5 the results obtained withour BDF2 scheme and those of T.Kluge are presented for several combinations of S0 − V0. It can beseen that the relative error between the analytical and our numerical solutions is again about 0.3% atintermediate values of the volatility initial level V0. At V0 = 0.4 the Kluge’s calculator gives a negative

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models26

Page 27: A Finite-difierence approach to the pricing of barrier

S 92 94 96 98 100 102 104 106 108Kluge 0.27799 0.54906 0.78915 0.95899 1.02546 0.97333 0.81068 0.56790 0.28458BDF2 0.27846 0.54913 0.78888 0.95785 1.02812 0.97914 0.81804 0.57451 0.28795

Abs. error -0.00047 -0.00007 0.00027 0.00114 -0.00266 -0.00581 -0.00736 -0.00661 -0.00337

Table 4: Comparison of T.Kluge’s results and our BDF2 numerical solutions at V0 = 0.03

V0 0.0001 0.001 0.01 0.02 0.03 0.04 0.05 0.06 0.1 0.4Kluge 0.69085 1.38448 1.55071 1.26475 1.02546 0.83472 0.68288 0.56085 0.26418 -0.01741BDF2 1.78635 1.83843 1.56712 1.27043 1.02812 0.83532 0.68158 0.55801 0.25625 0.00092

Abs. error -1.09550 -0.45395 -0.01641 -0.00568 -0.00266 -0.00060 0.00130 0.00284 0.00793 -0.01833

Table 5: Comparison of T.Kluge’s results and our BDF2 numerical solutions at S = 100

option price while our method still works fine. At V0 very close to zero the difference between our andKluge’s results becomes significant. This is because T. Kluge used a different boundary condition atV0 = 0. Namely, as the boundary condition he also used the PDE itself substituting V = 0 in it, whilewe in addition impose the condition Eq. (8). However, at V0 ≥ 0.01 this difference in the boundaryconditions becomes insignificant.

These results obtained with the BDF2 scheme also are presented in Fig. 6.

9 Numerical results

First of all let us recap that in order to solve the Eq. (31) we use a splitting scheme Eq. (36). It ispretty clear how to use this scheme when at every step of splitting we use a one-step finite differencemethod such as CN. However, it is not obvious how to implement the second step of splitting ifwe intend to use a two-step finite difference method such as BDF2. Indeed, as the initial conditionC(x, VR, VL, 0) for the second step of the Eq. (36) we use the solution Ca(x, VR, VL, 0) obtained at thefirst step of splitting. However, the two-step method requires also the value C(x, VR, VL,−θ) whileit is unclear how to chose it. Possible candidates could be C(x, VR, VL,−θ), C(x, VR, VL, 0) or somecombination of these functions. Our numerical experiments showed that the total solution is verysensitive to this choice. On the other hand we didn’t find any recommendation in the literature onhow to make it. Therefore, in what follows we used only a one-step method - the Crank-Nicholsonmethod.

Also despite theoretically the order of operators L1 and L2 doesn’t matter, our test showed thatthere exist a slight difference in the results when the order of the operators is changed. That is whywe used the sequence L1, L2 at every odd step in time, and the sequence L2, L1 at every even step intime, thus providing an additional symmetry of splitting.

Further first we consider a pure diffusion process with no jumps. This is a barrier call option whichparameters are given in the Table 1, and rd = 0.05, rf = 0.02, σ = 0.2, ρR = 0.7, ρL = −0.2, κ = 0.1.We choose the computational domain as L ≤ x ≤ H, 0 ≤ VR < 0.5 = Vmax, 0 ≤ VL < 0.5 = Vmax.Parameters of the grid are same as in the previous section. The grid steps in space and time areh1 = 0.05, h2 = 0.025, θ = 0.02.

In Fig. 7 the option value computed in such a test is presented as a function of S and VR atVL = 0.011 (Fig. 7(a)), VL = 0.022 (Fig. 7(b)), VL = 0.11 (Fig. 7(c)) and VL = 0.41 (Fig. 7(d)).

In Fig. 8 same results are presented as a function of S and VL at VR = 0.011 (Fig. 8(a)), VR = 0.022(Fig. 8(b)), VR = 0.11 (Fig. 8(c)) and VR = 0.41 (Fig. 8(d)).

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models27

Page 28: A Finite-difierence approach to the pricing of barrier

9095

100105

110

00.1

0.20.3

0.4

0

0.5

1

1.5

SV

C(S

,V)

Figure 5: European call double barrier op-tion price in the Heston model - BDF2scheme. Parameters of the test are givenin the Table 1, and ρ = 0, rd = rf = 0.05

9095

100105

110

00.1

0.20.3

0.4

0

0.5

1

1.5

2

SV

C(S

,V)

Figure 6: European call double barrier op-tion price in the Heston model - BDF2scheme. Parameters of the test are given inthe Table 1, and ρ = −0.5, rd = 0.05, rf =0.03

9095

100105

110

00.1

0.20.3

0.4

0

1

2

3

SVR

C(S

,VR

,0.0

11,0

.3)

(a) VL = 0.011

9095

100105

110

00.1

0.20.3

0.4

0

0.5

1

1.5

2

2.5

SVR

C(S

,VR

,0.0

22,0

.3)

(b) VL = 0.022

9095

100105

110

00.1

0.20.3

0.4

0

0.2

0.4

0.6

0.8

1

SVR

C(S

,VR

,0.1

1,0.

3)

(c) VL = 0.11

9095

100105

110

00.1

0.20.3

0.4

0

0.05

0.1

0.15

0.2

SVR

C(S

,VR

,0.4

1,0.

3)

(d) VL = 0.41

Figure 7: Barrier call option value under Stochastic Skew model with no jumps.Parameters of the test are: σ = 0.2, ρR = 0.7, ρL = −0.2, κ = 0.1. Other parameters - see Table 1.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models28

Page 29: A Finite-difierence approach to the pricing of barrier

9095

100105

110

00.1

0.20.3

0.4

0

1

2

3

SVL

C(S

,0.0

11,V

L,0.3

)

(a) VR = 0.011

9095

100105

110

00.1

0.20.3

0.4

0

0.5

1

1.5

2

2.5

SVL

C(S

,0.0

22,V

L,0.3

)

(b) VR = 0.022

9095

100105

110

00.1

0.20.3

0.4

0

0.2

0.4

0.6

0.8

1

SVL

C(S

,0.1

1,V

L,0.3

)

(c) VR = 0.11

9095

100105

110

00.1

0.20.3

0.4

0

0.05

0.1

0.15

0.2

SVL

C(S

,0.4

1,V

L,0.3

)

(d) VR = 0.41

Figure 8: Barrier call option value under Stochastic Skew model with no jumps.Parameters of the test are: σ = 0.2, ρR = 0.7, ρL = −0.2, κ = 0.1. Other parameters - see Table 1.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models29

Page 30: A Finite-difierence approach to the pricing of barrier

In Fig. 9 same results are presented as a function of VL and VR at S = 92.4 (Fig. 9(a)), S = 100(Fig. 9(b)) - ATM, S = 103.1 (Fig. 9(c)) and S = 106.7 (Fig. 9(d)).

00.1

0.20.3

0.40.5 0

0.1

0.2

0.3

0.4

0.5

0.1

0.2

0.3

0.4

0.5

VL

VR

C(9

2.4,

VR

,VL,0

.3)

(a) S = 92.4

00.1

0.20.3

0.4

0 0.1 0.2 0.3 0.4 0.5

0.5

1

1.5

2

2.5

3

3.5

VL

VR

C(1

00,V

R,V

L,0.3

)

(b) S = 100 - ATM

0

0.2

0.4

0 0.1 0.2 0.3 0.4 0.5

1

2

3

4

VL

VR

C(1

03.1

,VR

,VL,0

.3)

(c) S = 103.1

00.1

0.20.3

0.40

0.10.2

0.30.4

0.5

0.2

0.4

0.6

0.8

VLV

R

C(1

07.6

,VR

,VL,0

.3)

(d) S = 107.6

Figure 9: Barrier call option value under Stochastic Skew model with no jumps.Parameters of the test are: σ = 0.2, ρR = 0.7, ρL = −0.2. Other parameters - see Table 1.

Next we consider a jump diffusion process where jumps of finite activity. To simulate these jumpswe use a Kou double exponential model with the following values of parameters: α = −1, νj =2, λ = 10. Again we price a barrier call option which parameters are given in the Table 1, andrd = 0.05, rf = 0.02, σ = 0.2, ρR = 0.7, ρL = −0.2. We choose the computational domain as L ≤x ≤ H, 0 ≤ VR < 0.5 = VR,max, 0 ≤ VL < 0.4 = VL,max. Parameters of the grid are same as in theprevious section. The grid steps in space and time are h1 = 0.05, h2 = 0.025, θ = 0.02. The results arepresented as a difference between the jump-diffusion process and analogous process with no jumps.For convenience we introduce the notation δC(S, VR, VL, T ) = Cj(S, VR, VL, T ) − Cn(S, VR, VL, T )where Cj(S, VR, VL, T ) is the option price for the jump-diffusion process and Cn(S, VR, VL, T ) is theoption price for a pure diffusion process with no jumps.

In Fig. 10 the value of δC(S, VR, VL, T ) computed in such a test is presented as a function of Sand VR at VL = 0.011 (Fig. 10(a)), VL = 0.022 (Fig. 10(b)), VL = 0.11 (Fig. 10(c)) and VL = 0.41(Fig. 10(d)).

In Fig. 11 same results are presented as a function of VL and VR at S = 92.4 (Fig. 11(a)), S = 100(Fig. 11(b)) - ATM, S = 103.1 (Fig. 11(c)) and S = 107.6 (Fig. 11(d)).

As it could be seen from these results jumps not only change the value of the price but also create

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models30

Page 31: A Finite-difierence approach to the pricing of barrier

9095

100105

110

00.1

0.20.3

0.4

0

2

4

6

8

SVR

δ C

(S,V

R,0

.011

,0.3

)

(a) VL = 0.011

9095

100105

110

00.1

0.20.3

0.4

0

2

4

6

8

SVR

δ C

(S,V

R,0

.022

,0.3

)(b) VL = 0.022

9095

100105

110

00.1

0.20.3

0.4

0

1

2

3

4

5

SVR

δ C

(S,V

R,0

.11,

0.3)

(c) VL = 0.11

9095

100105

110

00.1

0.20.3

0.4

0

0.2

0.4

0.6

0.8

1

1.2

SVL

δ C

(S,0

.41,

VL,0

.3)

(d) VL = 0.41

Figure 10: Barrier call option value under Stochastic Skew model with the Kou double exponentialmodel of jumps.

Parameters of the test are: σ = 0.2, ρR = 0.7, ρL = −0.2, κ = 0.1. Other parameters - see Table 1.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models31

Page 32: A Finite-difierence approach to the pricing of barrier

00.1

0.20.3

0.40.5

00.1

0.20.3

0.4

2

4

6

8

10

VR

VL

δ C

(92.

4,V

R,V

L,0.3

)

(a) S = 92.4

00.1

0.20.3

0.40.5

00.1

0.20.3

0.4

2

4

6

8

10

VR

VL

δ C

(100

,VR

,VL,0

.3)

(b) S = 100 - almost ATM

00.1

0.20.3

0.40.5

00.1

0.20.3

0.4

2

4

6

8

VR

VL

δ C

(103

.1,V

R,V

L,0.3

)

(c) S = 103.1

00.1

0.20.3

0.40.5

00.1

0.20.3

0.4

1

2

3

4

5

6

VR

VL

δ C

(106

.7,V

R,V

L,0.3

)

(d) S = 107.6

Figure 11: Barrier call option value under Stochastic Skew model with no jumps.Parameters of the test are: σ = 0.2, ρR = 0.7, ρL = −0.2, κ = 0.1. Other parameters - see Table 1.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models32

Page 33: A Finite-difierence approach to the pricing of barrier

an asymmetry in the price surface. That is a desirable effect of the jumps to model the stochasticskew.

As it was expected computation of the integral term takes majority of time and essentially slowsdown the calculations. For instance, at our PC computation of one step in time of the pure diffusionprocess takes about a second while same computation for the jump-diffusion process takes about 70seconds. Certainly computation of the integral term can be further improved to achieve a betterperformance. But even the method used in this paper together with the operator splitting shows thatthe stochastic skew model for the barrier options could be priced and calibrated in a suitable time.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models33

Page 34: A Finite-difierence approach to the pricing of barrier

References

[1] P. Carr and L. Wu. Time-changed Levy processes and option pricing. Journal of FinancialEconomics, 71:113–141, 2004.

[2] Domingo Tavella and Curt Randall. Pricing Financial Instruments. The Finite-Differencemethod. Wiley series in financial engineering. John Wiley & Sons, Inc., New York,, 2000.

[3] Tino Kluge. Pricing derivatives in stochastic volatility models using the nite dierence method.PhD thesis, Technische UniversitAat Chemnitz, 2002.

[4] Daniel J. Duffy. Financial Instrument Pricing Using C++. John Wiley and Sons Ltd, 2004.

[5] R.A. Fraser, W.J. Duncan, and A.R.Collar. Elementary matrices. Cambridge Univarsity Press,1963.

[6] N.N. Yanenko. The method of fractional steps. Springer-Verlag, 1971.

[7] A.A. Samarskii. Economical difference schemes for parabolic equations with mixed derivatives.Zhurnal Vychislitelnoi Matematiki i Matematicheskoi Fiziki, 4(4):753–759, 1964.

[8] E.G. Dyakonov. Difference schemes with a separable operator for general second order parabolicequations with variable coefficients. Zhurnal Vychislitelnoi Matematiki i Matematicheskoi Fiziki,4(2):278–291, 1964.

[9] G.I. Marchuk. Methods of Numerical Mathematics. Springer-Verlag, 1975.

[10] G. Strang. On the construction and comparison of difference schemes. SIAM J. NumericalAnalysis, 5:509–517, 1968.

[11] D. Lanser and J.G. Verwer. Analysis of operator splitting for advection-diffusion-reaction prob-lems from air pollution modelling. Technical Report MAS-R9805, Centrum voor Wiskunde enInformatica, March 31 1998.

[12] H. Yoshida. Construction of higher order symplectic integrators. Phys. Lett., 150A:pp. 262–268,1990.

[13] R. Cont and E. Voltchkova. A finite difference scheme for option pricing in jump diffusion andexponential levy models. Technical Report #513, Rapport Interne CMAP, 2003.

[14] S. McKee and A.R. Mitchell. Alternating direction methods for parabolic equations in threespace dimensions with mixed derivatives. The Computer Journal, 14(3):295–300, 1971.

[15] M. Briani, C. La Chioma, and R. Natalini. Convergence of numerical schemes for viscositysolutions to integro-differential degenerate parabolic problems arising in financial theory. Numer.Math., 98(4):607–646, 2004.

[16] B. Neta. Numerical solutions of partial differential equations. Lecture notes, Department ofMathematics, Naval Postgraduate School, March 1996.

[17] P. Roache. Computational Fluid Dynamics. Hermosa Pub, 1976.

[18] A.A. Samarskiy and P.N. Vabishevich. Computational Heat Transfer, volume 1-2. Waley, NewYork, 1995.

[19] P. Matus and I. Rybak. Difference schemes for elliptic equations with mixed derivatives. Com-putational methods in applied mathematics, 4(4), 2004.

[20] W. Gander and W. Gautschi. Adaptive quadrature - revisited. BIT, 40, 2000.

[21] W. Hundsdorfer and J.G. Verwer. Numerical Solution of Time-Dependent Advection-Diusion-Reaction Equations. Springer Series in Computational Mathematics. Springer Verlag, 2003.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models34

Page 35: A Finite-difierence approach to the pricing of barrier

[22] A.A. Samarskii and E.S. Nikolaev. Numerical Methods for Grid Equations, volume 1,2.Birkhauser, 1989.

[23] Stephen Heston. Closed-form solution for options with stochastic volatility, with application tobond and currency options. Review of Financial Studies, 6(2):327–343, 1993.

[24] Oliver Faulhaber. Analytic methods for pricing double barrier options in the presence of stochasticvolatility. PhD thesis, Mathematical Department of the University of Kaiserslautern, Germany,2002.

A. Itkin, P. CarrA Finite-difference approach to the pricing of barrier options in stochastic skew models35