pricing exotic options in a levy market with stochastic volatility

smile_for_vol

Hi,

I am attempting to implement the following paper:

The pricing of exotic options by Monte-Carlo simulations in a Levy market with stochastic volatility
AU - Schoutens, Wim
AU - Symens, Stijn
DO - 10.1142/S0219024903002249
JO - International Journal of Theoretical and Applied Finance

So far I have found a blog which provides some python code to implement the Carr-Madan formula using the FFT:

I have quickly modified the code to create a simple call function:

Code:
import numpy as np
import scipy as sp
import scipy.interpolate
import scipy.stats

def FourierST3(S0,K,sigma,T,r,q,N):

j=complex(0,1)
#create vector in the real space
x_min=-7.5
x_max=7.5
dx=(x_max-x_min)/(N-1)
x=np.linspace(x_min,x_max,N)

#create vector in the fourier space
w_max=np.pi/dx;
dw=2.0*w_max/(N);
w=np.concatenate((np.linspace(0,w_max,N/2+1),np.linspace(-w_max+dw,-dw,N/2-1)))

# Option payoff
s = S0*np.exp(x);
v_call = np.maximum(s-K,0)
# v_put = np.maximum(K-s,0)

# FST method
char_exp_factor = np.exp((j*(r-0.5*sigma**2)*w - 0.5*sigma**2*(w**2)-r)*T) # characteristic function for lognormal density
VC = np.real(np.fft.ifft(np.fft.fft(v_call)*char_exp_factor))
# VP = np.real(np.fft.ifft(np.fft.fft(v_put)*char_exp_factor))

#Interpolate option prices
tck=sp.interpolate.splrep(s,VC)
C=sp.interpolate.splev(S0,tck,der=0)
# tck=sp.interpolate.splrep(s,VP)
# P=sp.interpolate.splev(S0,tck,der=0)

return C

FourierST3(1,1,0.25,1,0.02,0,2**18)

Any help with the following would be greatly appreciated:
• How do we reach the values of x_min and x_max? In the above blog, they are -7.5 and 7.5.
• I assume that in order to price the options we need the three characteristic functions that would replace the variable 'char_exp_factor' : VG-CIR, Meixner-CIR and NIG-CIR. I am confused as to how to compute and hence code these.
I am yet to reach the Monte-Carlo simulation and pricing sections, but if you had any material that would help the implementation of them that would be greatly appreciated too!

Last edited:

Replies
0
Views
2K
Replies
3
Views
672
Replies
0
Views
3K
Replies
0
Views
2K
Replies
9
Views
6K