Calibration of an Interest Rate Model Using GPUs
Claudio Albanese Presented at King’s College Workshop on GPU Computing for Financial Engineering, London, November 11th, 2008
A Stochastic Monetary Policy Model The particular model I implemented is a short rate model with regime switching. The short rate process has the following form: rt = λ(t)ρt (1)
where λ(t) is a deterministic function of time, assumed positive to avoid negative rates and calculated in such a way to fit the term structure of rates precisely. A stylized description of the process ρt in the continuum would be given by a stochastic differential equation of the form dρt = µat dt + κ(t)(θ(t) − ρt)dt + σat ρβat (t)dW + small jumps, (2)
dat = k(t)(¯ − at)dt + s(t)dW + small jumps. a
1
(3)
Model definition The short rate process depends on parameters which are a function of the monetary regime variable and of time. Parameters are assumed to be constant over periods of 6 months but are allowed to change otherwise. As we explain below, there are a total of 26 free parameters and the calibration routine is tasked with estimating them all. The regime variable a can take 8 values corresponding to as many rate regimes. Regime switching confers volatility to rate spreads by inducing steepening or flattening of the yield curve.
2
Drift grid rate regime 1 2 3 4 5 6 7 drift -1.25% -1 % -0.75% -0.50% -0.25% 0.00 % 0.25 % grid dilation factor 40 % 60 % 80% 100% 120 % 140 % 160 %
3
Short rate grid For each regime, one finds a short rate grid containing 64 nodes. The number 64 is chosen to optimize GPU operations. The base grid is given in the following table:
This grid corresponds to a grid dilation factor of 100%. The other dilation factors apply to different regimes.
4
The Lambda function The function λ(t) is constrained to be positive, not to allow for negative rates. Also, the calibration algorithm favours solutions where λ(t) is a deterministic function of time.
5
The Lambda function If the calibration basket contained only swaptions and no CMS spreads, the function λ(t) would be flatter and close to one. In this case, the regime dynamics would be responsible for reproducing a steep yield curve. However, correlations between forward swap rates would be too low to correctly price CMS spread options.
6
Model parameters The model parameters are collectively summarized by the table in Fig. 5. This table describes functions which are either constant or of the form ξi(t) = Ai + Bi exp(−t/τi). where t is time. There are 12 such curves in the model for a total of 26 parameters. Some curves are assumed constant and parameterized in terms of the constant A only. Other ones are parameterized in terms of the asymptotic at infinity A, the initial value A + B and the characteristic decay time. In addition to depending on time, parameters may also depend on the regime. The table assigns values for the lowest regime and the highest, while values for the other regimes are obtained by linear interpolation.
7
(4)
User Interface for Model Encoding The model parameters are used by the modeler to form a Markov generator defining the dynamics. The modeler can do so by using a simple VB.NET interface which is invoked at start time and used to fill one buffer on each device for each period covered by the model. To go as far as 50 years in the future on a semiannual basis, one needs 100 buffers. For a model of lattice dimension 1000 this takes up 400MB on each device, abundantly below the 2GB memory limit. Calibration and pricing proceeds from the stipulated user-model interface with model independent algorithms.
8
The importance of getting the yield curves ”right” One of the main properties of the regime switching dynamics for short rates we have selected is that it gives rise to scenarios for the yield curve which look realistic and require small adjustments to reproduce exactly the actual curves. Realism in the underlying scenarios
• confers robustness when pricing exotics;
• produces meaningful hedge ratios;
• allows for a single calibration to be used against a great variety of exotic payoffs.
9
Moment methods Having a realistic evolution for curves is not a strictly necessary condition for valuation to be correct as long as the payoffs is only sensitive to the first and second moments. Hedge ratios and very exotic payoffs can however be problematic. As a rule, when only two moments are sufficient as for Bermuda swaptions and (unlevered) callable CMS spread options, we find a very tight agreement in the valuation provided by our stochastic monetary policy model and moment methods based on PCA analysis as the BGM model.
10
Yield curves in regime 0 with λ(t) ≡ 1
11
Yield curves in regime 1 with λ(t) ≡ 1
12
Yield curves in regime 2 with λ(t) ≡ 1
13
Yield curves in regime 3 with λ(t) ≡ 1
14
Yield curves in regime 4 with λ(t) ≡ 1
15
Yield curves in regime 5 with λ(t) ≡ 1
16
Yield curves in regime 6 with λ(t) ≡ 1
17
Yield curves in regime 7 with λ(t) ≡ 1
18
Yield curve scenarios in the BGM model
19
Arbitrage free yield curve scenarios with correct PCA moments
20
Arbitrage free yield curve scenarios with correct PCA moments
21
Calibration example to a JPY denominated basket In the example discussed here below I calibrate with respect to JPY interest rate derivatives including
• At-the-money European swaptions of maturities: 6 months, 1y, 2y, 3y, 4y, 5y, 6y, 7y, 8y, 9y, 10y, 20y and of tenors: 6 months, 1y, 2y, 3y, 4y, 5y, 6y, 7y, 8y, 9y, 10y, 15y, 20y.
• Out-of-the-money European swaptions of maturity-tenor pairs: 5y2y, 5y-5y 5y-10y, 5y-20y, 5y-30y, 10y-2y, 10y-5y, 10y-10y, 10y-20y, 10y-30y, 20y-2y, 20y-5y, 20y-10y, 20y-20y and strikes as in Fig. 12.
• Callable CMS spread options in the following table:
22
Callable CMS spread options payoff 20y - 5y 20y - 2y 20y - 2· 2y 20y - 2y 20y - 5y 20y - 2· 2y 20y - 2· 2y 20y - 2· 2y 20y - 2· 6m 20y - 2· 6m 20y - 3· 6m 20y - 3· 6m 20y - 2· 2y 20y - 6m 20y - 6m maturity 10y 10y 10y 15y 15y 15y 5y 20y 15y 10y 10y 15y 20y 10y 15y strike 1.2% 2.4 % 1.5% 1.8% 3 % 2 % 3 % 1.5 % 1 % 2.5 % 3 % 0.5 % 0.5 % 0.5 % 0.75 %
23
Initial Point in the optimization
24
Optimization algorithm for calibration Having tried Levenberg-Marquardt and Differential Evolution, I developed my own algorithm and called it ”rotating frames”. In short, the algorithm sets the scale of an update steps, generates a random orthogonal frame and attempts updates in all directions in the frame and their antithetic opposite. Updates leading to a better fit are accepted and the same direction is tried once again. The rotating frames algorithm can naturally be multithreaded and deployed on multi-GPU equipment.
25
ATM swaptions fit errors in log-normal vol
26
Out of the money swaptions fit errors in log-normal vol
27
Fit with flow CMS spread options
28
Fit with flow CMS spread options
29
Expected future spread volatility
30
Expected future correlation
31
Correlation by regime
32
Spread volatility by regime
33
Callable CMS Spread Options Fit Errors in Log-normal Vol
34
Callable CMS Spread Options, Totem deal 1
35
Callable CMS Spread Options, Totem deal 2
36
Callable CMS Spread Options, Totem deal 3
37
Callable CMS Spread Options, Totem deal 4
38
Callable CMS Spread Options, Totem deal 5
39
Callable CMS Spread Options, Totem deal 6
40
Callable CMS Spread Options, Totem deal 7
41
Callable CMS Spread Options, Totem deal 8
42
Callable CMS Spread Options, Totem deal 9
43
Callable CMS Spread Options, Totem deal 10
44
Callable CMS Spread Options, Totem deal 11
45
Callable CMS Spread Options, Totem deal 12
46
Callable CMS Spread Options, Totem deal 13
47
Callable CMS Spread Options, Totem deal 14
48
Callable CMS Spread Options, Totem deal 15
49
Comparison with BGM prices over a large portfolio The stochastic monetary policy model compares surprisingly well with BGM, as is shown in the figure below. The average discrepancy observed is 14bp of nominal. The bias due to the handling of the call features in BGM using the LS variance reduction method is 8bp and justifies most of the discrepancy. The peak is also particularly pronounced and related to the simulation noise [in this sample, 1000 scenarios were used for the BGM calculation]. The discrepancy with a multifactor Hull-White model with local calibration and adjustors show a much greater degree of noise.
50
Discrepancies with BGM on a large portfolio
51
Discrepancies with MFHW with adjustors on a large portfolio
52
Discrepancies between BGM and MFHW with adjustors on a large portfolio
53
Discrepancies with BGM and MFHW with adjustors on a large portfolio The systematic discrepancy with respect to a non-parametric, 50 factor BGM model solved using the LS algorithm with lower bounds is +1bp. The estimated gap between lower and upper bounds for BGM is security dependent and in the range 3-20bp. There is no smile structure. The systematic discrepancy with the 2-factor Hull White model with adjustors is around 60 bp and there is a noticeable smile effect.
54
Performance Calibration basket valuation 4.8 seconds Calibration: 60 minutes Single deal pricing: 4.5 seconds Portfolio pricing with cash flow synchronization (700 instruments): 52 seconds
55
Risk management The performance is such that risk management can be based on realtime VaR calculation using a portfolio mapping technique limited to cash flow synchronization.
56
Conclusions Model agnostic financial engineering is applicable to interest rate derivatives. We find that it is possible from the engineering standpoint to set up calibration and pricing framework which delegate to the user the model specification and make no use of analytic solvability. The fit with the most accurate market standard models such as BGM is very tight for exotic derivatives whose price depends largely on the variance covariance matrix between rates. Risk management with full portfolio valuation can be realistically be done on a real-time basis. The model necessitates multi-GPU hardware. The performance impact of using CPUs only would be of an a factor of around 30-40
57
and would make this solution not viable. On the plus side, commercial GPU hardware is very cheap as it is currently mass produced for graphic applications.