Notes
Slide Show
Outline
1
"Bates Model"
  • Bates Model:
  • A Model Analysis
2
"Bates Model"
3
"Prospect"
4
Jump process
  • Jumps
    • Homogeneous Poisson process
    • Distributions for Jump Size
      • Log Normal
      • Double exponential



5
Poisson process
6
Poisson process as martingale
7
 
8
Jump Size distributions
9
Toy implementation
  • Toy implementation Bates Model (Log-Jump)
10
Bates model: Analytical exp.
  • Analytical expressions
    • A. Sepp (2004) developed closed forms to evaluate vanilla options (characteristic functions)
    • www.javaquant.net/papers/seppthesis.pdf
    • Closed forms + optimization algorithm = calibration machinery.
    • QL: implemented and tested this features
11
Googling QL
  • NX and QL have similar design
    • Smart pointers
    • Object Handlers
    • Lazy objects, observers, observables
    • QuantLib-addin, QuantLibXL
    • Webpage: http://quantlib.org


12
Googling QL: test examples
  • Vanilla priced with Bates Engine and BS
    • Rho = 0, Lambda = 0, Nu = 0


  • Vanilla Bates Engine and Merton76
    • Xi = 0, Rho = 0 -> BS + Merton76


  • Calibration of Bates Model to DAX options
    • www.javaquant.net/papers/stochjumpvols.pdf

  • A little less conversation, and a little bit more of action…..(some code)


13
Testing QL Bates and Pricing Cliquets
  • Options
    • Vanilla
    • Cliquet

  • Market Data
    • Simple
    • Realistic


  • Methods
    • Analytical
    • Monte Carlo


  • NX Models
    • BS, Dupire, SABR and Heston
    • Calibration algorithm: GA (Heston)


  • QL Models
    • Heston, Bates
    • Calibration algorithm: L-M (Heston, Bates)
14
Vanillas: Test1

  • Compare Analytical and MC Bates Engines to known results (Nx, BBG)


  • FX PUT option
    • DomYC = 5.215%, ForYC = 4.44%, Vol = 8.844%, Spot = 1.4436, Strike= 1.4675, Maturity = 20days, Notional = EUR1,000,000, Model = BS


  • 1) Analytical BS Engines:
    • Nx    = USD27,002.53
    • BBG = USD27,002.53
    • QL    = USD27,064.22


  • 2) QL Bates Analytical Engine,
    • Parameters->Black Scholes
    • QL = USD27,064.22


  • 3) Nx Heston Pricer,
    • Parameters->Black Scholes
    • Nx ForwardMC = USD27,001.71.
    • Nx BackwardPDE = USD27,001.59


  • 4) QL Bates European MC Engine,
    • Parameters->Black Scholes.
    • QL = USD27,366.36 (tolerance 5%)



  • Conclusion: Bates analytical and MC engine reproduces well
  • known vanilla results
15
Cliquet: Test2
  • Compare Nx and QL Prices, flat YC-Div-Vol


  • Test 2
    •  Model: Heston, constant parameters
    • Yield Curve: Flat
    • Dividends: Flat
    •  Volatility: Flat
    • Methods: Nx and QL Monte Carlo.
    • NumeriX Forward MC
      • Heston result = 67.967 bps
      •     BS result     = 68.248 bps
    • QuantLib Forward MC
    •     Bates         = 68.130 bps


  • Conclusion: More than flat term needed to reproduce market quote



16
Cliquet: Test3 and Test3b

  • Compare Heston Calibration parameters (Nx and QL) and Price results


  • Test 3 and Test3b
    •  Model: Heston, constant parameters
    • Yield Curve: Flat
    • Dividends: Flat
    •  Volatility: Realistic
    • Calibration Methods: Genetic Algorithm (Nx) Levenberg-Marquardt (QL).
    • 1) Nx Heston, calibrated parameters will be used by QL.
      • Nx Heston = 124.1592 bps
      • Kappa = 3.992337
      • Vol^2  = 0.03894531
      • Sigma   = 0.78870795
      • Rho    =-0.63044743
      • Theta  = 0.05841538
    • 2) QL Bates (own calibration)
      • QL Bates  = 97.331 bps
      • Kappa = 3.76631
      • Vol^2 = 0.0346356
      • Sigma = 0.790490
      • Rho = -0.9999999
      • Theta = 0.0639668


  • Conclusion: Different calibration algorithms (NX-GA,QL-LM) may give different parameters
17
Cliquet: Test3a
  • To obtain Price using Bates MC engine (QL) using market vol, flat YC&Div


  • Test 3a
    • Model: Bates, constant parameters
    • Yield Curve: Flat
    • Dividends: Flat
    •  Volatility: Realistic
    • Methods: QL Monte Carlo.
    • 1) QL Bates. This time keeping own parameters.
      • QL Bates  = 164.31 bps
      • nu     = -0.08147
      • delta  =  0.13959
      • lambda =  0.820949
      • theta  =  0.058415
      • kappa  =  1.112211
      • xi     =  0.51393561
      • rho    = -0.99999999
      • v0^2   =  0.0233669

  • Conclusion: Vol Skew seems to improve results



18
Cliquet: Test4
  • Get Price using Bates MC Engine for full market data


  • Test 4
    •  Model: Bates, constant parameters
    • Yield Curve: Realistic
    • Dividends: Continuous rate
    •  Volatility: Realistic
    • Methods: QL Monte Carlo.
    • 1) QL Bates. Keeping own calibration parameters.
      • QL Bates  = 187.80 bps
      • nu     = -0.0786981
      • delta  =  0.138449
      • lambda =  0.816217
      • theta  =  0.055030
      • kappa  =  1.0326335
      • xi     =  0.513779
      • rho    = -0.99999999
      • v0^2   =  0.0235143

  • Conclusion: Realistic Market Data improve results, still quite
  • off Market Quote.


19
Cliquet: Test5
  • Get Price using Bates MC Engine and Heston Nx MC, No Dividends


  • Test 5
    •  Model: Bates, constant parameters
    • Yield Curve: Realistic
    • Dividends: Zero
    •  Volatility: Realistic
    • Methods: QL Monte Carlo.
    • 1) Nx Heston.
      • QL Bates  = 127.22 bps
    • 1) QL Bates. Keeping own calibration parameters.
      • QL Bates  = 244.74 bps

  • Conclusion: Getting the Forward crucial when pricing Cliquets


20
Conclusions

  • Bates Model might improve Cliquet results, though other factor might be critical (forward curve).


  • Bates Model is superior to BS, Dupire, SABR and Heston for short term options (skew).


  • Jumps are a requirement when pricing certain skew sensitive options.