- QuantLib
- AnalyticHestonEngine
analytic Heston-model engine based on Fourier transform More...
#include <ql/pricingengines/vanilla/analytichestonengine.hpp>
Public Types | |
enum | ComplexLogFormula { Gatheral, BranchCorrection } |
Public Member Functions | |
AnalyticHestonEngine (const boost::shared_ptr< HestonModel > &model, Real relTolerance, Size maxEvaluations) | |
AnalyticHestonEngine (const boost::shared_ptr< HestonModel > &model, Size integrationOrder=144) | |
AnalyticHestonEngine (const boost::shared_ptr< HestonModel > &model, ComplexLogFormula cpxLog, const Integration &itg) | |
void | calculate () const |
Size | numberOfEvaluations () const |
Static Public Member Functions | |
static void | doCalculation (Real riskFreeDiscount, Real dividendDiscount, Real spotPrice, Real strikePrice, Real term, Real kappa, Real theta, Real sigma, Real v0, Real rho, const TypePayoff &type, const Integration &integration, const ComplexLogFormula cpxLog, const AnalyticHestonEngine *const enginePtr, Real &value, Size &evaluations) |
Protected Member Functions | |
virtual std::complex< Real > | addOnTerm (Real phi, Time t, Size j) const |
analytic Heston-model engine based on Fourier transform
Integration detail: Two algebraically equivalent formulations of the complex logarithm of the Heston model exist. Gatherals [2005] (also Duffie, Pan and Singleton [2000], and Schoutens, Simons and Tistaert[2004]) version does not cause discoutinuities whereas the original version (e.g. Heston [1993]) needs some sort of "branch correction" to work properly. Gatheral's version does also work with adaptive integration routines and should be preferred over the original Heston version.
References:
Heston, Steven L., 1993. A Closed-Form Solution for Options with Stochastic Volatility with Applications to Bond and Currency Options. The review of Financial Studies, Volume 6, Issue 2, 327-343.
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>)
R. Lord and C. Kahl, Why the rotation count algorithm works, http://papers.ssrn.com/sol3/papers.cfm?abstract_id=921335
H. Albrecher, P. Mayer, W.Schoutens and J. Tistaert, The Little Heston Trap, http://www.schoutens.be/HestonTrap.pdf
J. Gatheral, The Volatility Surface: A Practitioner's Guide, Wiley Finance