An iterative splitting method for pricing European options under the Heston model
Abstract.
In this paper, we propose an iterative splitting method to solve the partial differential equations in option pricing problems. We focus on the Heston stochastic volatility model and the derived two-dimensional partial differential equation (PDE). We take the European option as an example and conduct numerical experiments using different boundary conditions. The iterative splitting method transforms the two-dimensional equation into two quasi one-dimensional equations with the variable on the other dimension fixed, which helps to lower the computational cost. Numerical results show that the iterative splitting method together with an artificial boundary condition (ABC) based on the method by Li and Huang (2019) gives the most accurate option price and Greeks compared to the classic finite difference method with the commonly-used boundary conditions in Heston (1993).
Key words and phrases:
Option pricing, Heston model, operator splitting, iterative method.2010 Mathematics Subject Classification:
Primary: 65N06; 35C20; Secondary: 35K201. Introduction
An option is a financial instrument that provides the investor with the opportunity to buy or sell an asset at a specified price. Options make it possible for investors to benefit from the return of the underlying asset at a low cost and play an important role in hedging risk as well.
Research on option pricing can be traced back to Bachelier’s work in 1900 [1], since then an increasing number of mathematical tools have been introduced into the financial field [29]. In 1973, the seminal work of Black and Scholes opened a new era of the option pricing theory [2]. After that, the option market expanded rapidly and option pricing attracted considerable attention of researchers.
Due to the volatility smile and skew reflected by the market data, the assumption of constant volatility in the Black-Scholes model need relaxing and different models have been proposed to better reflect the market features based on the Black-Scholes model. Assume that the volatility of the underlying is a function of the price and time, then we get to the well-accepted local volatility model [13] [11]. By calibrating it to the market prices of European options, we can obtain the implied volatility surface which can be used to price other options. But it always leads to the behavior of the volatility smile opposite to the market as the price changes[19]. In jump diffusion models, Poisson processes are added into the dynamic of the underlying to capture the phenomena of the volatility [28, 12, 25]. However, they are not applicable to riskless hedging. Lévy processes are continuous-time stochastic processes with stationary independent increments and are used to model the return of the underlying [9, 18, 7]. The Black-Scholes model and jump diffusion models can be seen as special cases of models based on Lévy processes. Because of the inherent property of Lévy processes, i.e., independent increments, they are not able to capture the dependence structure. Stochastic volatility models are constructed with an additional stochastic process to describe the dynamic of the volatility [24, 31, 21, 30, 20, 17]. Among them, Heston’s stochastic volatility model is the most popular and widely used in both academia and industry. The volatility in the Heston model follows the Cox-Ingersoll-Ross (CIR) process, which ensures that it cannot be negative. The dependence structure can be incorporated and it has a closed-form solution when pricing European options.
As we have shown above, different continuous-time stochastic processes are introduced to model the price or other state variables such as the volatility of the underlying and always appear in literature as stochastic differential equations (SDEs). Under the risk neutral probability measure, the price of the option can be represented as the conditional expectation of the discounted payoff determined by the contract. By the Feynman-Kac theorem, it can be considered as a solution of a partial differential equation (PDE) corresponding to the dynamics or SDEs we assume. Closed-form solutions are difficult to derived or calculated for some of the models and options so that a variety of numerical methods have been developed. By lattice methods, the continuous distribution is transformed into a discrete distribution, which is much easier to understand and implement [10, 5]. However, lattice methods are not suitable for complicated models. To deal with the continuous-time stochastic processes or SDEs directly, we have the well-known Monte Carlo simulation method [4, 24, 3]. It is flexible and applies to high-dimensional problems, but it gives solutions with probable errors and requires a large number of simulation paths to guarantee the accuracy. Researchers have tried to use numerical integration methods to compute the price of the option based on the Fourier Transform with the characteristic functions of the distributions of the underlying [8, 14]. These methods are efficient and can be useful for calibration, while they always need careful derivation of the formulae for different models and options. Another class of methods is to price options by solving the PDEs and a wide range of numerical techniques are then available including finite difference methods [6, 22, 33, 23, 16], finite element methods [15, 32] and so on. PDE methods especially finite difference methods are intuitive and interpretable, but memory space and computational time they cost may increase rapidly as the dimension of the problem grows.
In this paper, we take the Heston stochastic volatility model as an example and try to give a new numerical method for the option pricing problem, which can maintain the advantages of finite difference methods and reduce the influence of the dimension of the PDE. Compared with the Black-Scholes model, the Heston model involved the CIR process to describe the volatility of the underlying, which is a mean-reverting process and can be seen as adding fluctuations to a given mean volatility to some extent. Accordingly, the PDE derived from the Heston model can be seen as adding terms related to the volatility to the PDE corresponding to the Black-Scholes model, and the dimension is then increased from one to two. On this basis, we propose an iterative splitting method to split the operators and solve the quasi one-dimensional PDEs iteratively. We make use of the analytical solution of the Black-Scholes model, lower the computational cost and maintain the simplicity, flexibility and interpretability of the PDE methods. A mixed method is also used to guarantee the convergence of the iterative process. We conduct numerical experiments to price the European options. Boundary conditions from [20] and artificial boundary conditions obtained with the methods in [27] are used for a comparison. Numerical results show that the iterative splitting method together with an artificial boundary condition based on the method from [27] gives the most accurate solutions and Greeks. By contrast with a classic two-dimensional finite difference scheme, its solutions have smaller errors as well. Besides, the iterative splitting method can be easily extended to other models and options.
The paper is organized as follows. Section 2 presents the PDE derived from the Heston stochastic volatility model. The iterative splitting method is proposed in Section 3 and the corresponding algorithms are also given. In Section 4, we derive and show different artificial boundary conditions with the methods in [27]. Section 5 gives the results of numerical experiments with different parameters, boundary conditions and numerical methods. We summarize in Section 6.
2. The Heston stochastic volatility model
Denote the asset spot price and its variance by and . According to [20], assume that and satisfy the following two stochastic processes:
(1) | |||
(2) |
The parameter is the expected return of the underlying, is the speed at which the variance reverts to its long run mean and is the so-called ”volatility of volatility”. In addition, and are standard Wiener processes with a constant correlation coefficient .
The price of a financial derivative can then be considered as the solution of a Garman’s type PDE:
(3) |
where is the risk-free interest rate and the price of volatility risk can be set to be 0.
We take the European call option as an example and denote the maturity and the strike by and . Let represent the time to maturity and
then the PDE (3) is equivalent to
(4) | |||
Besides, to give the price of the derivative, an initial value and proper boundary conditions are also needed. Referring to [20], the conditions can be rewritten as follows with the transforms mentioned above:
(5) | |||
(6) | |||
(7) | |||
(8) | |||
(9) |
3. An iterative splitting method for the option pricing problem
First, we split the operators on the left-hand side of the PDE (4) into two parts. Let
(10) |
(11) |
then the PDE (4) can be rewritten as
(12) |
If is known and can be denoted by , the two-dimensional problem (4)-(9) with a mixed spatial-derivative term can be transformed into two quasi one-dimensional problems with the same operator. Let
we get to the following two problems:
(13) | |||
and
(14) | |||
We can easily give the solution to the problem (13) based on the Black-Scholes formula:
(15) |
Here, represents the cumulative distribution function of the standard normal distribution.
The problem (14) can be solved only if is known, so we try to use an iterative process to find the solution. Since the operators in the original problem have been split as above, we call it an iterative splitting method.
Choose a time step size , and let . Denote and define , and similarly. For the -th time step, we first calculate by (15). With the known , we compute and use it to approximate . Then we can solve the problem (14) numerically to get . Since , can be updated, with which we obtain a new . The problem (14) can be solved again, and we can recalculate , and again and again until some termination condition is satisfied. The algorithm is shown in Algorithm 1.
The interval has been divided into pieces. Choose and , and let , then we get a uniform grid. Denote and , and are similar.
We approximate with an upwind scheme as follows:
(16) | ||||
To compute , we give an implicit central difference scheme:
(17) |
It is noteworthy that the iterative process is not always convergent with the algorithm and the finite difference scheme above. We calculate based on the solution totally from the last iteration and it may lead to divergence when the coefficients in the expression of (16) get large. A mixed method should be used to calculate to guarantee convergence.
Let
and define , , , for similarly to . To get , a central difference scheme is still used to approximate as in (17). can be divided into two parts including and . We compute with the same discretization of in (16). In fact, can also be calculated exactly since the expression of is known. In terms of , we still discretize as in (16), but instead of computing with totally from the last iteration, we make the terms on the current grid point in the discretization come from the current iteration step and keep others unchanged from the last step. We present the improved algorithm in Algorithm 2.
To make it clearer, the following numerical scheme is used to get :
(18) | |||
Here, is computed by the following expression but note that from the last iteration step should be used:
(19) | ||||
4. Boundary conditions
Boundary conditions (6)-(9) from [20] have been widely used in both academia and industry. For the conditions imposed at infinity, it is common to use them on a chosen boundary to find the solution and then truncate the domain into a smaller one to guarantee accuracy, which may cause large computational cost.
For the boundary condition in the -direction, we use the original boundary condition for in [20] to give the boundary condition for as is shown in (14) (we denote it as OriginalBC). Besides, we derive another two boundary conditions for based on the artificial boundary methods in [27] which have been proven to be able to improve the accuracy while lower the cost.
We introduce as an artificial boundary. Then with the artificial boundary methods in [27], two artificial boundary conditions on called MApABC1 and MApABC2 can be derived and presented in the same form:
(20) | ||||
In MApABC1,
(21) |
In MApABC2,
(22) |
In addition, we replace the boundary condition (9) for on by the one in [26] for accuracy and then for , the boundary condition should be of the same form:
(23) |
We also choose to restrict the option pricing problem on .
The discrete boundary condition on can be given easily:
(24) |
For OriginalBC, we have
(25) |
For MApABC1 and MApABC2, we have
(26) |
where
For MApABC1, can be calculated approximately with the trapezoidal rule applied to (21) with a discrete the same as (16). Also, for a better algorithm, we are not supposed to calculate in (21) by totally from the last iteration step. Instead, we need to divide into and and use a mixed method for as we have done to the equation before.
For MApABC2, We use a family of curves
where are all parameters to fit with approximated in the same way of (16). When the parameters of the curve are determined, the integral in (22) in the -direction can be easily calculated and a trapezoidal rule is also used in the -direction to obtain . The convergence of the iterative process should be taken into account and dealt with as before.
The boundary conditions in the -direction can be discretized similarly so we ignore the details here.
5. Numerical experiments
In this section, we show the results of some numerical experiments for the option pricing problem. We implement the iterative splitting method in Section 3 with the boundary conditions in Section 4.
Let , we focus on the behaviors of the proposed method using different step sizes. We choose and as the artificial boundary of the computational domain. The 2nd-order asymptotic solution in [27] is used as the reference solution and we compute the relative errors of the numerical results in -norm. As for the stopping condition of the iterative process in the iterative splitting method, we set a limitation of on the -norm of the difference between the ’s calculated in the two adjacent iteration steps.
Table 1 shows the first set of parameters with a large mean reversion rate . The relative errors with respect to the reference solution are presented in Table 2. As the step size gets smaller, the relative error of the solution by the iterative splitting method with MApABC2 decreases and the algorithm achieves almost 1st order convergence. With fixed, we show the numerical solutions and the errors with OriginalBC and MApABC2 on and in Figure 1 and Figure 2 respectively. The numerical solutions and the errors on and are presented in Figure 3 and Figure 4 as well. Compared with OriginalBC, MApABC2 gives much better solutions.
Parameter | |||||
Value | 5 | 0.08 | 0.1 | -0.6 | 2 |
Step size | 0.4 | 0.2 | 0.1 | 0.05 |
---|---|---|---|---|
Iterative splitting-OriginalBC | 0.01051 | 0.01174 | 0.01189 | 0.01201 |
Iterative splitting-MApABC2 | 0.00407 | 0.00143 | 0.00047 | 0.00020 |








The second set of parameters is shown in Table 3. We compare the iterative splitting method proposed in Section 3 with a classic 2-dimensional finite difference method as in [27]. Table 4 shows the relative errors of the solutions corresponding to the two methods and boundary conditions with respect to the reference solution.In this example, the mean reversion rate and the volatility of the variance are both relatively small, so that the dynamic of the volatility should be close to a constant. With the iterative splitting method, the first part of the solution accounts for most of the option price and since we have got the exact solution of , a small step size is enough to give a solution of appreciable accuracy. As is shown in Table 4, the iterative splitting method has a significant advantage over the 2-dimensional finite difference method.
Parameter | |||||
Value | 0.003 | 0.5 | 0.02 | 0.2 | 2 |
Step size | 0.4 | 0.2 | 0.1 | 0.05 |
---|---|---|---|---|
2d finite difference-OriginalBC | 0.04037 | 0.03763 | 0.03653 | 0.03613 |
2d finite difference-MApABC2 | 0.00788 | 0.00281 | 0.00096 | 0.00048 |
Iterative splitting-OriginalBC | 0.00012 | 0.00048 | 0.00025 | 0.00013 |
Iterative splitting-MApABC2 | 0.00011 | 0.00048 | 0.00025 | 0.00013 |
In Table 5, we present the third set of parameters of moderate sizes. We conduct numerical experiments using both the iterative splitting method and the 2-dimensional finite difference method as we mentioned before and show the relative errors in Table 6. The iterative splitting method with MApABC2 gives the most accurate solution, especially when we set the step size to be , the relative error is only .
Parameter | |||||
Value | 3 | 0.2 | 0.06 | -0.3 | 2 |
Step size | 0.4 | 0.2 | 0.1 | 0.05 |
---|---|---|---|---|
2d finite difference-OriginalBC | 0.01842 | 0.01558 | 0.01465 | 0.01424 |
2d finite difference-MApABC2 | 0.00421 | 0.00150 | 0.00070 | 0.00038 |
Iterative splitting-OriginalBC | 0.00746 | 0.00815 | 0.00857 | 0.00878 |
Iterative splitting-MApABC2 | 0.00265 | 0.00084 | 0.00031 | 0.00016 |
Some of the derivatives of the option price with respect to different variables are called Greeks in finance and are of high importance in industry. For example, the first and second derivatives of the option price with respect to the underlying price are called Delta and Gamma, while Vega corresponds to the first derivative with respect to the variance of the underlying. Greeks are good measures of risk and sometimes determine the trading volume so the computational efficiency and accuracy have received wide attention. With fixed, we plot the errors of the option price and Greeks on in Figure 5. The numerical results show that the iterative splitting method with MApABC2 behaves the best in terms of accuracy, and the calculation is simpler and more convenient as well since the iterative splitting method helps to transform a 2-dimensional problem into two quasi 1-dimensional ones.




6. Conclusions
We propose an iterative splitting method to solve the option pricing problem and concentrate on the Heston stochastic volatility model. We introduce the artificial boundary conditions based on the methods from [27]. Numerical study has shown that for the European options, the iterative splitting method can improve the accuracy by contrast with the classic two-dimensional finite difference scheme. Using the artificial boundary condition called MApABC2, the solution and the Greeks are calculated better in terms of the error. The iterative splitting method transformed a two-dimensional PDE into two quasi one-dimensional PDEs with the idea of operator splitting. The convergence of the iteration is ensured by a mixed method. Our new method is easy to interpret, understand and implement. It can also be extended to other models and options, and then the existed methods for the Black-Scholes model can be available, which will be considered in the future.
References
- [1] L. Bachelier, Théorie de la spéculation, in Annales scientifiques de l’École normale supérieure, vol. 17, 1900, pp. 21–86.
- [2] F. Black and M. Scholes, The pricing of options and corporate liabilities, Journal of political economy, 81 (1973), pp. 637–654.
- [3] P. Boyle, M. Broadie, and P. Glasserman, Monte carlo methods for security pricing, Journal of economic dynamics and control, 21 (1997), pp. 1267–1321.
- [4] P. P. Boyle, Options: A monte carlo approach, Journal of financial economics, 4 (1977), pp. 323–338.
- [5] , A lattice framework for option pricing with two state variables, Journal of Financial and Quantitative Analysis, 23 (1988), pp. 1–12.
- [6] M. J. Brennan and E. S. Schwartz, Finite difference methods and jump processes arising in the pricing of contingent claims: A synthesis, Journal of Financial and Quantitative Analysis, 13 (1978), pp. 461–474.
- [7] P. Carr, H. Geman, D. B. Madan, and M. Yor, Stochastic volatility for lévy processes, Mathematical finance, 13 (2003), pp. 345–382.
- [8] P. Carr and D. Madan, Option valuation using the fast fourier transform, Journal of computational finance, 2 (1999), pp. 61–73.
- [9] T. Chan, Pricing contingent claims on stocks driven by lévy processes, Annals of Applied Probability, (1999), pp. 504–528.
- [10] J. C. Cox, S. A. Ross, and M. Rubinstein, Option pricing: A simplified approach, Journal of financial Economics, 7 (1979), pp. 229–263.
- [11] E. Derman and I. Kani, Riding on a smile, Risk, 7 (1994), pp. 32–39.
- [12] D. Duffie, J. Pan, and K. Singleton, Transform analysis and asset pricing for affine jump-diffusions, Econometrica, 68 (2000), pp. 1343–1376.
- [13] B. Dupire et al., Pricing with a smile, Risk, 7 (1994), pp. 18–20.
- [14] F. Fang and C. W. Oosterlee, A novel pricing method for european options based on fourier-cosine series expansions, SIAM Journal on Scientific Computing, 31 (2008), pp. 826–848.
- [15] P. Forsyth, K. Vetzal, and R. Zvan, A finite element approach to the pricing of discrete lookbacks with stochastic volatility, Applied Mathematical Finance, 6 (1999), pp. 87–106.
- [16] S. Foulon et al., Adi finite difference schemes for option pricing in the heston model with correlation, International Journal of Numerical Analysis & Modeling, 7 (2010), pp. 303–320.
- [17] J.-P. Fouque, G. Papanicolaou, and K. R. Sircar, Mean-reverting stochastic volatility, International Journal of theoretical and applied finance, 3 (2000), pp. 101–142.
- [18] H. Geman, D. B. Madan, and M. Yor, Time changes for lévy processes, Mathematical Finance, 11 (2001), pp. 79–96.
- [19] P. S. Hagan, D. Kumar, A. S. Lesniewski, and D. E. Woodward, Managing smile risk, The Best of Wilmott, 1 (2002), pp. 249–296.
- [20] S. L. Heston, A closed-form solution for options with stochastic volatility with applications to bond and currency options, The review of financial studies, 6 (1993), pp. 327–343.
- [21] J. Hull and A. White, The pricing of options on assets with stochastic volatilities, The journal of finance, 42 (1987), pp. 281–300.
- [22] , Valuing derivative securities using the explicit finite difference method, Journal of Financial and Quantitative Analysis, 25 (1990), pp. 87–100.
- [23] S. Ikonen and J. Toivanen, Operator splitting methods for american option pricing, Applied mathematics letters, 17 (2004), pp. 809–814.
- [24] H. Johnson and D. Shanno, Option pricing when the variance is changing, Journal of financial and quantitative analysis, 22 (1987), pp. 143–151.
- [25] S. G. Kou, A jump-diffusion model for option pricing, Management science, 48 (2002), pp. 1086–1101.
- [26] P. Kútik and K. Mikula, Diamond-cell finite volume scheme for the heston model, Discrete and Continuous Dynamical Systems-Series S (DCDS-S) Vol, 8 (2015), pp. 913–931.
- [27] H. Li and Z. Huang, Artificial boundary method for the solution of pricing european options under the heston model, arXiv preprint arXiv:1912.00691, (2019).
- [28] R. C. Merton, Option pricing when underlying stock returns are discontinuous, Journal of financial economics, 3 (1976), pp. 125–144.
- [29] , Applications of option-pricing theory: twenty-five years later, The American Economic Review, 88 (1998), pp. 323–349.
- [30] E. M. Stein and J. C. Stein, Stock price distributions with stochastic volatility: an analytic approach, The review of financial studies, 4 (1991), pp. 727–752.
- [31] J. B. Wiggins, Option values under stochastic volatility: Theory and empirical estimates, Journal of financial economics, 19 (1987), pp. 351–372.
- [32] G. Winkler, T. Apel, and U. Wystup, Valuation of options in heston’s stochastic volatility model using finite element methods, Foreign exchange risk, (2001), pp. 283–303.
- [33] R. Zvan, K. R. Vetzal, and P. A. Forsyth, Pde methods for pricing barrier options, Journal of Economic Dynamics and Control, 24 (2000), pp. 1563–1590.