QuantLib: a free/open-source library for quantitative finance
Fully annotated sources - version 1.32
|
Pricing engine for European continuous geometric average price Asian. More...
#include <ql/experimental/asian/analytic_cont_geom_av_price_heston.hpp>
Public Member Functions | |
AnalyticContinuousGeometricAveragePriceAsianHestonEngine (ext::shared_ptr< HestonProcess > process, Size summationCutoff=50, Real xiRightLimit=100.0) | |
void | calculate () const override |
std::complex< Real > | Phi (const std::complex< Real > &s, const std::complex< Real > &w, Real T, Real t=0.0, Size cutoff=50) const |
Public Member Functions inherited from GenericEngine< ContinuousAveragingAsianOption::arguments, ContinuousAveragingAsianOption::results > | |
PricingEngine::arguments * | getArguments () const override |
const PricingEngine::results * | getResults () const override |
void | reset () override |
void | update () override |
Public Member Functions inherited from PricingEngine | |
~PricingEngine () override=default | |
virtual arguments * | getArguments () const =0 |
virtual const results * | getResults () const =0 |
virtual void | reset ()=0 |
virtual void | calculate () const =0 |
Public Member Functions inherited from Observable | |
Observable () | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
Observable (Observable &&)=delete | |
Observable & | operator= (Observable &&)=delete |
virtual | ~Observable ()=default |
void | notifyObservers () |
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 () |
Private Member Functions | |
std::complex< Real > | z1_f (const std::complex< Real > &s, const std::complex< Real > &w, Real T) const |
std::complex< Real > | z2_f (const std::complex< Real > &s, const std::complex< Real > &w, Real T) const |
std::complex< Real > | z3_f (const std::complex< Real > &s, const std::complex< Real > &w, Real T) const |
std::complex< Real > | z4_f (const std::complex< Real > &s, const std::complex< Real > &w) const |
std::pair< std::complex< Real >, std::complex< Real > > | F_F_tilde (const std::complex< Real > &z1, const std::complex< Real > &z2, const std::complex< Real > &z3, const std::complex< Real > &z4, Real tau, Size cutoff=50) const |
std::complex< Real > | f (const std::complex< Real > &z1, const std::complex< Real > &z2, const std::complex< Real > &z3, const std::complex< Real > &z4, int n, Real tau) const |
Private Attributes | |
Real | v0_ |
Real | rho_ |
Real | kappa_ |
Real | theta_ |
Real | sigma_ |
Handle< YieldTermStructure > | dividendYield_ |
Handle< YieldTermStructure > | riskFreeRate_ |
Handle< Quote > | s0_ |
ext::shared_ptr< HestonProcess > | process_ |
Real | a1_ |
Real | a2_ |
Real | a3_ = 0.0 |
Real | a4_ = 0.0 |
Real | a5_ = 0.0 |
std::map< int, std::complex< Real > > | fLookupTable_ |
Size | summationCutoff_ |
Real | xiRightLimit_ |
GaussLegendreIntegration | integrator_ |
Additional Inherited Members | |
Public Types inherited from Observer | |
typedef set_type::iterator | iterator |
Protected Attributes inherited from GenericEngine< ContinuousAveragingAsianOption::arguments, ContinuousAveragingAsianOption::results > | |
ContinuousAveragingAsianOption::arguments | arguments_ |
ContinuousAveragingAsianOption::results | results_ |
Pricing engine for European continuous geometric average price Asian.
This class implements a continuous geometric average price Asian option with European exercise under the Heston stochastic vol model where spot and variance follow the processes
\[ \begin{array}{rcl} dS(t, S) &=& (r-d) S dt +\sqrt{v} S dW_1 \\ dv(t, S) &=& \kappa (\theta - v) dt + \sigma \sqrt{v} dW_2 \\ dW_1 dW_2 &=& \rho dt \\ \end{array} \]
References:
Implements the analytical solution for continuous geometric Asian options developed in "Pricing of geometric Asian options under Heston's stochastic volatility model", B. Kim & I. S. Wee, Quantative Finance 14:10, 1795-1809 (2014)
Definition at line 65 of file analytic_cont_geom_av_price_heston.hpp.
|
explicit |
Definition at line 75 of file analytic_cont_geom_av_price_heston.cpp.
|
overridevirtual |
Implements PricingEngine.
Definition at line 208 of file analytic_cont_geom_av_price_heston.cpp.
std::complex< Real > Phi | ( | const std::complex< Real > & | s, |
const std::complex< Real > & | w, | ||
Real | T, | ||
Real | t = 0.0 , |
||
Size | cutoff = 50 |
||
) | const |
Definition at line 184 of file analytic_cont_geom_av_price_heston.cpp.
|
private |
Definition at line 98 of file analytic_cont_geom_av_price_heston.cpp.
|
private |
Definition at line 103 of file analytic_cont_geom_av_price_heston.cpp.
|
private |
Definition at line 108 of file analytic_cont_geom_av_price_heston.cpp.
|
private |
Definition at line 113 of file analytic_cont_geom_av_price_heston.cpp.
|
private |
Definition at line 162 of file analytic_cont_geom_av_price_heston.cpp.
|
private |
Definition at line 118 of file analytic_cont_geom_av_price_heston.cpp.
|
private |
Definition at line 82 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 82 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 82 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 82 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 82 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 83 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 84 of file analytic_cont_geom_av_price_heston.hpp.
Definition at line 85 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 87 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 90 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 90 of file analytic_cont_geom_av_price_heston.hpp.
|
mutableprivate |
Definition at line 91 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 91 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 91 of file analytic_cont_geom_av_price_heston.hpp.
|
mutableprivate |
Definition at line 94 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 97 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 98 of file analytic_cont_geom_av_price_heston.hpp.
|
private |
Definition at line 101 of file analytic_cont_geom_av_price_heston.hpp.