QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
BatesModel Class Reference

Bates stochastic-volatility model. More...

#include <batesmodel.hpp>

+ Inheritance diagram for BatesModel:
+ Collaboration diagram for BatesModel:

Public Member Functions

 BatesModel (const ext::shared_ptr< BatesProcess > &process)
 
Real nu () const
 
Real delta () const
 
Real lambda () const
 
- Public Member Functions inherited from HestonModel
 HestonModel (const ext::shared_ptr< HestonProcess > &process)
 
Real theta () const
 
Real kappa () const
 
Real sigma () const
 
Real rho () const
 
Real v0 () const
 
ext::shared_ptr< HestonProcess > process () const
 
- Public Member Functions inherited from CalibratedModel
 CalibratedModel (Size nArguments)
 
void update () override
 
virtual void calibrate (const std::vector< ext::shared_ptr< CalibrationHelper > > &, OptimizationMethod &method, const EndCriteria &endCriteria, const Constraint &constraint=Constraint(), const std::vector< Real > &weights=std::vector< Real >(), const std::vector< bool > &fixParameters=std::vector< bool >())
 Calibrate to a set of market instruments (usually caps/swaptions) More...
 
Real value (const Array &params, const std::vector< ext::shared_ptr< CalibrationHelper > > &)
 
const ext::shared_ptr< Constraint > & constraint () const
 
EndCriteria::Type endCriteria () const
 Returns end criteria result. More...
 
const Array & problemValues () const
 Returns the problem values. More...
 
Array params () const
 Returns array of arguments on which calibration is done. More...
 
virtual void setParams (const Array &params)
 
Integer functionEvaluation () const
 
- Public Member Functions inherited from Observer
 Observer ()=default
 
 Observer (const Observer &)
 
Observer & operator= (const Observer &)
 
virtual ~Observer ()
 
std::pair< iterator, bool > registerWith (const ext::shared_ptr< Observable > &)
 
void registerWithObservables (const ext::shared_ptr< Observer > &)
 
Size unregisterWith (const ext::shared_ptr< Observable > &)
 
void unregisterWithAll ()
 
virtual void update ()=0
 
virtual void deepUpdate ()
 
- Public Member Functions inherited from Observable
 Observable ()=default
 
 Observable (const Observable &)
 
Observable & operator= (const Observable &)
 
 Observable (Observable &&)=delete
 
Observable & operator= (Observable &&)=delete
 
virtual ~Observable ()=default
 
void notifyObservers ()
 

Protected Member Functions

void generateArguments () override
 
- Protected Member Functions inherited from HestonModel
void generateArguments () override
 
virtual void generateArguments ()
 

Additional Inherited Members

- Public Types inherited from Observer
typedef set_type::iterator iterator
 
- Protected Attributes inherited from HestonModel
ext::shared_ptr< HestonProcess > process_
 
- Protected Attributes inherited from CalibratedModel
std::vector< Parameter > arguments_
 
ext::shared_ptr< Constraint > constraint_
 
EndCriteria::Type shortRateEndCriteria_ = EndCriteria::None
 
Array problemValues_
 
Integer functionEvaluation_
 

Detailed Description

Bates stochastic-volatility model.

extended versions of Heston model for the stochastic volatility of an asset including jumps.

References: 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:
calibration is tested against known values.

Definition at line 43 of file batesmodel.hpp.

Constructor & Destructor Documentation

◆ BatesModel()

BatesModel ( const ext::shared_ptr< BatesProcess > &  process)
explicit

Definition at line 25 of file batesmodel.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ nu()

Real nu ( ) const

Definition at line 47 of file batesmodel.hpp.

+ Here is the caller graph for this function:

◆ delta()

Real delta ( ) const

Definition at line 48 of file batesmodel.hpp.

+ Here is the caller graph for this function:

◆ lambda()

Real lambda ( ) const

Definition at line 49 of file batesmodel.hpp.

+ Here is the caller graph for this function:

◆ generateArguments()

void generateArguments ( )
overrideprotectedvirtual

Reimplemented from CalibratedModel.

Definition at line 39 of file batesmodel.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function: