AnalyticHestonHullWhiteEngine Class Reference
[Vanilla option engines]

#include <ql/pricingengines/vanilla/analytichestonhullwhiteengine.hpp>

Inheritance diagram for AnalyticHestonHullWhiteEngine:

List of all members.


Detailed Description

Analytic Heston engine incl. stochastic interest rates.

this class prices a european options under the following processes

\[ \begin{array}{rcl} dS(t, S) &=& (r-d-\lambda m) S dt +\sqrt{v} S dW_1 + (e^J - 1) S dN \\ dv(t, S) &=& \kappa (\theta - v) dt + \sigma \sqrt{v} dW_2 \\ dr(t) &=& (\theta(t) - a r) dt + \eta dW_3 \\ dW_1 dW_2 &=& \rho dt \\ dW_1 dW_3 &=& 0 \\ dW_2 dW_3 &=& 0 \\ \end{array} \]

References:

Karel in't Hout, Joris Bierkens, Antoine von der Ploeg, Joe in't Panhuis, A Semi closed-from analytic pricing formula for call options in a hybrid Heston-Hull-White Model.

A. Sepp, Pricing European-Style Options under Jump Diffusion Processes with Stochastic Volatility: Applications of Fourier Transform (<http://math.ut.ee/~spartak/papers/stochjumpvols.pdf>)

Tests:
the correctness of the returned value is tested by reproducing results available in web/literature, testing against QuantLib's analytic Heston and Black-Scholes-Merton Hull-White engine

Public Member Functions

 AnalyticHestonHullWhiteEngine (const boost::shared_ptr< HestonModel > &hestonModel, const boost::shared_ptr< HullWhite > &hullWhiteModel, Size integrationOrder=64)
void update ()
void calculate () const

Protected Member Functions

std::complex< RealaddOnTerm (Real phi, Time t, Size j) const

Member Function Documentation

void update (  )  [virtual]

This method must be implemented in derived classes. An instance of Observer does not call this method directly: instead, it will be called by the observables the instance registered with when they need to notify any changes.

Reimplemented from GenericEngine.