City University of Hong Kong Department of Economics and Finance
Course EF 5213 Assignment #4 ( due April 8, 2018 )
1. Under the Black-Schole regime, it is possible to generate the implied volatility surface, with respect to option strike price K and maturity term T, based on the market prices of plain vanilla call options written on the same asset. As discussed in Example 5.2, the plain vanilla call option prices c(K, T) can be converted into a set of implied volatilities (K, T) utilizing the Black-Schole pricing formula with current asset price S0 and risk-free interest rate r. In practice, the implied volatility surface is parameterized as
(K,T)b (T)b (T)(X)b (T)(X)2b (T)(X)3 , Xtan1(ln( K )) calledmoneyness 0 1 √T 2 √T 3 √T S0erT
with coefficients b0(T), b1(T), b2(T), and b3(T) depending on the maturity term. For each of the maturity term {T1, T2, … , Tn} in the market data, the volatility skew ( versus K) can be obtained by least-square fitting of the coefficients b0(T), b1(T), b2(T), and b3(T) to the implied volatilities in the data. Using then the contours of volatility skew, the volatility term structure ( versus T) for arbitrary strike K can be obtained through cubic spline interpolation. The volatility term structure can also be extended to T 0 and T by linearly extrapolating the left-end and right-end cubic polynomials, respectively. In this way, it is possible to estimate the implied volatility (K , T) for any strike price and maturity within the regions 0 K and 0 T .
(a) Using the market prices of the European call options in the attached comma separated values file, develope a VBA routine that generates the implied volatility surface for the underlying asset. Your solution should be able to evaluate the interpolated value of implied volatility ( K , T ) for chosen strike price and maturity within the regions 0 K and 0 T , respectively.
Note : Enclosed VBA subroutine LeastSquareFit() that is capable to perform a least-square fitting of the coefficients {c1, … , cM} in y c11(x) … cM M(x) given points {(x1, y1), … , (xN, yN)}.
There are mispriced call options in the attached file that violate call S0 KerT.
(b) In the stochastic model, the local volatility (St, t), with asset price St at time t, can be calibrated
from the implied volatility surface (K, T) using the Dupire formula given by
2 2T 2rKT [2(St,t)]S K,tT T K
,
(50 points)
ln(S /K)(r1⁄22)T 0
t 2 2 2 2 (1 K K ) K T ( K2 (K) )
Use implicit finite difference method to price the accumulator contract in assignment 2 based on the local volatility as calibrated above. You can estimate the first and second derivatives of a function to the second order of x as
g(x) g(xx)g(xx) 2x
Practically, you can choose x 108 x.
, g(x) g(xx)2g(x)g(xx) (x)2
(30 points)