QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.12
Public Member Functions | List of all members
FdHestonVanillaEngine Class Reference

Finite-Differences Heston Vanilla Option engine. More...

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

+ Inheritance diagram for FdHestonVanillaEngine:

Public Member Functions

 FdHestonVanillaEngine (const boost::shared_ptr< HestonModel > &model, Size tGrid=100, Size xGrid=100, Size vGrid=50, Size dampingSteps=0, const FdmSchemeDesc &schemeDesc=FdmSchemeDesc::Hundsdorfer(), const boost::shared_ptr< LocalVolTermStructure > &leverageFct=boost::shared_ptr< LocalVolTermStructure >())
 
void calculate () const
 
void update ()
 
void enableMultipleStrikesCaching (const std::vector< Real > &strikes)
 
FdmSolverDesc getSolverDesc (Real equityScaleFactor) const
 
- Public Member Functions inherited from GenericModelEngine< HestonModel, DividendVanillaOption::arguments, DividendVanillaOption::results >
 GenericModelEngine (const Handle< HestonModel > &model=Handle< HestonModel >())
 
 GenericModelEngine (const boost::shared_ptr< HestonModel > &model)
 
- Public Member Functions inherited from GenericEngine< DividendVanillaOption::arguments, DividendVanillaOption::results >
PricingEngine::arguments * getArguments () const
 
const PricingEngine::results * getResults () const
 
void reset ()
 
void update ()
 
- Public Member Functions inherited from Observable
 Observable (const Observable &)
 
Observableoperator= (const Observable &)
 
void notifyObservers ()
 
- Public Member Functions inherited from Observer
 Observer (const Observer &)
 
Observeroperator= (const Observer &)
 
std::pair< iterator, bool > registerWith (const boost::shared_ptr< Observable > &)
 
void registerWithObservables (const boost::shared_ptr< Observer > &)
 
Size unregisterWith (const boost::shared_ptr< Observable > &)
 
void unregisterWithAll ()
 
virtual void deepUpdate ()
 

Additional Inherited Members

- Public Types inherited from Observer
typedef std::set< boost::shared_ptr< Observable > > set_type
 
typedef set_type::iterator iterator
 
- Protected Attributes inherited from GenericModelEngine< HestonModel, DividendVanillaOption::arguments, DividendVanillaOption::results >
Handle< HestonModelmodel_
 
- Protected Attributes inherited from GenericEngine< DividendVanillaOption::arguments, DividendVanillaOption::results >
DividendVanillaOption::arguments arguments_
 
DividendVanillaOption::results results_
 

Detailed Description

Finite-Differences Heston Vanilla Option engine.

Tests:
the correctness of the returned value is tested by reproducing results available in web/literature and comparison with Black pricing.

Member Function Documentation

◆ update()

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.

Implements Observer.