def twoFactorGaussianExample(inds,t_max=1.0,tau_max=3.0,b0=0.0759,b1=-0.0439,k=0.4454,a2=0.5,s1=0.02,s2=0.01,K=0.5,verbose=False):
'''
Compute the two factor Gaussian Example in Beck-Tempone-Szepessy-Zouraris
'''
f0 = lambda tau: b0+b1*np.exp(-1.0*k*tau)
F = lambda x: np.exp(-1.0*x)
G = lambda x: np.fmax(np.exp(-1.0*x)-K)
Psi = lambda x: 1.0*x
U = lambda x: 0.0*x
d1 = lambda s: s1*s1*s
d20 = lambda s: np.exp(-0.5*a2*s)
d2 = lambda s: 2*s2*s2/a2*d20(s)*(1.0-d20(s))
drift = lambda s: d1(s)+d2(s)
v1 = lambda s: s1*np.ones(np.shape(s))
v2 = lambda s: s2*d20(s)
vols = [v1,v2]
identifierString = 'Evaluating the Two Factor Gaussian example.\n'
identifierString += 's1: %f, s2: %f, b0: %f, tau_max: %f, t_max: %f\n'%(s1,s2,b0,tau_max,t_max)
identifierString += 'k: %f, a2: %f, K: %f, b1: %f'%(k,a2,K,b1)
return multiLevelHjmModel(inds,F,G,U,Psi,drift,vols,f0,t_max=t_max,tau_max=tau_max,identifierString=identifierString,verbose=verbose)
评论列表
文章目录