Efficient Simulation of the Double Heston model Pierre Gauthier ∗, Dylan Possamaï†
‡
First version: July 16, 2009 This version: January 28, 2010
Abstract. Stochastic volatility models have replaced Black-Scholes model since they are able to generate a volatility smile. However, standard models fail to capture the smile slope and level movements. The Double-Heston model provides a more flexible approach to model the stochastic variance. In this paper, we focus on numerical implementation of this model. First, following the works of Lord and Kahl, we correct the analytical call option price formula given by Christoffersen et al. Then, we compare numerically the discretization schemes of Andersen, Zhu and Alfonsi to the Euler scheme.
Keywords: double Heston model, Stochastic Volatility, Equity options, Characteristic function, Discretization scheme JEL Classification: G13 MSC 2000: 60-99, 65C05
∗
[email protected] - Pricing Partners, Paris Cybervillage, 204 Rue de Crimee, 75019 Paris, France - +33155264305 †
[email protected] - Pricing Partners, Paris Cybervillage, 204 Rue de Crimee, 75019 Paris, France ‡
[email protected] - Ecole Polytechnique, Route de Saclay, 91128 Palaiseau, France +33633873888
1
Electronic copy available at: http://ssrn.com/abstract=1434853
1. Introduction Since Black and Scholes introduced their option valuation model, an extensive literature has been devoted to pointing out its limitations. More precisely, two major features of the equity index options market cannot be captured through Black-Scholes model. First of all, there exists a term structure of implied volatilities. As a matter of fact, the constant volatility parameter is not sufficient to model this behavior. Second, observed market prices for both in-the-money and out-the-money options are higher than Black-Scholes prices. This effect is known as the volatility smile: the volatility depends both on the option expiry and the option strike. In order to model the smile efficiently, stochastic volatility models are a popular approach. They enable to have distinct processes for the stock return and its variance. Thus, they may generate volatility smiles. Moreover, if the variance process embeds a mean reversion term, these models can capture the term-structure in the variance dynamics. Popular stochastic volatility models include Heston [17], SABR and square-root models to name but a few. Efficient calibration of stochastic volatility models requires an analytical formula for option prices. For numerous models, including Heston, this is achieved through the Fourier-transform technique described in Carr and Madan [7]. Further refinements have been discussed in Lewis [21] and Lord and Kahl [22]. Numerical simulation may be challenging as convergence speed can be quite low for naive Euler scheme. Therefore, there is a need for more accurate discretization of both stock return and variance processes. Many authors have addressed this issue, including . In [33], van Haastrecht and Pelsser propose an extensive discussion of existing discretization schemes for Heston model. In order to match precisely the market implied volatility surface, it turns out that Heston model does not have enough parameters. Therefore, we may wish to add degrees of freedom (i.e additional parameters) while retaining analytical tractability. Many academicians and practitioners have tackled this challenge by considering time-dependent extensions of the original Heston model. Another direction is to model the variance by a variable of higher dimension. Such a path has been followed by Gouriéroux et al [16] and Da Fonseca et al. [13], who replace the Cox-Ingersoll-Ross variance process by a Wishart process. Their model enables to have a tighter control of the covariance dynamics as it is represented by a matrix of size 𝑛 (2 is enough in practice). In [8], Christoffersen et al. consider a simpler extension, named the Double Heston model, in which they model the variance process by two uncorrelated processes. Thanks to this additional factor, fit quality is much better than with the original Heston model while computing time remains comparable. Empirical studies show that adding a third process does not lead to significant improvements. In this article, we consider the latter stochastic volatility model. Our objective is two-fold. First, we improve the call option formula given in Christoffersen and we derive a formula for digital options. Second, we study convergence speed of Monte-Carlo simulation using different discretization schemes. The paper is structured as follows. First, in Section 2, we recall the model dynamics. In
2
Electronic copy available at: http://ssrn.com/abstract=1434853
Section 3, we give analytical formulas for vanilla and binary options. Some refinements make these formulas slightly better than those given in the original paper by Christoffersen. Then, in Section 5, we adapt the QE-M scheme introduced by Andersen and the schemes introduced by Alfonsi for the Heston model to the Double Heston model. Section 6 briefly reviews control variate technique. Our numerical results are presented in section 7. Section 8 introduces new research directions and Conclusion concludes.
2. Model presentation The model studied here is an extension of the Heston Model [17], described notably in [8]. The variance of the risk neutral, ex-dividend price process is determined by two factors 𝑑𝑆𝑡 = 𝑟𝑑𝑡 + 𝑆𝑡 𝑑𝑉𝑡1
√ √ 1 1 𝑉𝑡 𝑑𝑊𝑡 + 𝑉𝑡2 𝑑𝑊𝑡2
= 𝑏1 (𝜃1 −
𝑉𝑡1 )𝑑𝑡
√ + 𝜎1 𝑉𝑡1 𝑑𝑍𝑡1
𝑑𝑉𝑡2 = 𝑏2 (𝜃2 − 𝑉𝑡2 )𝑑𝑡 + 𝜎2
√ 𝑉𝑡2 𝑑𝑍𝑡2 .
(1) (2) (3)
For the sake of simplicity, we assume the following stochastic structure: 〈 〉 𝑑𝑊 1 , 𝑑𝑍 1 𝑡 〈 〉 𝑑𝑊 2 , 𝑑𝑍 2 𝑡 〈 〉 𝑑𝑊 1 , 𝑑𝑊 2 𝑡 〈 1 〉 𝑑𝑍 , 𝑑𝑍 2 𝑡
= 𝜌1 𝑑𝑡 = 𝜌2 𝑑𝑡 =0 = 0.
In other words, the variance is the sum of two uncorrelated factors that may be individually correlated with stock returns.
3. Option valuation in the Double Heston Model: the characteristic function method Following previous works by Carr, Madan, Lewis and Lee in particular (see [7], [34], [21] or even [31]), it is now well known that the price of a European option can be easily calculated via Fourier integrals, provided that the characteristic function of the log-spot price has a closed form.
3
3.1. The Characteristic Function Just as the standard Heston model, the Double Heston model belongs to the larger class of affine models, for which the computation of the characteristic function is rather straightforward. Let us first note 𝑋𝑡 = log 𝑆𝑡 and: ( ) Ψ(𝑘, 𝑡, 𝑥) = 𝔼 𝑒𝑖𝑘𝑋𝑡 ∣𝑋0 = 𝑥, 𝑉01 = 𝑣01 , 𝑉02 = 𝑣02 . (4) The dynamic of 𝑋𝑡 is given by: ( ) √ √ ) 1( 1 2 1 1 𝑑𝑋𝑡 = 𝑟 − 𝑑𝑡 + 𝑉𝑡 𝑑𝑊𝑡 + 𝑉𝑡2 𝑑𝑊𝑡2 . 𝑉 + 𝑉𝑡 2 𝑡
(5)
According to the Feynman-Kac theorem, we know that the function Ψ is the solution of the following PDE: ⎧ ∂𝑓 = ℒ𝑋,𝑉 1 ,𝑉 2 𝑓 ⎨ ∂𝑡 ⎩
𝑓 (𝑘, 0, 𝑥) = 𝑒𝑖𝑘𝑥 ,
where ℒ𝑋,𝑉 1 ,𝑉 2 is the infinitesimal generator of the diffusion of the process (𝑋, 𝑉 1 , 𝑉 2 ). Thanks to It¯o calculus, it is quite easy to find out that for every ℝ+ × ℝ3 valued function 𝑓 (𝑥, 𝑣1 , 𝑣2 ) two times differentiable, we have: 1 ∂2𝑓 1 ∂2𝑓 ∂2𝑓 ∂2𝑓 1 ∂2𝑓 ℒ𝑋,𝑉 1 ,𝑉 2 𝑓 = (𝑣1 + 𝑣2 ) 2 + 𝜎12 𝑣1 2 + 𝜎22 𝑣2 2 + 𝜌1 𝜎1 𝑣1 + 𝜌2 𝜎2 𝑣2 2 ∂𝑥 2 2 ∂𝑥∂𝑣1 ∂𝑥∂𝑣2 ∂𝑣1 ∂𝑣2 1 ∂𝑓 ∂𝑓 ∂𝑓 − (𝑣1 + 𝑣2 ) + 𝑏1 (𝜃1 − 𝑣1 ) + 𝑏2 (𝜃2 − 𝑣2 ) . 2 ∂𝑥 ∂𝑣1 ∂𝑣2
(6)
Given that the model here is affine, we know (see Duffie [10] ) that the function Ψ has the following form 1
2
Ψ(𝑘, 𝑡, 𝑥) = 𝑒𝑖𝑘𝑥+𝐴(𝑘,𝑡)+𝐵1 (𝑘,𝑡)𝑣0 +𝐵2 (𝑘,𝑡)𝑣0 ,
(7)
with 𝐴(𝑘, 0) = 𝐵1 (𝑘, 0) = 𝐵2 (𝑘, 0) = 0 Then replacing (7) in (6) and identifying the terms containing 𝑣1 and 𝑣2 , we obtain the
4
following system of ODEs: ⎧ 𝑑𝐵1 = 12 𝜎12 𝐵12 − (𝑏1 − 𝑖𝑘𝜌1 𝜎1 )𝐵1 − 𝑘2 (𝑘 + 𝑖) 𝑑𝑡 ⎨ 𝑑𝐵2 = 12 𝜎22 𝐵22 − (𝑏2 − 𝑖𝑘𝜌2 𝜎2 )𝐵2 − 𝑘2 (𝑘 + 𝑖) 𝑑𝑡 ⎩ 𝑑𝐴 = 𝑏1 𝜃1 𝐵1 + 𝑏2 𝜃2 𝐵2 . 𝑑𝑡 The first two are one-dimensional Ricatti equations, and the third one only requires a straightforward integration. The solutions are given by: ⎧ 𝐴(𝑘, 𝑡) ⎨
=
+ ⎩ 𝐵𝑗 (𝑘, 𝑡) =
)) ( ( 1 − 𝐺1 𝑒−𝑑1 𝑡 𝑏1 𝜃1 (𝑏1 − 𝜌1 𝜎1 𝑘𝑖 − 𝑑1 ) 𝑡 − 2 log 1 − 𝐺1 𝜎12 ( ( )) 𝑏2 𝜃2 1 − 𝐺2 𝑒−𝑑2 𝑡 (𝑏2 − 𝜌2 𝜎2 𝑘𝑖 − 𝑑2 ) 𝑡 − 2 log 1 − 𝐺2 𝜎22 𝑏𝑗 − 𝜌𝑗 𝜎𝑗 𝑘𝑖 − 𝑑𝑗 1 − 𝑒−𝑑𝑗 𝑡 for 𝑗 = 1, 2, 𝜎𝑗2 1 − 𝐺𝑗 𝑒−𝑑𝑗 𝑡
where ⎧ 𝑑𝑗 ⎨
=
√ (𝑏𝑗 − 𝜌𝑗 𝜎𝑗 𝑘𝑖)2 + 𝜎𝑗2 𝑘(𝑘 + 𝑖)
⎩ 𝐺𝑗
=
𝑏𝑗 − 𝜌𝑗 𝜎𝑗 𝑘𝑖 − 𝑑𝑗 . 𝑏𝑗 − 𝜌𝑗 𝜎𝑗 𝑘𝑖 + 𝑑𝑗
Note that in the definition of 𝐴(𝑘, 𝑡), some continuity problems could arise, due to the presence of complex logarithms. Nonetheless, in an article by Lord and Kahl [22], it has been proven that with the formulation chosen here (which is different from the original formulation of Heston), the characteristic function remained continuous when one chose the principal branch of the complex logarithm. Therefore, there was no need for us to use the so called "rotation count algorithm" proposed by Kahl and Jäckel in [19].
3.2. The Call Option Price We know, following Lewis and Lee ([34] and [21]), that the price of a call option of strike 𝐾 and maturity 𝑇 is given by: 𝑟𝑇 1√ 𝐶(𝐾, 𝑇 ) = 𝑆0 − 𝑆0 𝐾𝑒− 2 𝜋
∫ 0
5
∞
[ ( )] 𝑑𝑢 𝑖 𝑖𝑢𝑘 ℛ𝑒 𝑒 Ψ 𝑢 − , 2 𝑢2 + 14
(8)
where 𝑘 = 𝑟𝑇 − log 𝐾 Given that we have obtained a closed-form formula for the characteristic function involved in the integration, the only thing remaining in order to numerically evaluate the option price is to compute the integral. Instead of using FFT algorithms proposed by authors like Lewis and Lee, we chose to use the Gauss-Legendre quadrature method developed notably by Abbot in [1], which proves to be faster. Our formula is different from that proposed by Christoffersen et al. [8]. Readers which are familiar with the characteristic function method are already aware of this recurrent issue. The original call formula requires two numerical integrations while ours, which is exactly that of Lewis [21], involves only one. Thus, we gain not only on computational time but also on numerical precision.
3.3. The Digital Call Option Price In order to illustrate even more how easily the framework of the Double Heston model allows us to compute efficiently European vanilla options, we derive here the price of a digital Call Option. Given that the formula does not seem to be often quoted in the literature, we will also give a rough sketch of its proof. We start from the fundamental pricing formula which can be found in [21] or [34], that is to say that the price of a European option with payoff 𝑤(𝑥) (as a function of the process of interest, in our case the log-price) and maturity T is:
𝑓 (𝑆, 𝑇 ) =
𝑒−𝑟𝑡 2𝜋
∫
𝑖𝜈+∞
𝑖𝜈−∞
𝑒−𝑖𝑧𝑌 Ψ(−𝑧)𝑤(𝑧)𝑑𝑧, ˆ
(9)
where 𝑌 = 𝑟𝑇 , 𝑣 = 𝐼𝑚(𝑧), 𝑤 ˆ is the generalized Fourier Transform of the payoff and Ψ the characteristic function of the L´ 𝑒vy process of interest in the model (in our case the log-price), and of course provided that the quantities above all exist. Then, the generalized Fourier Transform of the payoff of a Digital Call option with strike 𝐾 is given formally by: ∫ 𝑤(𝑧) ˆ =
+∞
−∞
∫
𝑒𝑖𝑧𝑥 1𝑒𝑥 ≥𝐾 𝑑𝑥
+∞
𝑒𝑖𝑧𝑥 𝑑𝑥
= log(𝐾)
= −
𝐾 𝑖𝑧 . 𝑖𝑧
6
Of course for the formula above to be correct, the imaginary part of the complex 𝑧 has to remain in the domain 𝑆𝑤 = {𝑧 ∈ ℂ; 𝐼𝑚(𝑧) > 0}. Then replacing (10) in (9) and setting 𝜈 = 21 (to stay close to the Call formula of the previous section, but any value strictly positive would do) we get: 𝑒−𝑟𝑇 𝐷𝐶(𝑇, 𝐾) = − 2𝜋
∫
𝑖 +∞ 2 𝑖 −∞ 2
𝑒−𝑖𝑧𝑘
Ψ(−𝑧) 𝑑𝑧, 𝑖𝑧
(10)
where 𝑘 = 𝑟𝑇 − log 𝐾 Given that our integrand has only a simple pole in 0, we can use the residue theorem to change the contour of integration in order to get: 𝑟𝑇
𝑒− 2 1 √ 𝐷𝐶(𝑇, 𝐾) = 2𝜋 𝐾
∫
+∞
𝑒
−𝑖𝑘𝑥
−∞
) ) ( ( 𝑖 𝑖 𝑥 − 2𝑖 Ψ −𝑥 − 𝑑𝑥. 2 𝑥2 + 41
(11)
We can then finally take the real part of the expression in order to prevent the numerical approximations when computing the integral from rendering the quantity above complex, to finally get: 𝑟𝑇
𝑒− 2 1 √ 𝐷𝐶(𝑇, 𝐾) = 2𝜋 𝐾
∫
+∞
( −𝑖𝑘𝑥
𝑅𝑒 𝑒 −∞
)) ( ) ( 𝑖 𝑖 𝑥 − 2𝑖 Ψ −𝑥 − 𝑑𝑥. 2 𝑥2 + 14
(12)
4. Improving the closed formula: the control variate method 4.1. The Call Option Case When we consider options which are deep-in-the-money, the vega is usually very small. Therefore it is necessary to have a very efficient pricing formula, if one wants to be able to calibrate the model to the market. For those extreme strikes, the current pricing formula does not allow to calibrate to the market implied volatility, since it calculates the option price in the money with a too large error. Therefore, we tried to improve it by using a control variate. The idea here is to use the option price when the two volatility factors are deterministic (i.e 𝜎1 = 𝜎2 = 0). In this case we’re in a simple Black-Scholes framework, and the price of the option can be computed as: ˜ 𝐶(𝐾, 𝑇 ) = 𝑆0 𝒩 (𝛿1 ) − 𝐾𝑒−𝑟𝑇 𝒩 (𝛿0 ), where
7
(13)
) ( 1 √ 1 𝑆0 √ − 𝛿0 = log 𝜎𝑇 𝑇 𝐾𝑒−𝑟𝑇 2 𝜎𝑇 𝑇 √ 𝛿 1 = 𝛿 0 + 𝜎𝑇 𝑇 √ 𝜎𝑇 =
1 𝑇
∫
𝑇
(
0
) 𝑉𝑡1 + 𝑉𝑡2 𝑑𝑡
√ =
(14)
𝜃 1 + 𝜃2 +
𝑉01 − 𝜃1 𝑉 2 − 𝜃2 (1 − 𝑒−𝑏1 𝑇 ) + 0 (1 − 𝑒−𝑏2 𝑇 ). 𝑏1 𝑇 𝑏2 𝑇
Besides, we can apply the characteristic option formula. Putting 𝜎1 = 𝜎2 = 0 in (6) we ˜ 𝑡, 𝑥) in this case: obtain the following PDE for the characteristic function Ψ(𝑘, ∂2𝑓 1 ∂𝑓 ∂𝑓 ∂𝑓 ∂𝑓 1 (𝑣1 + 𝑣2 ) 2 − (𝑣1 + 𝑣2 ) + 𝑏1 (𝜃1 − 𝑣1 ) + 𝑏2 (𝜃2 − 𝑣2 ) − = 0. 2 ∂𝑥 2 ∂𝑥 ∂𝑣1 ∂𝑣2 ∂𝑡
(15)
Then we assume again that ˜2 (𝑘,𝑡)𝑣 2 ˜ ˜1 (𝑘,𝑡)𝑣 1 +𝐵 𝐵 ˜ 𝑡, 𝑥) = 𝑒𝑖𝑘𝑥+𝐴(𝑘,𝑡)+ 0. 0 Ψ(𝑘,
(16)
Then putting (16) in (15) we obtain the three following ODEs: ⎧ ˜1 𝑑𝐵 𝑑𝑡 ⎨ ˜ 𝑑𝐵2 𝑑𝑡 ˜ ⎩ 𝑑𝐴 𝑑𝑡
˜1 − 𝑘 (𝑘 + 𝑖) = −(𝑏1 − 𝑖𝑘𝜌1 𝜎1 )𝐵 2 ˜2 − 𝑘 (𝑘 + 𝑖) = −(𝑏2 − 𝑖𝑘𝜌2 𝜎2 )𝐵 2
˜1 + 𝑏2 𝜃2 𝐵 ˜2 . = 𝑏1 𝜃1 𝐵
Their resolution is trivial and leads to:
( ) ) 𝜃 ( ) 𝑘(𝑖 + 𝑘) 𝜃1 ( 2 1 − 𝑒−𝑏1 𝑡 + 1 − 𝑒−𝑏2 𝑡 − (𝜃1 + 𝜃2 )𝑡 2 𝑏1 𝑏2 ( ) ˜𝑗 (𝑘, 𝑡) = − 𝑘(𝑖 + 𝑘) 1 − 𝑒−𝑏𝑗 𝑡 for 𝑗 = 1, 2. ⎩ 𝐵 2𝑏𝑗 ⎧ ˜ 𝑡) ⎨ 𝐴(𝑘,
=
8
(17)
Therefore, the price of the option in this deterministic case can also be given by: 𝑟𝑇 1√ ˜ 𝐶(𝐾, 𝑇 ) = 𝑆0 − 𝑆0 𝐾𝑒− 2 𝜋
∫ 0
∞
[ ( )] 𝑑𝑢 𝑖 𝑖𝑢𝑘 ˜ ℛ𝑒 𝑒 Ψ 𝑢 − . 2 2 𝑢 + 14
(18)
Thus we have a new formulation for the call option price in the Double Heston Model, using control variate:
−𝑟𝑇
𝐶(𝐾, 𝑇 ) = 𝑆0 𝒩 (𝛿1 )−𝐾𝑒
𝑟𝑇 1√ 𝒩 (𝛿0 )− 𝑆0 𝐾𝑒− 2 𝜋
∞
∫ 0
[ ( )] 𝑑𝑢 ˜ ℛ𝑒 𝑒𝑖𝑢𝑘 Ψ − Ψ . (19) 𝑢 + 2𝑖
˜ in the integral reduces the integrand, preventing the numerical evalThe presence of Ψ uation with the Gauss-Legendre quadrature method to create large errors with extreme strikes.
4.2. The Digital Call Option Case The ideas here are the same as the previous section, that is to say that we use the option price in the case of deterministic volatilities as a variable control. In that case the digital Call Option price is also given by a Black-Scholes type formula 𝐷𝐶(𝑇, 𝐾) = 𝑒−𝑟𝑇 𝒩 (𝛿0 ),
(20)
and therefore we have yet another expression for the price of the digital Call option using control variate: 𝑟𝑇
−𝑟𝑇
𝐷𝐶(𝑇, 𝐾) = 𝑒
𝑒− 2 1 √ 𝒩 (𝛿0 )+ 2𝜋 𝐾
∫
[
+∞
−𝑖𝑘𝑥
ℛ𝑒 𝑒 −∞
(
)] ) ( )( 𝑖 𝑖 𝑥 − 2𝑖 ˜ Ψ − Ψ −𝑥 − 𝑑𝑥, 2 𝑥2 + 14
˜ is still the characteristic function of the log-price in the case of deterministic where Ψ variances.
5. Efficient discretization 5.1. The Price Process 5.1.1. The predictor-corrector scheme Rather than diffusing the logarithm of the ( spot)ln 𝑆𝑡 , it may be interesting to consider the logarithm of the discounted spot log 𝑒−𝑟𝑡 𝑆𝑡 . By applying It¯o’s formula, we remark
9
that the 𝑟𝑑𝑡 terms cancel out. For the discounted asset price, we choose to apply the Predictor-Corrector scheme. This discretization scheme is known to provide better results than the Euler scheme at a low additional effort. The idea is to start from an exact expression of the logarithm of the discounted price (which can be found in [6] for example). By It¯o’s formula we have: ( ( )) 𝑑𝑆𝑡 1 𝑑 log 𝑒−𝑟𝑡 𝑆𝑡 = −𝑟𝑑𝑡 + − ⟨𝑑𝑆, 𝑑𝑆⟩𝑡 𝑆𝑡 2𝑆𝑡2 √ √ 𝑉 1 + 𝑉𝑡2 𝑑𝑡 + 𝑉𝑡1 𝑑𝑊𝑡1 + 𝑉𝑡2 𝑑𝑊𝑡2 . =− 𝑡 2 Then a simple integration on an interval [𝑡, 𝑡 + Δ𝑡] leads to:
(
−𝑟(𝑡+Δ𝑡)
log 𝑒
)
(
𝑆𝑡+Δ𝑡 = log 𝑒
−𝑟𝑡
) 1 𝑆𝑡 − 2
∫
𝑡+Δ𝑡 (
𝑉𝑠1
+
𝑉𝑠2
∫ 𝑑𝑠+
)
𝑡
𝑡+Δ𝑡 √
𝑉𝑠1 𝑑𝑊𝑠1 +
√ 𝑉𝑠2 𝑑𝑊𝑠2 .
𝑡
Then we introduce the correlations between the spot and the variances processes by rewriting the Brownian motions: ⎧ √ ˜𝑡1 ⎨ 𝑊𝑡1 = 𝜌1 𝑍𝑡1 + 1 − 𝜌21 𝑊 √ ⎩ 𝑊 2 = 𝜌2 𝑍 2 + 1 − 𝜌2 𝑊 ˜2 𝑡 𝑡 2 𝑡 ,
(21)
˜ 1 and 𝑊 ˜ 2 are Brownian motions independent of 𝑊 1 and 𝑊 2 respectively. where 𝑊
Therefore we finally have:
(
log 𝑒
−𝑟(𝑡+Δ𝑡)
)
(
−𝑟𝑡
𝑆𝑡+Δ𝑡 = log 𝑒 ∫ +
𝑡+Δ𝑡
𝑆𝑡
)
1 − 2
∫
+ 𝑡
𝑉𝑠1 + 𝑉𝑠2 𝑑𝑠
𝑡
∫ √ 1 1 𝜌1 𝑉𝑠 𝑑𝑍𝑠 +
𝑡
∫
𝑡+Δ𝑡
𝑡+Δ𝑡
𝜌2
√ 𝑉𝑠2 𝑑𝑍𝑠2
𝑡 𝑡+Δ𝑡 √
1 − 𝜌21
∫ √ ˜1 + 𝑉𝑠1 𝑑𝑊 𝑠 𝑡
Then we integrate the SDEs for the variance processes:
10
𝑡+Δ𝑡 √
1 − 𝜌22
√ ˜2. 𝑉𝑠2 𝑑𝑊 𝑠
(22)
1 𝑉𝑡+Δ𝑡
=
𝑉𝑡1
∫
𝑡+Δ𝑡
(
𝑏1 𝜃1 −
+
𝑉𝑠1
)
∫ 𝑑𝑠 + 𝜎1
∫
𝑉𝑠1 𝑑𝑍𝑠1
𝑡
𝑡 2 𝑉𝑡+Δ𝑡 = 𝑉𝑡2 +
𝑡+Δ𝑡 √
𝑡+Δ𝑡
( ) 𝑏2 𝜃2 − 𝑉𝑠2 𝑑𝑠 + 𝜎2
∫
𝑡+Δ𝑡 √
𝑉𝑠2 𝑑𝑍𝑠2 .
𝑡
𝑡
Equivalently, and in order to eliminate some of the stochastic integrals in (22), we have: ∫
𝑡+Δ𝑡 √
𝑉𝑠1 𝑑𝑍𝑠1
𝑡
∫
𝑡+Δ𝑡 √
𝑉𝑠2 𝑑𝑍𝑠2
𝑡
1 = 𝜎1
(
1 = 𝜎1
(
1 𝑉𝑡+Δ𝑡
−
𝑉𝑡1
∫
𝑡+Δ𝑡
𝑉𝑠1 𝑑𝑠
− 𝑏1 𝜃1 Δ𝑡 + 𝑏1
)
𝑡 2 𝑉𝑡+Δ𝑡
−
𝑉𝑡2
∫
𝑡+Δ𝑡
𝑉𝑠2 𝑑𝑠
− 𝑏2 𝜃2 Δ𝑡 + 𝑏2
) .
𝑡
In the end we get the following exact representation of the logarithm of the discounted price: ( log
𝑒−𝑟(𝑡+Δ𝑡) 𝑆𝑡+Δ𝑡 𝑒−𝑟𝑡 𝑆𝑡
) =
) 𝜌2 ( 2 ) 𝜌1 ( 1 𝑉𝑡+Δ𝑡 − 𝑉𝑡1 − 𝑏1 𝜃1 Δ𝑡 + 𝑉𝑡+Δ𝑡 − 𝑉𝑡2 − 𝑏2 𝜃2 Δ𝑡 𝜎1 𝜎2 (
+
+
𝑏1 𝜌1 1 − 𝜎1 2
∫ √ 1 − 𝜌21
)∫
𝑡+Δ𝑡
𝑉𝑠1 𝑑𝑠
𝑡 𝑡+Δ𝑡 √
( +
𝑏2 𝜌2 1 − 𝜎2 2
˜ 1 𝑑𝑠 + 𝑉𝑠1 𝑑𝑊 𝑠
𝑡
)∫
𝑡+Δ𝑡
𝑉𝑠2 𝑑𝑠
𝑡
∫ √ 1 − 𝜌22
𝑡+Δ𝑡 √
˜ 2 𝑑𝑠. 𝑉𝑠2 𝑑𝑊 𝑠
𝑡
We now have to approximate the integrals in the above formula. The idea of the predictor corrector scheme (see [3]) is first to handle the time integral in a centered manner, that is to say: ∫ 𝑡
𝑡+Δ𝑡
𝑉𝑠𝑗 𝑑𝑠 ≈
) Δ𝑡 ( 𝑗 𝑉𝑡+Δ𝑡 + 𝑉𝑡𝑗 for 𝑗 = 1, 2. 2
(23)
˜ 1 is independent of 𝑉 1 and 𝑊 ˜ 2 is independent of 𝑉 2 , the stochastic Then, given that 𝑊 1 2 ˜ and 𝑊 ˜ in the formula above are (conditionally) Gaussian integrals with respect to 𝑊 ∫ 𝑡+Δ𝑡 1 ∫ 𝑡+Δ𝑡 2 with zero mean and variance 𝑡 𝑉𝑠 𝑑𝑠 and 𝑡 𝑉𝑠 𝑑𝑠, which can be approximated as previously.
11
Finally, the scheme for the log-price can be written as: ) ( 1 2 + 𝐾22 𝑉ˆ𝑡+Δ𝑡 log 𝑒−𝑟(𝑡+Δ𝑡) 𝑆ˆ𝑡+Δ𝑡 = log(𝑒−𝑟𝑡 𝑆ˆ𝑡 ) + 𝐾01 + 𝐾02 + 𝐾11 𝑉ˆ𝑡1 + 𝐾12 𝑉ˆ𝑡2 + 𝐾21 𝑉ˆ𝑡+Δ𝑡 √ +
𝐾31
(
√ ( ) ) 1 1 2 ˆ ˆ 𝑉𝑡 + 𝑉𝑡+Δ𝑡 𝐵1 + 𝐾32 𝑉ˆ𝑡2 + 𝑉ˆ𝑡+Δ𝑡 𝐵2 ,
(24)
where ⎧ 𝜌𝑗 𝑏𝑗 𝜃𝑗 Δ𝑡 𝐾0𝑗 = − 𝜎𝑗 ( ) Δ𝑡 𝑏𝑗 𝜌𝑗 1 ⎨ 𝐾1𝑗 = − − 2 ( 𝜎𝑗 2) Δ𝑡 𝑏𝑗 𝜌𝑗 1 𝑗 𝐾 = − + 2 2 𝜎𝑗 2 ⎩ 𝐾 𝑗 = Δ𝑡 (1 − 𝜌2 ) , 𝑗 3 2
𝜌𝑗 𝜎𝑗 𝜌𝑗 𝜎𝑗
for 𝑗 = 1, 2 and where 𝐵1 and 𝐵2 are standard Gaussian random variables independent and independent of 𝑉ˆ 1 and 𝑉ˆ 2 5.1.2. Martingale Correction As noted by Andersen in [3] and Andersen and Piterbarg in [4] the discretized scheme for the discounted price may not always be arbitrage free. That is to say that even though the continuous-time process of discounted price is a martingale, the scheme defined by (24) is not. Even though the practical relevance of this is often minor, it is interesting in our double Heston framework to see how the results of Andersen may be generalized. Therefore, let us examine whether it is possible to modify the scheme (24) to enforce that [ ] 𝔼 𝑒−𝑟Δ𝑡 𝑆ˆ𝑡+Δ𝑡 ∣𝑆ˆ𝑡 = 𝑆ˆ𝑡 .
(25)
By iterated conditional expectations and by taking the exponential in (24), we have:
12
]] ] [ [ [ 1 2 , 𝑉ˆ𝑡+Δ𝑡 𝔼 𝑒−𝑟Δ𝑡 𝑆ˆ𝑡+Δ𝑡 ∣𝑆ˆ𝑡 = 𝔼 𝔼 𝑒−𝑟Δ𝑡 𝑆ˆ𝑡+Δ𝑡 ∣𝑆ˆ𝑡 , 𝑉ˆ𝑡+Δ𝑡 [ 1 ˆ1 2 ˆ2 2 ˆ2 1 ˆ1 2 1 = 𝑆ˆ𝑡 𝑒𝐾0 +𝐾0 +𝐾1 𝑉𝑡 +𝐾1 𝑉𝑡 𝔼 𝑒𝐾2 𝑉𝑡+Δ𝑡 +𝐾2 𝑉𝑡+Δ𝑡 × [ √ ]] √ 2 𝐾 1 𝑉ˆ 1 +𝑉ˆ 1 𝐵 + 𝐾32 (𝑉ˆ𝑡2 +𝑉ˆ𝑡+Δ𝑡 )𝐵2 ∣𝑆ˆ , 𝑉ˆ 1 , 𝑉ˆ 2 𝔼 𝑒 3 ( 𝑡 𝑡+Δ𝑡 ) 1 𝑡 𝑡+Δ𝑡 𝑡+Δ𝑡 2 1 2 ˆ2 1 2 1 1 1 ˆ1 = 𝑆ˆ𝑡 𝑒𝐾0 +𝐾0 +(𝐾1 + 2 𝐾3 )𝑉𝑡 +(𝐾1 + 2 𝐾3 )𝑉𝑡 ×
[ ] [ ] ˆ1 ˆ2 𝔼 𝑒𝐴1 𝑉𝑡+Δ𝑡 ∣𝑉ˆ𝑡1 𝔼 𝑒𝐴2 𝑉𝑡+Δ𝑡 ∣𝑉ˆ𝑡2 , where 𝐴𝑗 = 𝐾2𝑗 + 21 𝐾3𝑗 for 𝑗 = 1, 2. [ ] ˆ𝑗 Let us then note 𝑀𝑗 = 𝔼 𝑒𝐴𝑗 𝑉𝑡+Δ𝑡 ∣𝑉ˆ𝑡𝑗 . ˜ 1 and 𝐾 ˜ 2 so that If we were to modify the scheme (24) by replacing 𝐾01 and 𝐾02 with 𝐾 0 0 we have: ˜1
˜2
1
1
1
ˆ1
2
1
2
ˆ2
𝑒𝐾0 +𝐾0 +(𝐾1 + 2 𝐾3 )𝑉𝑡 +(𝐾1 + 2 𝐾3 )𝑉𝑡 𝑀1 𝑀2 = 1,
(26)
then the martingale condition would be clearly verified. In order to do so we may for example take: ˜𝑗 𝐾 0
) ( 1 𝑗 ˆ𝑗 𝑗 = − log 𝑀𝑗 − 𝐾1 + 𝐾3 𝑉𝑡 for 𝑗 = 1, 2. 2
(27)
Of course, for everything we just said to be meaningful, the quantities 𝑀1 and 𝑀2 have to be finite. In most of the variance discretization schemes that we will look at in the following sections, the variance remains positive (only the "full truncation" Euler scheme does not verify this property), it is clear in those cases that if 𝐴𝑗 ≤ 0 then 𝑀𝑗 < +∞, since the quantity which expectation is taken is bounded by 0 and 1. Fortunately, it is easy to show that, as a function of 𝜌𝑗 , 𝐴𝑗 is increasing on the interval [−1, 0] and is equal to −Δ𝑡/4 on 0. Therefore, if we assume negative correlations between the stock price and the variance processes (which is almost always verified in practice), the martingale correction can always be done. However, in the case of positive correlation, we will have to further study the discretization scheme chosen for the variance
13
5.2. The Variance Processes 5.2.1. Full Truncation Euler Scheme For the variance processes, the first option is to use a slightly modified naive Euler scheme. The most naive discretization scheme here would be to write: √ ( ) √ 𝑗 𝑉ˆ𝑡+Δ𝑡 = 𝑉ˆ𝑡𝑗 + 𝑏𝑗 𝜃𝑗 − 𝑉ˆ𝑡𝑗 Δ𝑡 + 𝜎𝑗 𝑉ˆ𝑡𝑗 𝐺𝑗 Δ𝑡, (28) for 𝑗 = 1, 2 and where the 𝐺𝑗 are standard Gaussian random variables independent and independent of 𝐵1 and 𝐵2 defined in the previous section. The fatal flaw of these schemes is that under the condition 2𝑏𝑗 𝜃𝑗 < 𝜎𝑗2 (which is almost always verified in practical situations), the process 𝑉𝑗 can attain the origin with a strictly positive probability (see e.g. [9] and [11]). Therefore the discrete process defined above can become negative with non-zero probability, which would then cause the scheme to fail. In order to solve this problem, several fixes have been proposed in the literature (see [23] for a comprehensive review), and the one which seems to produce the smallest bias is known as the "full truncation" scheme. The idea behind is to allow the process to become negative, but to compensate it by making it deterministic at the same time. It can be written as: √( ) ( ( )+ ) √ + 𝑗 𝑗 𝑗 Δ𝑡 + 𝜎𝑗 𝑉ˆ = 𝑉ˆ + 𝑏𝑗 𝜃𝑗 − 𝑉ˆ 𝑉ˆ 𝑗 𝐺𝑗 Δ𝑡. (29) 𝑡
𝑡
𝑡+Δ𝑡
𝑡
5.2.2. Zhu scheme √ Derivation of the Scheme In [35], Zhu proposes to diffuse the volatility = 𝑉𝑡𝑗 instead of the variance. After application of It¯o’s lemma (although in this particular case it cannot exactly be applied, we will go back to this issue later), one finds that the volatility processes evolve according to: 𝑣𝑡𝑗
𝑏𝑗 𝑑𝑣𝑡𝑗 = 2
[(
𝜎𝑗2 𝜃𝑗 − 4𝑏𝑗
)
1 𝑣𝑡𝑗
]
1 − 𝑣𝑡𝑗 𝑑𝑡 + 𝜎𝑗 𝑑𝑍𝑡𝑗 2
[ ] = 𝜅𝑗 𝜆𝑗 − 𝑣𝑡𝑗 𝑑𝑡 + 𝜖𝑗 𝑑𝑍𝑡𝑗 ,
(30)
(31)
with evident notations. This would be a standard Ornstein-Uhlenbeck if the mean-reverting parameters 𝜆𝑗 were constant. Zhu’s idea is to approximate the volatility by a true Ornstein-Uhlenbeck process that has the same first two moments. Let us note such a process as 𝑋𝑡𝑗 , which dynamic is given by:
14
[ ] ˆ𝑗 (𝑡) − 𝑋 𝑗 𝑑𝑡 + 𝜖𝑗 𝑑𝑍 𝑗 𝑑𝑋𝑡𝑗 = 𝜅𝑗 𝜆 𝑡 𝑡 𝑋0𝑗 = 𝑣0𝑗 ,
ˆ𝑗 (𝑡) is piecewise constant on the discretization grid chosen. That is to say that where 𝜆 { } if we note the discretization grid 𝑡𝑘 = 𝑘𝑇 𝑁 ; 𝑘 = 0..𝑁 , we have:
ˆ𝑗 (𝑡) = 𝜆
𝑁 −1 ∑
ˆ𝑘 1𝑡 ≤𝑡𝜋(Δ𝑡,𝑉ˆ𝑡 ) , 𝑉ˆ𝑡+Δ𝑡 = 1𝑈 ≤𝜋(Δ𝑡,𝑉ˆ𝑡 ) 2𝜋(Δ𝑡, 𝑉ˆ𝑡 ) 2(1 − 𝜋(Δ𝑡, 𝑉ˆ𝑡 ))
(69)
is a second order discretization scheme for the CIR process when 𝑉ˆ𝑡 < 𝐾2 (Δ𝑡). Finally, in order to use this scheme, it suffices, at each step of the discretization, to use one of the two previous propositions, depending on the value of 𝑉ˆ𝑡 with respect to 𝐾2 (Δ𝑡). Its use in the framework of the Double Heston model is then clear, since the two volatility processes are not correlated, and therefore each can be simulated thanks to the above method. 5.2.6. Derivation of the Third Order Scheme The main ideas in this case are the same as with the second order scheme. However the calculations are more tedious and the scheme is a lot more complicated. Therefore, we will only give the scheme itself without further explanations, and we urge the interested readers to check the details for themselves in [2], which lecture is very rewarding. Proposition 7. Let 𝜖 and 𝜁 be respectively independent uniform random variables on {−1, 1} and {1, 2, 3}, let 𝑍 be a discrete random variable so that ( ) ( ) √ √ √ √ √ 6−2 ℙ 𝑍 = 3+ 6 =ℙ 𝑍 =− 3+ 6 = √ 4 6 √ ( ) ( ) √ √ √ √ 1 6−2 ℙ 𝑍 = 3− 6 =ℙ 𝑍 =− 3− 6 = − √ , 2 4 6 and define ⎡
⎛√
𝐾3 (Δ𝑡) = Ψ−𝑏 (Δ𝑡) ⎣1 4𝑏𝜃 4𝑏𝜃 𝜑0 ∘ 𝜑1 ∘ 𝜑2 (𝑉ˆ𝑡 )
+1𝜁=2
(
1𝜎2 ≤4𝑏𝜃 𝜑1 ∘ 𝜑2 ∘ 𝜑0 (𝑉ˆ𝑡 ) + 1𝜎2 >4𝑏𝜃 𝜑0 ∘ 𝜑2 ∘ 𝜑1 (𝑉ˆ𝑡 )
)
+1𝜁=3
(
1𝜎2 ≤4𝑏𝜃 𝜑2 ∘ 𝜑1 ∘ 𝜑0 (𝑉ˆ𝑡 ) + 1𝜎2 >4𝑏𝜃 𝜑2 ∘ 𝜑0 ∘ 𝜑1 (𝑉ˆ𝑡 )
)]
,
is a third order scheme for the CIR process when 𝑉ˆ𝑡 ≥ 𝐾3 (Δ𝑡). The idea to find a third order scheme for the CIR process when we are in the neighborhood of zero is the same as with the second order scheme. We approximate the (conditional) CIR process by a discrete random variable which can only take two values and matches the first three moments. The calculations are longer but lead eventually to the following proposition (see [2] for a proof) Proposition 8. Let 𝑈 ∼ 𝒰[0, 1] (independent of 𝑌 , 𝜖 and 𝜁 of the previous proposition), and define
𝑠(Δ𝑡, 𝑉ˆ𝑡 ) =
𝑢3 (Δ𝑡, 𝑉ˆ𝑡 ) − 𝑢1 (Δ𝑡, 𝑉ˆ𝑡 )𝑢2 (Δ𝑡, 𝑉ˆ𝑡 ) 𝑢2 (Δ𝑡, 𝑉ˆ𝑡 ) − 𝑢2 (Δ𝑡, 𝑉ˆ𝑡 ) 1
𝑝(Δ𝑡, 𝑉ˆ𝑡 ) =
𝑢1 (Δ𝑡, 𝑉ˆ𝑡 )𝑢3 (Δ𝑡, 𝑉ˆ𝑡 ) − 𝑢22 (Δ𝑡, 𝑉ˆ𝑡 ) 𝑢2 (Δ𝑡, 𝑉ˆ𝑡 ) − 𝑢2 (Δ𝑡, 𝑉ˆ𝑡 ) 1
𝛿(Δ𝑡, 𝑉ˆ𝑡 ) = 𝜋(Δ𝑡, 𝑉ˆ𝑡 ) =
√ 𝑠2 (Δ𝑡, 𝑉ˆ𝑡 ) − 4𝑝(Δ𝑡, 𝑉ˆ𝑡 ) 1 𝛿(Δ𝑡, 𝑉ˆ𝑡 )
(
𝑠(Δ𝑡, 𝑉ˆ𝑡 ) − 𝛿(Δ𝑡, 𝑉ˆ𝑡 ) 𝑢1 (Δ𝑡, 𝑉ˆ𝑡 ) − 2
34
) ,
where the third conditional moment of the CIR process can be calculated thanks to its known density and is equal to [
2
𝑢3 (Δ𝑡, 𝑉𝑡 ) = 𝜎 Ψ𝑏 (Δ𝑡)
2𝑉𝑡2 𝑒−2𝑏Δ𝑡
( ) )] 𝜎2 ( −𝑏Δ𝑡 + Ψ𝑏 (Δ𝑡) 𝑏𝜃 + 3𝑉𝑡 𝑒 + 𝑏𝜃Ψ𝑏 (Δ𝑡) 2
+ 𝑢1 (Δ𝑡, 𝑉𝑡 )𝑢2 (Δ𝑡, 𝑉𝑡 ). Then the scheme ( ) ( )] 1[ 1𝑈