Volatility Interpolation
Volatility Interpolation
net/publication/228290986
Volatility Interpolation
CITATIONS READS
49 8,984
2 authors:
All content following this page was uploaded by Jesper Andreasen on 03 December 2019.
kwant.daddy@danskebank.com
brno@danskebank.com
1
Abstract
In this paper, we show how a non-standard variant of the fully implicit finite
difference method can be applied to efficiently interpolate and extrapolate a discrete
set of option quotes to an arbitrage consistent full continuous surface in expiry and
strike. In a numerical example we show how the model can be fitted to all quoted
prices in the SX5E option market (12 expiries, each with roughly 10 strikes) in
approximately 0.05s of CPU time.
Intro
Local volatility models such as Dupire (1994), Andersen and Andreasen (1999),
JPMorgan (1999), and Andreasen and Huge (2010) ideally require a full continuum in
expiry and strike of arbitrage consistent European option prices as input. In practice,
we, of course, only observe a discrete set of option prices.
Our modelling approach is based on finite difference solution of the Dupire (1994)
forward equation for option prices, and, as such, related to the work by Carr (2008)
where it is shown that one step the implicit finite difference method can be viewed as
option prices coming from a local variance gamma model. The methodology is
spiritually related to the implied density approach and can be specified to give an
exact fit to the observed option prices. But contrary to the implied density approach it
directly allows for arbitrage consistent interpolation in the maturity dimension. For
each maturity a non-linear optimisation problem has to be solved. The number of
parameters will typically be equal to the number of targets, i.e. the number strikes. An
update in the optimisation problem is quick as it only involves one time step in the
implicit finite difference method, i.e. solution of one tri-diagonal matrix system. The
model calibration can be bootstrapped in the maturity direction but global
optimisation is also an option. After the model is calibrated the full continuous surface
of option prices is, again, generated by single time step finite difference solution of
Dupire’s forward equation. Typical interpolation problems for equity options can be
solved in few hundreds of a second of CPU time.
Discrete Expiries
Given a time grid of expiries 0 t0 t1 and a set of volatility functions
{ i (k )}i 0,1, we construct European option prices for all the discrete expiries, by
recursively solving the forward system:
2
2
1
[1 ti i (k )2 2 ]c(ti 1 , k ) c(ti , k ) , c(0, k ) ( s(0) k ) ,i 0,1, (1)
2 k
where ti ti 1 ti .
1
[1 ti i (k )2 kk ]c(ti 1 , k ) c(ti , k ) , c(0, k ) ( s(0) k ) , i 0,1,
2 (2)
1
kk f ( k ) ( f (k k ) 2 f (k ) f (k k ))
k2
The system (2) can be solved by recursively solving tridiagonal matrix systems. One
can thus view the system (1) is a one-step per expiry implicit (finite-difference)
discretisation of the Dupire (1994) forward equation
2
c 1 c
0 (t , k )2 2 (3)
t 2 k
For a set of discrete option quotes {cˆ(ti , kij )} , the system (1) can be bootstrapped
forward expiry by expiry to find piecewise constant functions
that minimize the pricing error in (1). I.e. we solve the optimisation problems
inf ((c(ti , kij ) cˆ(ti , kij )) / wij ) 2 , wij cˆ(ti , kij ) / ˆ (ti , kij ) , (5)
i( )
j
sequentially for i 1, 2, . Here ˆ denotes implied Black volatility. The point here is
that for each iteration in (5) only one tridiagonal matrix system (2) needs to be solved.
2
1
[1 (t ti ) i (k ) 2 2 ]c(t , k ) c(ti , k ) , t ]ti , ti 1[ (6)
2 k
Note that we do not step from expiry to expiry that lie between the original expiries;
for all expiries t ]ti , ti 1[ , we step from t i .
3
Absence of Arbitrage and Stability
Carr (2008) shows that the option prices generated by (1) are consistent with the
underlying being a local variance gamma process. From this or from straight
calculation we have that (6) can be written as
1 u /( t ti )
c(t , k ) e g (u , k )du , t ti (7)
0 t ti
2
g
1 g
0 (k ) 2 2 ,u 0
u
2 k (8)
g (0, k ) c(ti , k )
In Appendix B we use this to show that the option prices generated by (1) and (6) are
consistent with absence of arbitrage, i.e. that ct (t , k ) 0, ckk (t , k ) 0 for all (t , k ) .
For the discrete space case we note that with the additional (absorbing) boundary
conditions ckk (t , k0 ) ckk (t , kn ) 0 , (2) can be written as
1 0
z1 1 2 z1 z1
z2 1 2 z2 z2
A
(10)
zn 1 1 2 zn 1 zn 1
0 1
1 t
zj i (k j )2
2 k2
The tri-diagonal matrix A is diagonally dominant with positive diagonal and negative
off-diagonals. Nabben (1999) shows that for this type of matrix
1
A 0 (11)
This implies that the discrete system (2) is stable. As we also have
1
A , (1, ,1) ' , (12)
we can further conclude that the discrete system (2) is arbitrage-free. This also holds
if the spacing is non-equidistant.
4
If the problem is formulated in logarithmic space x ln k , as would often be the case,
then the discrete system (2) becomes
1
[1 ti i ( x) 2 ( xx x )]c(ti 1 , x) c(ti , x) , c(0, x) ( s(0) e x ) ,i 0,1,
2
1
x f ( x) ( f (x x) f (x x))
2 x
1
xx f ( x ) ( f (x x) 2 f ( x) f (x x))
x2
(13)
It follows that the system is stable if x ln(k j 1 / k j ) 2 , not a constraint that will be
breached in any practical application.
2
1
[1 (T (t ) ti ) i (k )2 2 ]c(t , k ) c(ti , k ) , t ]ti , ti 1 ] (14)
2 k
where T (ti ) ti and T '(t ) 0 . In this case, the local volatility function (3) consistent
with the model is given by
ct (t , k ) ln ckk (t , k )
(t , k ) 2 2 i (k ) 2 [T '(t ) (T (t ) ti ) ] (15)
ckk (t , k ) t
The introduction of the time-change gives a handle on the interpolation in the expiry
direction. For example, a choice of a piecewise cubic functions T (t ) can be used to
ensure that implied volatility is roughly linear in expiry.
Algorithm
In summary: a discrete set of European option quotes is interpolated into a full
continuous surface of arbitrage consistent option quotes by
Step 1: For each expiry solve an optimisation problem (6) for a piecewise constant
volatility function with as many levels as target strikes at the particular expiry. Each
iteration involves one update of (1) and is equivalent to one time step in a fully
implicit finite difference solver.
Step 2: For expiries between the original expiries, the volatility functions from step 1
is used in conjunction with (7) to generate option prices for all strikes.
Note that step 2 does not involve any iteration. The process of the time stepping is
shown in Figure 1.
5
Numerical Example
In this section we consider fitting the model to the SX5E equity option market. The
number of expiries is 12 with up to 15 strikes per expiry. The target data is given in
Table 1. We choose to fit a log-normal version of the model based on finite difference
solution with 200 grid points. The local volatility function is set up to be piecewise
linear with as many levels as calibration strikes per expiry. The model fits to the
option prices in approximately 0.05s of CPU time on a standard PC. The average
number of iterations is 86 per expiry. Table 2 shows the calibration accuracy for the
target options. The standard deviation of the error is 0.03% in implied Black
volatility.
After the model has been calibrated we use (6) to compute option prices for all
expiries and strikes and deduce the local volatility from the option prices using (3).
Figure 2 shows the resulting local volatility surface. We note that the local volatility
surface has no poles. So, as expected, the model produces arbitrage consistent
European option prices for all expiries and strikes.
Conclusion
We have shown how a non-standard application of the fully implicit finite difference
method can be used for arbitrage free interpolation of implied volatility quotes. The
method is quick and robust and can be used both as a pre-pricing step for local
volatility models as well as for market making in option markets.
6
References
Andersen, L. and J. Andreasen (1999): “Jumping Smiles.” RISK, November.
Carr, P. (2008): “Local Variance Gamma.” Working paper, Bloomberg, New York.
Nabben, R. (1999): “On Decay Rates of Tridiagonal and Band Matrices.” SIAM J.
Matrix Anal. Appl. 20, 820-837.
Sepp, A. (2007): “Using SABR Model to Produce Smooth Local Volatility Surfaces.”
Working paper, Merrill Lynch.
7
Appendix A: Tables and Figures
80.63% 30.58% 29.36% 28.76% 27.53% 27.13% 27.11% 27.11% 27.22% 28.09%
86.13% 33.65%
87.96% 32.16% 29.06% 27.64% 27.17% 26.63% 26.37% 25.75% 25.55% 25.80% 25.85% 26.11% 26.93%
95.29% 25.86% 24.88% 24.05% 24.07% 24.04% 24.11% 24.18% 24.10% 24.48% 24.69% 25.01% 25.84%
102.62% 21.59% 21.40% 21.23% 21.42% 21.73% 21.98% 22.83% 22.75% 23.22% 23.84% 23.92% 24.86%
109.95% 20.25% 19.59% 19.44% 19.62% 19.88% 20.22% 21.51% 21.61% 22.19% 22.69% 23.05% 23.99%
117.28% 18.85% 18.54% 18.88% 20.39% 20.58% 21.22% 21.86% 22.23% 23.21%
8
Table 2: SX5E Calibration Accuracy
k\t 0.025 0.101 0.197 0.274 0.523 0.772 1.769 2.267 2.784 3.781 4.778 5.774
80.63% -0.02% -0.01% 0.00% 0.01% 0.00% 0.00% 0.01% 0.06% 0.00%
86.13% 0.01%
87.96% -0.07% -0.05% 0.01% 0.02% 0.01% -0.01% 0.01% 0.00% 0.00% -0.01% -0.02% 0.00%
95.29% 0.00% 0.00% 0.01% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0.01% -0.01% 0.00%
102.62% 0.01% -0.01% 0.00% 0.00% 0.00% -0.01% -0.01% 0.00% 0.00% -0.03% 0.00% 0.00%
109.95% -0.10% -0.09% 0.00% -0.02% 0.00% 0.02% -0.01% 0.00% -0.01% 0.02% -0.02% 0.00%
117.28% -0.03% 0.00% 0.01% 0.00% 0.00% 0.02% -0.02% 0.00% 0.00%
9
Figure 1: Model Timeline
100.00%
80.00%
60.00%
40.00%
20.00%
0.00%
115.8781
219.3651
0.024641
415.2729
0.519887
1.060515
786.1397
1.617426
1488.216
2.174337
2817.293
2.722793
5333.327
3.278013
3.834924
10096.35
4.391835
19113.07
4.948746
36182.34
5.505657
Figure 2 shows the local volatility surface in the model after it has been fitted to the SX5E market.
Data is as of March 1, 2010.
10
Appendix B: Technical Results
ct (t , k ) 0
(B1)
ckk (t , k ) 0
for all (t , k ) .
Proof of Proposition 1
Consider option prices generated by the forward equation
2
g 1 g
0 (k ) 2 2 (B2)
t 2 k
given which is solved forward in time t given the initial boundary condition g (0, k ) .
As also noted in Andreasen (1996), (B2) can also be seen as the backward equation
for
dk (t ) (k (t ))dZ (t ) (B4)
g (0, ) 0 g (t , ) 0 (B5)
Further, differentiating (B2) twice with respect to k yields the forward equation for
p g kk :
p 1 2
0 [ (k ) 2 p]
t 2 k2 (B6)
p(0, k ) g kk (0, k ) g kk (0, l ) (k l )dl
11
where W is a standard Brownian motion. From this we conclude that (B2) preserves
convexity:
g kk (0, ) 0 g kk (t , ) 0 (B8)
1 t /T ( u )
h(u, k ) e g (t , k )dt (B9)
0 T (u )
t /T ( u )
Multiplying (B2) by e and integrating in t yields
2
1
[1 T (u ) (k )2 2 ]h(u, k ) g (0, k ) (B10)
2 k
From (B5) and (B8) we conclude that (B10) defines a positive linear functional that
preserves convexity.
2
1 1
[1 T (u ) (k )2 2 ]hu (u, k ) T '(u) (k ) 2 hkk (u, k ) (B11)
2 k 2
Using that (B10) is a positive linear functional that preserves convexity we have that
if g (0, ) is convex then
hu (u, k ) 0 (B12)
for all (u , k ) .
We conclude that the option prices constructed by (1) and (6) are consistent with
absence of arbitrage.
12