Abstract
We describe an extension of Gaussian interest rate models studied in literature. In our model, the instantaneous spot rate is the sum of several correlated stochastic processes plus a deterministic function. We assume that each of these processes has a Gaussian distribution with time-dependent volatility. The deterministic function is given by an exact fitting to observed term structure. We test the model through various numeric experiments about the goodness of fit to European swaptions prices quoted in the market. We also show some critical issues on calibration of the model to the market data after the credit crisis of 2007.
1. Introduction
A short-rate model for the term structure of interest rates is based on the assumption of a specific dynamics for the instantaneous spot-rate process (for the definition of , we refer for instance to the monographs [1β3]). These models were the first approach to describe and explain the shape and the moves of the term structure of interest rates. Moreover, these models are very convenient since the dynamics of the instantaneous spot rate drives all the term structure, in the sense that both rates and prices of bonds are defined as an expectation of a functional of . Indeed, the existence of a risk-neutral measure implies that the price at time of a contingent claim with payoff at time is given by where denotes the time -conditional expectation under the measure . In this paper, we describe all processes under the risk-neutral measure (for the definition and the existence of , we refer to the monographs [1β4]).
A full description of the main short-rate models can be found in [1β3, 5]. Here, we only recall that these models belong to two general classes: the endogenous ones, in which the observed term structure is an output, and exogenous model, in which the observed term structure is an input. A basic strategy to transform an endogenous model to an exogenous one is the inclusion of time-dependent parameters to fit exactly the observed term structure. In fact, matching exactly the term structure is equivalent to solving a system with an infinite number of equations, and this is possible only after introducing an infinite number of parameters or, equivalently, a deterministic function of time.
In this paper, we describe a general exogenous model in which the instantaneous spot rate is the sum of several correlated Gaussian stochastic processes with time-dependent volatility plus a deterministic function which allows an exact fitting to the observed term structure. We derive an explicit formula for discount bond, and we recall a formula to approximate a European swaption price proposed by Schrager and Pelsser in [6], that can be used to calibrate the model to the market data. To do that, we also derive the dynamics of the under the forward measure, that is, the measure associated with the zero coupon bond maturing at time (see [1β4]).
In literature, a model in which the instantaneous spot rate is given by the sum of two correlated Gaussian processes plus a deterministic function is known as the G2++ model. This model with constant parameters is widely studied in [2]. Moreover, the G2++ model is equivalent to the well-known two-factor Hull-White model (see for instance [5, 7, 8]). We also note that one Gaussian process plus a deterministic function is equivalent to the well-known Hull-White model (see [5, 7, 9]). In this paper, we propose a common notation for the general case in which there are correlated Gaussian processes with time-dependent volatility. In order to use the same notation as in [2], we will refer to this model as the G++ model. The aim of this paper is not only to provide a common notation to unify multivariate Gaussian models with an exact fit to the observed term structure. With several numerical examples, we will show that the G1++ and G2++ models with constant parameters worked well before August 2007, the beginning of the so-called βcredit-crunchββ crisis. Then, August 2007 arrived and one of the several consequences of the liquidity and credit crisis was an explosion of the swaptions volatility, specially for swaptions with short tenor and maturity. Since August 2007, the swaptions volatility surface has become very unsmooth. At the money (ATM) swaptions volatility surface at 31/12/2006 and 31/12/2011 are, respectively, shown in Tables 1 and 2 (value in percentage).
With the volatility as in Table 2, the G1++ and G2++ models with constant parameters do not work well, in the sense that itβs impossible to have a good fit to the market data. To improve the calibration to ATM swaptions volatility surface at 31/12/2011, we increase the number of factors and take a functional specification for the volatility of the processes. We test a calibration to swaptions prices proposed by Schrager and Pelsser in [6]. In our experiment, to optimize parameters, we use the differential evolution algorithm as implemented in R through the package DEoptim.
In order to make the reader familiar with the notations, we start, in Section 2, with one factor model and then, in Section 3, we describe the general factor model. In Section 4, we show our numerical results. Finally, in Section 5, we summarize our results and discuss future developments.
As a final remark, we note that the Gaussian distribution of the processes allows a good analytical tractability and the construction of efficient and fairly fast numerical procedures for pricing any type of payoff. On the other hand, the Gaussian distribution of the processes leads to the possibility of negative rates and so the model is hardly applicable to some concrete problems.
2. The G1++ Model
In this section, we assume that the dynamics of the instantaneous short-rate process under the risk-neutral measure is given by where the process satisfies the stochastic differential equation where is a positive constant, is a deterministic function of time that is regular enough to ensure the existence and uniqueness of a solution, and is a standard Brownian motion. The function is deterministic and is given by an exact fitting to the term structure of discount factor observed in the market. Using the same notation as in [2], we will refer to this model as the G1++ model.
Integrating equation (2.2), we have, for each ,
Therefore, conditional to , the -field representing the information available in the market up to time (see for instance [1, 2, 4]) is normally distributed with mean and variance given by where and denote the mean and the variance under the measure , respectively. In the case is a positive constant function, we have We denote by the price at time of a zero coupon bond maturing at time with unit nominal value. The existence of the risk-neutral measure implies that The model fits the current observed term structure of the discount factor if, for each maturity , the discount factor is equal to the one observed in the market . To calculate , we have to integrate the process over the interval . Notice that, since the process is normally distributed conditional on , then also is itself normally distributed. Indeed, by Fubiniβs Theorem for stochastic integral (see [3]), we have So, the integral is normally distributed with mean zero and variance In the case is a positive constant function, we have Finally, recalling that if is normal random variable with mean and variance , then , we have Clearly, the model gives an exact fitting to the market term structure of the discount factors if and only if for every . By (2.10), we have So, the model gives an exact fitting to the market term structure of the discount factors if and only if for every To have an explicit expression of , denoting by the market instantaneous forward rate, that is, We can write (2.12) Then the exponents on both sides of (2.15) agree, and by differentiation we get and so, in the case is a positive constant function, the model perfect fits the market term structure of the discount factor if and only if for every
However, to calculate for every , we point out that we donot need to compute the whole curve. This is very important in order to implement the model. In fact, arguing as in (2.7), we can prove that In particular, the integral conditional on is normally distributed with mean and variance given by and, in the case is a positive constant function So, we have where, Expression (2.21) is very important in simulation. We note that to generate , we need only the market discount curve and the process . From , we could derive all the other rates (forward rates, swap rates, etc.).
In order to derive an explicit formula of the price of an European swaption, we need to change the probability measure as indicated by Jamshidian in [10] and more generally by German et al. in [11]. We denote by the -forward measure, given by choosing a zero coupon bond with maturity as numerarie. By the Girsanovβs Theorem, the dynamics of the process under the measure is given by where is a standard Brownian motion under defined by . Then, under the measure , the distribution of the process is still Gaussian; in particular, for every , the mean and the variance of the process are given by where and denote, respectively, the mean and the variance under , and In the case is a positive constant function, we have Now, we consider an European call swaption with maturity , strike , and nominal value , which gives the holder the right to enter at time into a swap with payment dates , , where he pays the fixed rate and receives the Libor rate. Jamshidian in [10] showed how a European swaption can be decomposed into a portfolio of options on zero coupon bonds, deriving an exact closed formula for any European swaption. In particular, the price at time of the above swaption is given by where and , where denotes the year fraction from to , . Then, by (2.21) we have where denotes the density function of conditioned on under , that is, We also point out that in the case is a positive constant function, we have . Equation (2.28) may be used in order to calibrate the model to the market prices of quoted swaptions. An analytic formula alternative to (2.28) is given by where is the standard normal cumulative function, and () are given by where is the unique solution of
To conclude this section, we notice that the G++ model is perfectly analogous to the one proposed by Hull and White in [7] and known as the Hull-White model.
3. The G++ model
We now extend the previous one factor model to the multidimensional case. In this section, we assume that the dynamics of the instantaneous short-rate process under the risk-neutral measure is given by where, for every , the process satisfies the stochastic differential equation where is a positive constant, is a deterministic function of time that is regular enough to ensure the existence and uniqueness of a solution, and is a standard Brownian motion. We denote by the instantaneous correlation between and , for every , ; we also set , for every . We naturally assume that , and the matrix is symmetric and positive definite. The function is deterministic and is given by an exact fitting to the term structure of discount factors observed in the market. Using the same notation as in [2], we will refer to this model as the G++ model.
Integrating equation (3.2), we have, for each , Therefore, conditional to is normally distributed with mean and variance given by where and denote the mean and the variance under the measure , respectively. In the case that for every ,ββ is a positive constant function, we have The model gives an exact fitting to the currently observed term structure of the discount factors if, for each maturity , the discount factor is equal to the one observed in the market . To calculate , we have to integrate the process over the interval . Proceeding as in (2.7), we obtain that the integral , conditional to , is normally distributed with mean zero and variance given by In the case that, for every , is a positive constant function, we have So, we have Clearly, the model gives an exact fitting to the market term structure of the discount factors if and only if , for every , that is, To have an explicit solution of , denoting by the market instantaneous forward rate, we can write (3.9) Then, the exponents on both sides of (3.10) agree, and by differentiation we get In the case, for every , is a positive constant function, we have However, as in the G++, to calculate for every , we point out that we do not need to compute the whole curve. This is very important in order to implement the model. In fact, we can prove that the integral , conditional to , is normally distributed with mean and variance given by In the case, for every , is a positive constant function, we have So, we have where Expression (3.15) is particularly important in simulation. We note that to generate , we need only the market discount curve and the processes . From , we could derive all the other rates (forward rates, swap rates, etc.).
In order to derive an explicit formula of the price of an European swaption, we need to change the probability measure as indicated by Jamshidian [10] and more generally by German et al. in [11]. We denote by the -forward measure, given by choosing a zero coupon bond with maturity as numerarie. By the Girsanovβs Theorem, for each , the dynamics of the process under the measure , is given by where is a standard Brownian motion under with . Moreover, the explicit solution of (3.17) is, for where and, in the case that, for every , is a positive constant function So, under , the distribution of conditional to is normal with mean and variance given by The price at time of an European call swaption with maturity , strike and nominal value is given by where and , where denotes the year fraction from to , . Then, by (3.15) we have where denotes the density function of the vector conditioned on under , that is, is the -dimensional normal density function with vector mean and covariance matrix given by and, in the case for every , is a positive constant function Since the numerical solution of the integral in (3.23) is computationally inefficient for large , the price of European swaption could be approximated by the approach proposed by Schrager and Pelsser in [6]. As illustrated in the Appendix of [6], this method leads to a very simple analytical pricing formula of a swaption in the framework of Gaussian interest rate. In the G++ model, in the case that the strike is in at the money, we have where is the approximated volatility of the swap rate given by where, for every , We finally point out that, in the case for every , is a positive constant function, we have
4. Numerical Results: Calibration to ATM Swaptions Prices
We test formula (3.26) in the calibration to ATM swaptions prices at 31/12/2006 and at 31/12/2011. All market data are taken from Bloomberg provider. ATM swaptions volatility surface at the reference dates are, respectively, shown in Tables 1 and 2 (value in percentage).
In our experiments, to calibrate parameters, we use the differential evolution algorithm as implemented inββRββthrough the package DEoptim. We set the default characteristics of the optimization algorithm. In particular, we use the second strategy instead of the classical mutation in the optimization procedure; we set a number of maximum population generators allowed equals to , a crossover probability equals to , and a step-size equals to . The function to minimize is the sum of the square percentage difference between the market price and the model price of European swaptions with tenor and maturity as in Table 2.
4.1. G1++ with Piecewise Constant Volatility
We consider the G++ model and we choose a piecewise constant functional specification for the volatility of the process : in particular, the volatility function is constant within intervals with endpoints . We determinate previous intervals after several experiments: we try more set of possible intervals, and we find that the best set is the previous one, even increasing the number of intervals. At 31/12/2006, the best fit gives a mean percentage error of 2.5% on the swaptions price surface. Instead of this good result, at 31/12/2011, the calibrated parameters give a mean percentage error of 7.2% on the swaptions price surface. The matrix of percentage error at 31/12/2011 is shown in Table 3.
To improve the result of calibration, we increase the number of factors.
4.2. G2++ with Constant Parameters
We now consider the G++ model with constant parameters. At 31/12/2006, we have a very good result: the calibrated parameters give a mean percentage error of 1.6% on the swaptions price surface. At 31/12/2011, we improve the calibration result obtained in the previous section at the same reference date, but the instantaneous correlation between the two Brownian motions given by the calibration output is near to . Anyway, the mean percentage error over the swaptions price surface is with the percentage error matrix given by Table 4.
4.3. G2++ with Constant Piecewise Volatility
We consider the G++ model and we choose a piecewise constant functional specification for both the volatility of the processes and : in particular, the volatility functions and are constant within intervals with endpoints . As for the G++ model, we arrive to determinate the previous intervals after several experiments: we try more set of possible intervals and we find that the best set is the previous one. We make experiments only at 31/12/2011, since we obtained a nonimproved result at 31/12/2006 in the previous section. The calibrated parameters give a mean percentage error of 3.4% on the swaptions price surface. This is the best result that we obtain through all our experiments at 31/12/2011. The relative error matrix is shown in Table 5.
4.4. G2++ with a Functional Instantaneous Correlation
Since the calibrated instantaneous correlation in the G++ model with constant parameters is near to , we set a functional specification for where is a positive constant and . The interpretation of these two parameters is straightforward: is the long-term average instantaneous correlation whereas is the rate of convergence of to . The other parameters are constant functions. Unfortunately, among the best calibrated parameters, that give a mean percentage error of , is closer to as aspected, but is quite large (near to ). This does not improve the calibration obtained with constant instantaneous correlation.
4.5. G3++ with Constant Parameters
We finally consider the G++ model with constant parameters. We substantially do not improve the result obtained with the G++ model with constant parameters. In fact, the mean percentage error still remained near to , and the instantaneous correlation between the second and the third factor is near to .
5. Conclusions
In this paper we describe a general exogenous model in which the instantaneous spot rate is the sum of correlated Gaussian stochastic processes with time-dependent volatility plus a deterministic function given by an exact fitting to the observed term structure. We also give a general notation independent of the number of factors and analogous with the notation used in literature. In our numerical experiments, we consider an increasing number of factors from one to three and different functional specifications for the volatility of factors and one also for the correlation. To calibrate the model to market data, we use an accurate and fast formula to approximate a European swaptions price proposed by Schrager and Pelsser in [6]. The algorithm used for calibration is the differential evolution as implemented in the R package DEoptim, whereas the function to minimize is the sum of the square percentage difference between the market price and the model price of swaptions. At 31/12/2006 we obtain a good fit to the market data. The G++ model with constant parameters gives a mean percentage error of 1.6% on the swaptions price surface. Then, August 2007 arrived and the world will never be the same. We test the calibration at 31/12/2011. We obtain the best optimization with the two factors model with a piecewise constant functional specification for both the volatility functions. We get a mean percentage error on the swaptions price surface of 3.4%. We also note that setting all the parameters constant and increasing the number of the factors, we do not improve the performance of the calibration. Further investigation could be direct to different directions: we could set a different functional specification for the volatility of the factors, instead of constant or piecewise constant as in this paper; we could use a different optimization technic to calibrate the parameters instead of differential evolution algorithm, or, starting from the output of the differential evolution algorithm; we could try to increase the performance of the calibration using a deterministic optimization algorithm; finally, we could try to calibrate the parameters to other market data instead of swaptions prices.
Acknowledgments
The author wishes to thank professor Andrea Pascucci and prof. Sergio Polidoro for several helpful conversations and for some useful remarks that improved this paper. He also wishes to thank his wife Giulia for some useful remarks that correct and improve my English language. Finally, he thanks his colleagues Lorenzo and Martina that allowed him to write this paper.