Skip to main content

A combined compact difference scheme for option pricing in the exponential jump-diffusion models


In the present paper, starting with the Black–Scholes equations, whose solutions are the values of European options, we describe the exponential jump-diffusion model of Levy process type. Here, a jump-diffusion model for a single-asset market is considered. Under this assumption the value of a European contingency claim satisfies a general “partial integro-differential equation” (PIDE). With a combined compact difference (CCD) scheme for the spatial discretization, a high-order method is proposed for solving exponential jump-diffusion models. The method is sixth-order accurate in space and second-order accurate in time. A known analytical solution to the model is used to evaluate the performance of the numerical scheme.


The investigation of problems related to finance has been one of the major fields of research and studies in recent decades, and due to its widespread applications in financial institutions and industries, there has been a noticeable change and growth in this field. Since the beginning of the twentieth century, a variety of option pricing models have been introduced, among them the Black–Scholes model is the most important and popular one [1,2,3,4]. Unfortunately, the Black–Scholes model is based on the assumption that the price movements have no jumps and is governed by the Brownian motion, which is inconsistent with empirical evidences. Nevertheless, this assumption can be relaxed and replaced by a more realistic one which accepts that the price movements follow a Poisson or Levy process with jumps [5,6,7]. Based on this new assumption, a model can be derived but a closed form of its analytical solution can be found only under the boundary conditions of European options. Thus, for other boundary conditions, in particular boundary conditions for American options, numerical tools must be applied [8,9,10,11,12].

There might be many numerical techniques that can be applied for the exponential jump-diffusion models, but the most popular one is the finite difference method. This is because its implementation is simple and its rate of convergence can be improved [13, 14]. On the other hand, this technique has some weaknesses, for example, it might not be stable and the points on its related grid must be located in specified locations. However, one can overcome these weaknesses by using the methods for which no grid is needed (i.e., methods in which radial basis functions or spectral basis functions are used). d’Halluin, Forsyth, and Labahn [15] and d’Halluin, Forsyth, and Vetzal [16] proposed an implicit method of the Crank–Nicolson type combined with a penalty method for pricing American options under the Merton model. In [15] the authors showed that the fixed point iteration at each time step converges to the solution of a linear system of discrete penalized equations. Also, Kwon and Lee [17] proposed a method constructed on three-time levels, and the operator splitting method was used to treat the American constraints. These numerical methods use iterative techniques to solve resulting linear systems involving dense coefficient matrices. Recently, many numerical methods have been applied successfully for solving financial problems (see, e.g., [18,19,20,21,22,23]).

Nowadays, due to the creation of complex problems, in particular in financial mathematics, classical methods are not able to produce reasonable results in a satisfactory computational time. For decreasing computational time, some authors have proposed exploiting parallel programming [24]. On the other hand, applying some higher-order but simple methods, such as combined compact difference (CCD) method, is becoming more interesting. In 1998, Chu and Fan [25] proposed a CCD method for solving 1D and 2D steady convection-diffusion equations. This method is an implicit three-point scheme, and its accuracy is sixth-order of local truncated approximation [25]. For solving partial differential equations (PDEs) by the CCD scheme, the first- and second-order derivatives are computed together with the function values of unknowns at grid points. We refer the reader to [26,27,28] for further discussions.

For the sake of completeness, first of all, we review the Black–Scholes integro model, governed by the Poisson process, and its analytic solution for specific boundary conditions that evaluate the prices of special options. Then, by changing some of the variables that transform the Black–Scholes integro model into an integro-diffusion model, we prepare the ground to solve the model numerically. After that, we develop a compact finite difference method, which leads to a triple coefficient matrices, to solve exponential jump-diffusion models. To do this, we first explain and then define our CCD algorithm for solving PIDEs, which we implement using the jump-diffusion model. In this paper, we show that our new model is convergent and its rate of convergence is quite reasonable and high, and it is stable. Finally, after solving our model, we discuss its numerical results and its applications in reasonably estimating different kinds of options prices. The rest of the paper is organized as follows. In Sect. 2, we introduce exponential jump-diffusion models and option pricing problems for European and American options. In Sect. 3, we derive our CCD scheme. The von Neumann stability analysis is carried out for the proposed CCD method in Sect. 4. In Sect. 5, numerical experiments are conducted to show the performance of the presented method. The paper ends with a brief conclusion in Sect. 6.

Exponential jump-diffusion model

First, let us consider time period dt, and let S satisfy the following stochastic differential equation:

$$\begin{aligned}& dS=\mu (t)S\,dt+\sigma (t)S\,dW+\bigl(q(t)-1\bigr)S\,dN, \end{aligned}$$

where \(\mu (t)=r(t)-dt-\lambda (t)\kappa (t)\) is the drift rate, \(\sigma (t)\) is the volatility, dW is the increment of a continuous-time stochastic process, called a standard Brownian process, dN is a Poisson process, and r is the continuously compounded risk-free interest rate. \(\kappa (t)=E[q(t)-1]\) that depends on t is identically independent distributed random variable representing the expected relative jump size. Actually, any \(\kappa (t)\) that belongs to an interval \((-1, \infty )\) for all t and \(q(t) -1\) is an impulse function producing a jump from S to \(Sq(t)\). It is important that \(dN = 0\) with probability \(1-\lambda \,dt\) and \(dN=1\) with probability \(\lambda \,dt\), where λ is the Poisson arrival intensity, which is the expected number of “events” or “arrivals” that occur per unit time. For more information, we refer to [17].

Now, let us consider a case when \(dN = 0\) in (1), then the given equation will be equivalent to the usual stochastic process of “geometric Brownian motion” assumed in the Black–Scholes models. If the Poisson event occurs, then equation (1) can be written as

$$\begin{aligned} &\frac{dS}{S}\simeq q(t)-1. \end{aligned}$$

In this case the function \(q(t)-1\) is an impulse function producing a jump from S to \(Sq(t)\). After that, we consider \(V (S, t)\) as the contingent claim depending on the asset price S and time t. Let in equation (1) \(dt = 0\). Then the following backward-in-time partial integro-differential equation may be solved to determine \(v(x, \tau )=V(S, \tau )\):

$$\begin{aligned} v_{\tau } =&\frac{1}{2}\sigma ^{2}v_{xx} +\biggl(r-\lambda \kappa - \frac{1}{2}\sigma ^{2}\biggr)v_{x}+\lambda \int _{-\infty }^{\infty }v(z, \tau )f(z-x)\,dz \\ &{}-(\lambda +r)v, \quad (\tau , x)\in [0, T]\times (-\infty , \infty ), \end{aligned}$$

where \(x=\log (S)\), \(\tau = T -t \), and T is the expiry time of the contingent claim. In the Merton model the density function f of a normal distribution is given by

$$\begin{aligned} f(x)=\frac{1}{\sqrt{2\pi \eta ^{2}}}e^{-\frac{(x-\nu )^{2}}{2\eta ^{2}}}, \end{aligned}$$

where ν is the mean and \(\eta ^{2}\) is the variance of the jump size probability distribution. It is possible to present the expectation operator in the form \(E[q(t)] = \exp (\nu +\frac{\eta ^{2}}{2})\), i.e., \(\kappa (\tau )=E[q(\tau )-1]=\exp (\nu +\frac{\eta ^{2}}{2})-1\). Also we can divide the integral term into two parts as follows:

$$\begin{aligned} \int _{\mathbb{R}}v(z, \tau )f(z-x)\,dz= \int _{[-b, b]}v(z, \tau )f(z-x)\,dz+ \int _{\mathbb{R} \backslash [-b, b]}v(z, \tau )f(z-x)\,dz. \end{aligned}$$

Let us define \(\varPhi (\tau , x, b)= \int _{\mathbb{R} \backslash [-b, b]}v(z, \tau )f(z-x)\,dz\). In the case of the Merton model,

$$\begin{aligned} \varPhi (\tau , x, b)=Se^{x+\nu +\frac{\eta ^{2}}{2}}N\biggl(\frac{x-b+\nu +\eta ^{2}}{\eta } \biggr)-Ke^{-r\tau }N\biggl(\frac{x-b+\nu }{\eta }\biggr), \end{aligned}$$

where \(N(y)=\frac{1}{\sqrt{2\pi }}\int _{-\infty }^{y} e^{-\frac{x ^{2}}{2}}\,dx\) and K is a strike price. In the case of European options, the payoff functions of the call and put options are as follows:

$$\begin{aligned}& C_{E}=\max \bigl(0, Se^{x} -K\bigr), \qquad P_{E}=\max \bigl(0, K-Se^{x}\bigr). \end{aligned}$$

The asymptotic behavior of the European option when \(S = 0\) or \(S \rightarrow \infty \) is similar to the Black–Scholes PDE.

American options have the important additional feature that early exercise is permitted at any time during the life of the option. American options can be exercised at any time before expiry. Formally, the value of an American call option is

$$\begin{aligned}& V(0,K) = \max \bigl\{ {e^{ - r\tau }} {\bigl({e^{x}S_{\tau }} - K\bigr)^{+} } : 0 \le \tau \le T\bigr\} \end{aligned}$$

since the payoff at \(0 \le \tau \le T\) is \(\max (0,{({e^{x}S_{\tau }} - K) }) \). Also we have

$$\begin{aligned}& C_{A}(\tau ,K)\geq C_{E}(\tau ,K), \qquad P_{A}(\tau ,K)\geq P_{E}(\tau ,K). \end{aligned}$$

By the chain rule and the following new constants

$$\begin{aligned}& \alpha =-\frac{r-\lambda \kappa -\frac{1}{2}\sigma ^{2}}{\sigma ^{2}}, \qquad \beta =-\frac{1}{2}\sigma ^{2}\alpha ^{2}-(\lambda +r), \end{aligned}$$

the transformed Eq. (3) turns into a simpler form

$$\begin{aligned}& u_{\tau }=\frac{1}{2}\sigma ^{2}u_{xx}+\lambda \int _{-\infty }^{\infty }u(z, \tau )g(z-x)\,dz, \quad (\tau , x)\in [0, T]\times (-\infty , \infty ), \end{aligned}$$

where \(u(x, \tau )=e^{-\alpha x-\beta \tau }v(x, \tau )\) and \(g(x)=e^{\alpha x}f(x)\).

Construction of the method

In order to discretize (4), we first truncate the domain \(\mathbb{R}\) to a bounded interval \([-b, b]\) and generate uniform grid points on the truncated region \([0, T] \times [-b, b]\). For given integers \(M,N>0\), let \(h=\frac{2b}{M}\) and \(k=\frac{T}{N}\). The grid points for this situation are \((x_{j}, \tau _{n})\), where \(x_{j}=-b+jh\) for \(j=0, 1, \ldots ,M\) and \(\tau _{n}=nk\) for \(n=0, 1, \ldots ,N\). Using the Taylor expansion at \(x_{j}\), \(j=1, 2, \ldots ,M-1\), we can write

$$\begin{aligned}& u{_{j\pm 1}}= u{_{j}} \pm hu_{j}^{\prime }+ \frac{{{h^{2}}}}{2}u_{j} ^{\prime \prime } \pm \frac{{{h^{3}}}}{6}u_{j}^{\prime \prime \prime } + \frac{{{h^{4}}}}{{24}}{u_{j}^{(4)}} \pm \frac{{{h^{5}}}}{{120}} {u_{j}^{(5)}} + \frac{{{h^{6}}}}{{720}}{u_{j}^{(6)}}+ O\bigl({h^{7}} \bigr). \end{aligned}$$

Here, \(u_{j}=u(x_{j},\cdot )\), \(u'_{j}=u_{x}(x_{j},\cdot )\), \(u''_{j}=u_{xx}(x_{j},\cdot )\), and so on. Using (5), two sets of equations are obtained readily:

$$\begin{aligned}& \textstyle\begin{cases} \frac{{u_{j+1} - u_{j-1}}}{{2h}}= u'_{j} + \frac{{{h^{2}}}}{6}u'''_{j} + \frac{{{h^{4}}}}{{120}}{u_{j}^{(5)}} + O({h^{6}}), \\ \frac{{u'_{j + 1} + u'_{j - 1}}}{2} = u'_{j} + \frac{{{h^{2}}}}{2}u'''_{j} + \frac{{{h^{4}}}}{{24}}{u_{j}^{(5)}} + O( {h^{6}}), \\ u''_{j + 1} - u''_{j - 1}= 2hu'''_{j} + \frac{{{h^{3}}}}{3}{u_{j}^{(5)}} + {O({h^{5}})}, \end{cases}\displaystyle \end{aligned}$$
$$\begin{aligned}& \textstyle\begin{cases} \frac{{u_{j + 1} - 2u_{j} + u_{j - 1}}}{{{h^{2}}}} = u''_{j}+ \frac{ {{h^{2}}}}{{12}}{u_{j}^{(4)}} + \frac{{{h^{4}}}}{{360}}{u_{j}^{(6)}}+ O({h^{6}}), \\ \frac{{u'_{j + 1} - u'_{j - 1}}}{{2h}}= u''_{j}+ \frac{{{h^{2}}}}{6} {u_{j}^{(4)}} + \frac{{{h^{4}}}}{{120}}{u_{j}^{(6)}}+ O({h^{6}}), \\ \frac{{u''_{j + 1} + u''_{j - 1}}}{2}= u''_{j}+ \frac{{{h^{2}}}}{2} {u_{j}^{(4)}}+ \frac{{{h^{4}}}}{{24}}{w_{j}^{(6)}} + O({h^{6}}). \end{cases}\displaystyle \end{aligned}$$

From (6) and (7), for \(j=1,\ldots ,M-1\), we can extract

$$\begin{aligned}& \begin{aligned} &u'_{j} = \frac{{15}}{{16h}} [ {u_{j + 1}- u_{j - 1}} ] - \frac{7}{{16}} \bigl[ {u'_{j + 1} + u'_{j - 1}} \bigr] + \frac{h}{ {16}} \bigl[ {u''_{j + 1}- u''_{j - 1}} \bigr] + O\bigl({h^{6}}\bigr), \\ &u''_{j}= \frac{3}{{{h^{2}}}} [ {u_{j + 1} - 2u_{j} + u_{j - 1}} ] - \frac{9}{{8h}} \bigl[ {u'_{j + 1}- u'_{j - 1}} \bigr] + \frac{1}{8} \bigl[ {u''_{j + 1}+ u''_{j - 1}} \bigr] + O\bigl({h^{6}}\bigr). \end{aligned} \end{aligned}$$

In order to keep three-point structure at the two boundary points \(x_{0}\) and \(x_{M}\), a pair of one-sided CCD schemes are represented as follows (see [25]):

$$\begin{aligned}& \textstyle\begin{cases} 14{u'_{0}} + 16{u'_{1}} + 2h{u''_{0}} - 4h{u''_{1}} + \frac{1}{h}(31 {u_{0}} - 32{u_{1}} + {u_{2}}) = 0, \\ 14{u'_{M}} + 16{u'_{M - 1}} - 2h{u''_{M}} + 4h{u''_{M - 1}} - \frac{1}{h}(31{u_{M}} - 32{u_{M - 1}} + {u_{M - 2}}) = 0, \end{cases}\displaystyle \end{aligned}$$


$$\begin{aligned}& \textstyle\begin{cases} {u'_{0}} + 2{u'_{1}} - h{u''_{1}} + \frac{1}{{2h}}(7{u_{0}} - 8{u_{1}} + {u_{2}}) = 0, \\ {u'_{M}} + 2{u'_{M - 1}} + h{u''_{M - 1}} - \frac{1}{{2h}}(7{u_{M}} - 8{u_{M - 1}} + {u_{M - 2}}) = 0. \end{cases}\displaystyle \end{aligned}$$

On the other hand, Eq. (4) at the intermediate point \(\tau _{n+\frac{1}{2}}\) with the central finite difference scheme can be written as

$$\begin{aligned} \frac{ u^{n+1}-u^{n}}{k} =&\frac{\sigma ^{2}}{2}(u_{xx})^{n+1/2}+ \lambda \varGamma ^{n+1/2}+O\bigl(k^{2}\bigr) \\ =&\frac{\sigma ^{2}}{4}\bigl[(u_{xx})^{n+1}+(u_{xx})^{n} \bigr]+ \frac{\lambda }{2}\bigl[\varGamma ^{n+1}+\varGamma ^{n}\bigr]+O\bigl(k^{2}\bigr), \end{aligned}$$

where \(\varGamma ^{n}=\int _{-\infty }^{\infty } u(z, \tau _{n}) g(z-x)\,dz\). Equation (11) can be rewritten as follows:

$$\begin{aligned}& u^{n+1}-\frac{k \sigma ^{2}}{4}(u_{xx})^{n+1}- \frac{k \lambda }{2}\varGamma ^{n+1}= u^{n}+ \frac{k \sigma ^{2}}{4}(u_{xx})^{n}+\frac{k \lambda }{2} \varGamma ^{n}+O\bigl(k^{2}\bigr). \end{aligned}$$

Using the composite Boole’s rule on \([-b, b]\), the following approximation formula for \(j=1,\ldots , M-1\) can be derived:

$$ \int _{-\infty }^{\infty } u(z, \tau _{n}) g(z-x_{j})\,dz=\varGamma ^{n}_{j}+ \varPhi (\tau _{n}, x_{j}, b)+O\bigl(h^{6}\bigr), $$


$$\begin{aligned} \varGamma ^{n}_{j} =& \frac{2h}{45} \bigl( 7u_{0}^{n} g_{j0}+32u_{1}^{n} g _{j1}+12u_{2}^{n} g_{j2}+32u_{3}^{n} g_{j3}+7u_{4}^{n} g_{j4} \\ &{}+7u_{4}^{n} g_{j4}+32u_{5}^{n} g_{j5}+12u_{6}^{n} g_{j6}+32u_{7}^{n} g_{j7}+7u_{8}^{n} g_{j8}+\cdots \\ &{}+7u_{M-4}^{n} g_{j,M-4}+32u_{M-3}^{n} g_{j,M-3}+12u_{M-2}^{n} g_{j,M-2} \\ &{}+32u_{M-1}^{n} g_{j,M-1}+7u_{M}^{n} g_{j,M} \bigr), \end{aligned}$$

in which \(u_{j}^{n}\simeq u(x_{j}, \tau _{n})\) and \(g_{jl}=g(x_{l}-x _{j})\). \(\varPhi (\tau _{n}, x_{j}, b)\) is usually negligible and can be ignored. Assuming \(v_{j}^{n}\simeq u_{x}(x_{j}, \tau _{n})\) and \(w_{j}^{n}\simeq u_{xx}(x_{j}, \tau _{n})\), from Eqs. (8), (9), (10), and (12), the following coupled scheme can be deduced:

$$\begin{aligned} \textstyle\begin{cases} {u^{n + 1}_{j}} - \frac{k\sigma ^{2}}{4}{w^{n + 1}_{j}} - \frac{{k \lambda }}{2}{\varGamma ^{n + 1}_{j}} = {u^{n}_{j}} + \frac{k\sigma ^{2}}{4}{w^{n}_{j}} + \frac{{k\lambda }}{2}{\varGamma ^{n} _{j}}, \\ - \frac{{15}}{{16h}} [ {{u^{n + 1}_{j + 1}} - {u^{n + 1}_{j - 1}}} ]+ \frac{7}{{16}} [ {{v^{n + 1}_{j + 1}} + \frac{16}{ {7}}{v^{n}_{j}} + {v^{n + 1}_{j - 1}}} ] - \frac{h}{{16}} [ {{w^{n+1}_{j + 1}} - {w^{n+1}_{j - 1}}} ] = 0, \\ \frac{3}{{{h^{2}}}} [ {{u^{n + 1}_{j + 1}} - 2{u^{n + 1}_{j}} + {u^{n + 1}_{j - 1}}} ] - \frac{9}{{8h}} [ {{v^{n + 1}_{j + 1}} - {v^{n + 1}_{j - 1}}} ] + \frac{1}{8} [ {{w^{n+1} _{j + 1}}-8{w^{n+1}_{j}} + {w^{n+1}_{j - 1}}} ] =0, \\ 14{v^{n + 1}_{0}} + 16{v^{n + 1}_{1}} + 2h{w^{n+1}_{0}} - 4h{w^{n+1} _{1}} + \frac{1}{h}(31{u^{n + 1}_{0}} - 32{u^{n + 1}_{1}} + {u^{n + 1} _{2}}) =0, \\ 14{v^{n + 1}_{M}} + 16{v^{n + 1}_{M - 1}} - 2h{w^{n+1}_{M}} + 4h{w ^{n+1}_{M - 1}} - \frac{1}{h}(31{u^{n + 1}_{M}} - 32{u^{n + 1}_{M - 1}} + {u^{n + 1}_{M - 2}}) = 0, \\ {v^{n + 1}_{0}} + 2{v^{n + 1}_{1}} - h{w^{n+1}_{1}} + \frac{1}{{2h}}(7 {u^{n + 1}_{0}} - 8{u^{n + 1}_{1}} + {u^{n + 1}_{2}}) = 0, \\ {v^{n + 1}_{M}} + 2{v^{n + 1}_{M - 1}} + h{w^{n+1}_{M - 1}} - \frac{1}{ {2h}}(7{u^{n + 1}_{M}} - 8{u^{n + 1}_{M - 1}} + {u^{n + 1}_{M - 2}}) = 0. \end{cases}\displaystyle \end{aligned}$$

Stability analysis

In this section, we investigate the stability analysis of the present scheme using the von Neumann method. At grid node \((j,n)\), let

$$ u_{j}^{n} = {\xi ^{n}} {e^{{\textbf{i}}j\omega }}, \qquad v_{j}^{n} = {\eta ^{n}} {e^{{\textbf{i}}j\omega }}, \qquad w_{j}^{n} = {\mu ^{n}} {e^{{\textbf{i}}j\omega }}, $$

where \({\textbf{i}} = \sqrt{ - 1} \) and \({\xi ^{n}}\), \({\eta ^{n}}\), and \({\mu ^{n}}\) are amplitudes at time level n, and w is the phase angle.

Lemma 1

It can be deduced that \({\eta ^{n}} = \frac{{{\xi ^{n}}{C_{2}}}}{{h {C_{1}}}}\mathbf{i}\)and \({\mu ^{n}} = \frac{{{\xi ^{n}} {C_{3}}}}{{{h^{2}}{C_{1}}}}\), where

$$\begin{aligned}& {C_{1}} = 20\cos \omega + 2{\cos ^{2}}\omega + 23, \\& {C_{2}} = 9\sin \omega (\cos \omega + 4), \\& {C_{3}} = 3\bigl(8\cos \omega + 11{\cos ^{2}}\omega - 19\bigr). \end{aligned}$$


Substituting (15) into the first and second relations of (8), we can write

$$\begin{aligned}& \textstyle\begin{cases} \frac{7}{{16}}{\eta ^{n}}{e^{\mathbf{i}j\omega }}({e^{{\textbf{i}} \omega }} + {e^{ - \mathbf{i}\omega }}) + {\eta ^{n}}{e^{\mathbf{i}j \omega }} - \frac{h}{{16}}{\mu ^{n}}{e^{\mathbf{i}j\omega }}({e^{ \mathbf{i}\omega }} - {e^{ - \mathbf{i}\omega }}) = \frac{{15}}{ {16h}}{\xi ^{n}}{e^{\mathbf{i}j\omega }}({e^{\mathrm{{i}}\omega }} - {e^{ - \mathbf{i}\omega }}), \\ \frac{9}{{8h}}{\eta ^{n}}{e^{\mathbf{i}j\omega }}({e^{\mathbf{i} \omega }} - {e^{ - \mathbf{i}\omega }}) - \frac{1}{8}{\mu ^{n}}{e ^{\mathbf{i}j\omega }}({e^{\mathbf{i}\omega }} + {e^{ - \mathbf{i} \omega }}) + {\mu ^{n}}{e^{\mathbf{i}j\omega }} = \frac{3}{{{h^{2}}}}{\xi ^{n}}{e^{\mathbf{i}j\omega }}({e^{\mathbf{i} \omega }} + {e^{ - \mathbf{i}\omega }} - 2). \end{cases}\displaystyle \end{aligned}$$

Using Euler’s formulae \({e^{\mathbf{i}\omega }} + {e^{ - \mathbf{i} \omega }}=2\cos \omega \) and \({e^{\mathbf{i}\omega }} -{e^{ - \mathbf{i}\omega }}=2\textbf{i}\sin \omega \), we obtain

$$\begin{aligned}& \textstyle\begin{cases} (1 + \frac{7}{8}\cos \omega ){\eta ^{n}} - (\frac{{\mathbf{i}h}}{8} \sin \omega ){\mu ^{n}} = (\frac{{\mathbf{i}15}}{{8h}}\sin \omega ) {\xi ^{n}}, \\ (\frac{{\mathbf{i}9}}{{4h}}\sin \omega ){\eta ^{n}} + (1 - \frac{1}{4}\cos \omega ){\mu ^{n}} = \frac{6}{{{h^{2}}}}(\cos \omega - 1){\xi ^{n}}. \end{cases}\displaystyle \end{aligned}$$

By solving the above sets of equations, we have

$$\begin{aligned}& {\eta ^{n}} = \frac{{9{\xi ^{n}}\sin \omega (\cos \omega + 4)}}{{h(20 \cos \omega + 2{{\cos }^{2}}\omega + 23)}}\mathbf{i} = \frac{{{\xi ^{n}}{C_{2}}}}{{h{C_{1}}}}\mathbf{i}, \\& {\mu ^{n}} = \frac{{3{\xi ^{n}}(8\cos \omega + 11{{\cos }^{2}}\omega - 19)}}{{{h^{2}}(20\cos \omega + 2{{\cos }^{2}}\omega + 23)}} = \frac{ {{\xi ^{n}}{C_{3}}}}{{{h^{2}}{C_{1}}}}. \end{aligned}$$


Theorem 1

The proposed CCD method is unconditionally stable.


Using (15), we can rewrite the first relation of (14) as follows:

$$\begin{aligned}& \xi ^{n + 1}e^{\mathbf{i}j\omega } - \frac{{k{\sigma ^{2}}}}{4}\mu ^{n + 1}e^{\mathbf{i}j\omega } - \frac{{k\lambda }}{2}\varGamma _{j} ^{n + 1} \\& \quad = \xi ^{n}e^{\mathbf{i}j\omega } + \frac{{k{\sigma ^{2}}}}{4}\mu ^{n}e^{\mathbf{i}j\omega } + \frac{ {k\lambda }}{2}\varGamma _{j}^{n} \end{aligned}$$


$$\begin{aligned}& \xi - \frac{{k{\sigma ^{2}}}{\mu ^{n + 1}}}{4\xi ^{n}} - \frac{{k\lambda }{\varGamma _{j}^{n + 1}}}{2\xi ^{n}e^{\mathbf{i}j\omega }} = 1 + \frac{ {k{\sigma ^{2}}}\mu ^{n}}{4\xi ^{n}} + \frac{{k\lambda }\varGamma _{j}^{n}}{2 \xi ^{n}e^{\mathbf{i}j\omega }}. \end{aligned}$$

Using (13) and Lemma 1, it can be deduced that

$$\begin{aligned}& \xi =\frac{4 + {\varTheta {\sigma ^{2}}}\frac{C_{3}}{C_{1}} + (\frac{ {4h}}{45}\sum_{l=0}^{M}c_{l}e^{\textbf{i}(l-j)\omega }g_{jl} ) \lambda \varTheta h^{2}}{4 - {\varTheta {\sigma ^{2}}}\frac{C_{3}}{C_{1}} - (\frac{{4h}}{45}\sum_{l=0}^{M}c_{l}e^{\textbf{i}(l-j)\omega }g _{jl} )\lambda \varTheta h^{2}}, \end{aligned}$$

where \(c_{0},\ldots ,c_{M}\) are the weights or coefficients of Bool’s quadrature (13) and \(\varTheta =k/h^{2}\). It is obvious that if there is no jump, i.e., \(\lambda =0\), then \(\xi =\xi _{0}\), where

$$ \xi _{0}=\frac{4 + {\varTheta {\sigma ^{2}}}\frac{C_{3}}{C_{1}}}{4 - {\varTheta {\sigma ^{2}}}\frac{C_{3}}{C_{1}}} $$

and \(|\xi |=|\xi _{0}|\leq 1\) since one can easily check that \(-10<\frac{C_{3}}{C_{1}}\leq 0\). Otherwise, if \(|g(\cdot )|\leq C\), then

$$ \Biggl\vert \frac{4h}{45}\sum_{l=0}^{M}c_{l}e^{\textbf{i}(l-j)\omega }g _{jl} \Biggr\vert \leq \frac{128}{45}C(2b+1), $$

and obviously, when Θ is kept fixed and \(h,k\to 0\), then \(\xi \to \xi _{0}\); and therefore the proposed CCD method is unconditionally stable. □

Numerical results

In this section, we present the numerical results of the CCD method for European and American options. For the numerical experiments, we choose the initial stock price \(S_{0} = K\) and the truncated domain \([-1.5, 1.5]\) of the log price. Accuracy of the scheme is measured by using the norm infinity \(L_{\infty }=\|u_{a}-u_{e}\|_{\infty }\), where \(u_{a}\) and \(u_{e}\) stand for the approximate and exact solutions, respectively. Equation (3) has an analytical solution given by Merton’s formula

$$\begin{aligned} V(S,\tau )=\sum_{m=0}^{\infty } \frac{e^{-\theta \tau }(\theta \tau )^{m}}{m!}C_{BS}(\tau , S, K, r _{m}, \sigma _{m}), \end{aligned}$$

where \(\theta =\lambda (1+\kappa )\), \(r_{m}=r-\lambda \kappa +\frac{m \ln (1+\kappa )}{\tau }\), \(\sigma ^{2}_{m}=\sigma ^{2}+\frac{m\eta ^{2}}{ \tau }\), and \(C_{BS}\) denotes the Black–Scholes value of a call. See [7] for further information.

European options

In this section, we consider the parameters described in Sect. 2 for price European option as follows [17]:

$$ \sigma =0.15, \qquad T=0.25,\qquad r=0.05,\qquad \eta =0.45,\qquad \nu =-0.9, \qquad K=100. $$

As the first numerical example for the European option, we compare the approximate solutions generated by the CCD method and the exact solution under the Merton model without jumps (\(\lambda =0\)) in Table 1 with setting \(M=128\) and \(N=25\). In Table 2, numerical solutions for the European call options obtained by the present method at different asset values are presented and compared with the exact solution and the well-known Crank–Nicolson (CN) method. Since the error of the proposed method is of order \(O(k^{2}+h^{6})\), in Table 3 we set initially \(N=25\) and \(M=128\) for put options and then increase them by a factor of 8 and 2, respectively.

Table 1 A comparison between the approximate solution and the exact solution corresponding to the European call options under the Merton model with \(\lambda =0\)
Table 2 A comparison between the approximate solution and the exact solution corresponding to the European call options under the Merton model with \(\lambda =0.1\)
Table 3 Order of convergence for the European put options under the Merton model by the CCD method with \(\lambda =0.1\) and \(S=30\)

In Table 4, we check the validity of Theorem 1 by using a numerical example to price European option for \(\lambda =0\). In this case, we reduce the h and k so that \(\varTheta =k/h^{2}\) stays constant, and we observe that the stability of the method is established.

Table 4 Check the validity of Theorem 1 for the European call options under the Merton model: \(\lambda =0\), \(T=1\) and \(S=30\)

The curves of the numerical and exact solutions and the distribution of absolute error are plotted in Fig. 1, which indicates that our numerical solutions are in good agreement with the exact solution.

Figure 1
figure 1

European call option prices versus stock prices. Exact and numerical solutions of European call options for \(S\in [60, 130]\) and \(\lambda =0.1\) (up) and the distribution of absolute error (down)

American options

In this section, we perform several numerical simulations to evaluate the prices of American options under the Merton model. We used the CCD method, which leads to linear systems involving tridiagonal matrices. It is important to create a highly accurate test solution, because there is no analytical solution for the value of an American option. The “exact” option value was computed using the data in [16]. We price an American put option with the following parameters:

$$\begin{aligned}& \sigma =0.15, \qquad T=0.25,\qquad r=0.05, \\& \eta =0.45,\qquad \nu =-0.9, \qquad K=100, \end{aligned}$$

which are also used by Kwon and Lee [17]. In [17], an implicit method with three-time levels has been used. In Table 5, we present the numerical results obtained by using the CCD algorithm. The reference values evaluated by d’Halluin, Forsyth, and Vetzal [16] are with six digits after the decimal point.

Table 5 Values of American put options obtained by the CCD method under the Merton model. The reference values are 10.003822 at \(S = 90\), 3.241251 at \(S = 100\), and 1.419803 at \(S = 110\) [16]. The truncated domain is \([-1.5, 1.5]\) and \(\lambda =0.1\), \(M=128\), and \(N=25 \)

To show that the method has sixth-order convergence, we initially set \(M=32\) and \(N=10\) for put options, then increase them by a factor of 2 and 8, respectively, in Table 6. We use the reference value 10.003822 at \(S = 90\) [16].

Table 6 Order of convergence of the CCD method for American put options under the Merton model with \(\lambda =0.1\)

In Fig. 2, the initial conditions for American call option are plotted at various states of economy, i.e., \(\lambda =0.1, 0.3, 0.5, 0.7\). In Fig. 3, the price of American put option is plotted as a function of time and stock prices.

Figure 2
figure 2

American call option prices versus stock prices. Initial condition and numerical solution under the Merton jump-diffusion model for American call options at various states of economy

Figure 3
figure 3

American call option prices versus asset prices. Price of option at various states of economy as a function of stock price and time for American call options under the Merton jump-diffusion model. (up) First state of economy (\(\lambda = 0.3\)). (center) Second state of economy (\(\lambda = 0.5\)). (down) Third state of economy (\(\lambda = 0.7\)) with \(M=50\), \(N=10\), and \(S =70\)


We have offered a compact difference method for pricing options when the underlying asset process follows a regime-switching jump-diffusion model. This model is more efficient than other models because of its efficiency and high accuracy. To support the model, we have prepared several numerical examples to show that the suggested algorithm computes accurate values in comparison to the test solution. This method is shown to be second- and sixth-order accurate in time and space, respectively.


  1. Golbabai, A., Nikan, O.: A computational method based on the moving least-squares approach for pricing double Barrier options in a time-fractional Black–Scholes model. Comput. Econ. (2019).

    Article  Google Scholar 

  2. Kwork, Y.K.: Mathematical Models of Financial Derivatives, 2nd edn. Springer, Berlin (2011)

    Google Scholar 

  3. Rodrigo, M.R., Goard, J.: Pricing of general European options on discrete dividend-paying assets with jump-diffusion dynamics. Appl. Math. Model. 64, 47–54 (2018)

    MathSciNet  Article  Google Scholar 

  4. Zhang, H., Liu, F., Turner, I., Chen, S.: The numerical simulation of the tempered fractional Black–Scholes equation for European double barrier option. Appl. Math. Model. 40(11–12), 5819–5834 (2016)

    MathSciNet  Article  Google Scholar 

  5. Amin, K.I.: Jump diffusion option valuation in discrete time. J. Finance 48, 1833–1863 (1993)

    Article  Google Scholar 

  6. Eraker, B., Johannes, M., Polson, N.: The impact of jumps in volatility and returns. J. Finance 58, 1269–1300 (2003)

    Article  Google Scholar 

  7. Merton, R.C.: Option pricing when the underlying stocks are discontinuous. J. Financ. Econ. 5, 125–144 (1976)

    Article  Google Scholar 

  8. Cortos, J.C., Sala, R., Jodar, L., Sevilla-Peris, R.: A new direct method for solving the Black–Scholes equation. Appl. Math. Lett. 18, 29–32 (2005)

    MathSciNet  Article  Google Scholar 

  9. Jodar, L., Company, R., Gonzalez, A.L.: Numerical solution of modified Black–Scholes equation pricing stock options with discrete dividend. Math. Comput. Model. 44, 1058–1068 (2006)

    MathSciNet  Article  Google Scholar 

  10. Seydel, R.: Tools for Computational Finance. Springer, Berlin (2004)

    Book  Google Scholar 

  11. Tavella, D., Randall, C.: Pricing Financial Instruments: The Finite Difference Method. Wiley, New York (2000)

    Google Scholar 

  12. Wang, S.: A novel fitted finite volume method for the Black–Scholes equation governing option pricing. IMA J. Numer. Anal. 24, 699–720 (2004)

    MathSciNet  Article  Google Scholar 

  13. Akbari, R., Mokhtari, R.: A new compact finite difference method for solving the generalized long wave equation. Numer. Funct. Anal. Optim. 35, 133–152 (2014)

    MathSciNet  Article  Google Scholar 

  14. Mitchell, A.R., Griffiths, D.F.: The Finite Difference Method in Partial Differential Equations. Wiley, New York (1990)

    Google Scholar 

  15. d’Halluin, Y., Forsyth, P.A., Labahn, G.: A penalty method for American options with jump-diffusion processes. Numer. Math. 97, 321–352 (2004)

    MathSciNet  Article  Google Scholar 

  16. d’Halluin, Y., Forsyth, P.A., Vetzal, K.R.: Robust numerical methods for contingent claims under jump-diffusion processes. IMA J. Numer. Anal. 25(1), 87–112 (2005)

    MathSciNet  Article  Google Scholar 

  17. Kwon, Y., Lee, Y.: A second-order tridiagonal method for American options under jump-diffusion models. SIAM J. Sci. Comput. 33(4), 1860–1872 (2011)

    MathSciNet  Article  Google Scholar 

  18. Cen, Z., Chen, W.: A HODIE finite difference scheme for pricing American options. Adv. Differ. Equ. 2019, 67 (2019).

    MathSciNet  Article  MATH  Google Scholar 

  19. Rao, S.C.S., Manisha: Numerical solution of generalized Black–Scholes model. Appl. Math. Comput. 321, 401–421 (2018)

    MathSciNet  MATH  Google Scholar 

  20. Haq, S., Hussain, M.: Selection of shape parameter in radial basis functions for solution of time-fractional Black–Scholes models. Appl. Math. Comput. 335, 248–263 (2018)

    MathSciNet  MATH  Google Scholar 

  21. Safaei, M., Neisy, A., Nematollahi, N.: New splitting scheme for pricing American options under the Heston model. Comput. Econ. 52(2), 405–420 (2018)

    Article  Google Scholar 

  22. Yang, X., Wu, L., Shi, Y.: A new kind of parallel finite difference method for the quanto option pricing model. Adv. Differ. Equ. 2015, 311 (2015).

    MathSciNet  Article  MATH  Google Scholar 

  23. Zhang, H., Liu, F., Chen, S., Anh, V., Chen, J.: Fast numerical simulation of a new time-space fractional option pricing model governing European call option. Appl. Math. Comput. 339, 186–198 (2018)

    MathSciNet  Article  Google Scholar 

  24. Creel, M., Goffe, W.L.: Multi-core CPUs, clusters, and grid computing: a tutorial. Comput. Econ. 32, 353–382 (2008)

    Article  Google Scholar 

  25. Chu, P., Fan, C.: A three-point combined compact difference scheme. J. Comput. Phys. 140, 370–399 (1998)

    MathSciNet  Article  Google Scholar 

  26. Chu, P., Fan, C.: A three-point sixth-order nonuniform combined compact difference scheme. J. Comput. Phys. 148, 663–764 (1999)

    MathSciNet  Article  Google Scholar 

  27. Chu, P., Fan, C.: A three-point sixth-order staggered combined compact difference scheme. Math. Comput. Model. 32, 323–340 (2000)

    MathSciNet  Article  Google Scholar 

  28. Nihei, T., Ishii, K.: A fast solver of the shallow water equations on a sphere using a combined compact difference scheme. J. Comput. Phys. 187, 639–659 (2003)

    Article  Google Scholar 

Download references


Authors would like to appreciate the handling editor and the referees for his supports and their useful comments, respectively.

Availability of data and materials

Not applicable.

Authors’ information

Rahman Akbari is currently a PhD student of Financial Mathematics, Reza Mokhtari is currently an Associate Professor of Numerical Analysis, and Mohammad Taghi Jahandideh is currently an Assistant Professor of Mathematical Analysis at the Department of Mathematical Sciences, Isfahan University of Technology, Isfahan 84156-83111, Iran.


Not applicable.

Author information

Authors and Affiliations



All authors contributed significantly to this manuscript, and they read and approved the final manuscript.

Corresponding author

Correspondence to Reza Mokhtari.

Ethics declarations

Competing interests

Authors confirm that SpringerOpen’s guidance on competing interests has been read and there are not any financial and non-financial competing interests for them.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (, which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Akbari, R., Mokhtari, R. & Jahandideh, M.T. A combined compact difference scheme for option pricing in the exponential jump-diffusion models. Adv Differ Equ 2019, 495 (2019).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI:


  • 65M06
  • 65M12
  • 47G20
  • 91B28


  • Black–Scholes equation
  • Combined compact difference (CCD)
  • Jump-diffusion model
  • Option pricing