|
QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
#include <hestonslvprocess.hpp>
Inheritance diagram for HestonSLVProcess:
Collaboration diagram for HestonSLVProcess:Public Member Functions | |
| HestonSLVProcess (const ext::shared_ptr< HestonProcess > &hestonProcess, ext::shared_ptr< LocalVolTermStructure > leverageFct, Real mixingFactor=1.0) | |
| Size | size () const override |
| returns the number of dimensions of the stochastic process More... | |
| Size | factors () const override |
| returns the number of independent factors of the process More... | |
| void | update () override |
| Array | initialValues () const override |
| returns the initial values of the state variables More... | |
| Array | apply (const Array &x0, const Array &dx) const override |
| Array | drift (Time t, const Array &x) const override |
| returns the drift part of the equation, i.e., \( \mu(t, \mathrm{x}_t) \) More... | |
| Matrix | diffusion (Time t, const Array &x) const override |
| returns the diffusion part of the equation, i.e. \( \sigma(t, \mathrm{x}_t) \) More... | |
| Array | evolve (Time t0, const Array &x0, Time dt, const Array &dw) const override |
| Real | v0 () const |
| Real | rho () const |
| Real | kappa () const |
| Real | theta () const |
| Real | sigma () const |
| Real | mixingFactor () const |
| ext::shared_ptr< LocalVolTermStructure > | leverageFct () const |
| const Handle< Quote > & | s0 () const |
| const Handle< YieldTermStructure > & | dividendYield () const |
| const Handle< YieldTermStructure > & | riskFreeRate () const |
| Time | time (const Date &d) const override |
Public Member Functions inherited from StochasticProcess | |
| ~StochasticProcess () override=default | |
| virtual Array | expectation (Time t0, const Array &x0, Time dt) const |
| virtual Matrix | stdDeviation (Time t0, const Array &x0, Time dt) const |
| virtual Matrix | covariance (Time t0, const Array &x0, Time dt) const |
| void | update () override |
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 () |
Private Member Functions | |
| void | setParameters () |
Private Attributes | |
| Real | kappa_ |
| Real | theta_ |
| Real | sigma_ |
| Real | rho_ |
| Real | v0_ |
| Real | mixingFactor_ |
| Real | mixedSigma_ |
| const ext::shared_ptr< HestonProcess > | hestonProcess_ |
| const ext::shared_ptr< LocalVolTermStructure > | leverageFct_ |
Additional Inherited Members | |
Public Types inherited from Observer | |
| typedef set_type::iterator | iterator |
Protected Member Functions inherited from StochasticProcess | |
| StochasticProcess ()=default | |
| StochasticProcess (ext::shared_ptr< discretization >) | |
Protected Attributes inherited from StochasticProcess | |
| ext::shared_ptr< discretization > | discretization_ |
Definition at line 33 of file hestonslvprocess.hpp.
| HestonSLVProcess | ( | const ext::shared_ptr< HestonProcess > & | hestonProcess, |
| ext::shared_ptr< LocalVolTermStructure > | leverageFct, | ||
| Real | mixingFactor = 1.0 |
||
| ) |
|
overridevirtual |
returns the number of dimensions of the stochastic process
Implements StochasticProcess.
Definition at line 39 of file hestonslvprocess.hpp.
|
overridevirtual |
returns the number of independent factors of the process
Reimplemented from StochasticProcess.
Definition at line 40 of file hestonslvprocess.hpp.
|
overridevirtual |
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.
Definition at line 41 of file hestonslvprocess.cpp.
Here is the call graph for this function:
|
overridevirtual |
returns the initial values of the state variables
Implements StochasticProcess.
Definition at line 44 of file hestonslvprocess.hpp.
applies a change to the asset value. By default, it returns \( \mathrm{x} + \Delta \mathrm{x} \).
Reimplemented from StochasticProcess.
Definition at line 47 of file hestonslvprocess.hpp.
returns the drift part of the equation, i.e., \( \mu(t, \mathrm{x}_t) \)
Implements StochasticProcess.
Definition at line 46 of file hestonslvprocess.cpp.
Here is the call graph for this function:returns the diffusion part of the equation, i.e. \( \sigma(t, \mathrm{x}_t) \)
Implements StochasticProcess.
Definition at line 61 of file hestonslvprocess.cpp.
returns the asset value after a time interval \( \Delta t \) according to the given discretization. By default, it returns
\[ E(\mathrm{x}_0,t_0,\Delta t) + S(\mathrm{x}_0,t_0,\Delta t) \cdot \Delta \mathrm{w} \]
where \( E \) is the expectation and \( S \) the standard deviation.
Reimplemented from StochasticProcess.
Definition at line 76 of file hestonslvprocess.cpp.
Here is the call graph for this function:| Real v0 | ( | ) | const |
Definition at line 55 of file hestonslvprocess.hpp.
| Real rho | ( | ) | const |
Definition at line 56 of file hestonslvprocess.hpp.
| Real kappa | ( | ) | const |
Definition at line 57 of file hestonslvprocess.hpp.
| Real theta | ( | ) | const |
Definition at line 58 of file hestonslvprocess.hpp.
| Real sigma | ( | ) | const |
Definition at line 59 of file hestonslvprocess.hpp.
| Real mixingFactor | ( | ) | const |
Definition at line 60 of file hestonslvprocess.hpp.
| ext::shared_ptr< LocalVolTermStructure > leverageFct | ( | ) | const |
Definition at line 61 of file hestonslvprocess.hpp.
Definition at line 65 of file hestonslvprocess.hpp.
| const Handle< YieldTermStructure > & dividendYield | ( | ) | const |
| const Handle< YieldTermStructure > & riskFreeRate | ( | ) | const |
returns the time value corresponding to the given date in the reference system of the stochastic process.
Reimplemented from StochasticProcess.
Definition at line 73 of file hestonslvprocess.hpp.
|
private |
|
private |
Definition at line 76 of file hestonslvprocess.hpp.
|
private |
Definition at line 76 of file hestonslvprocess.hpp.
|
private |
Definition at line 76 of file hestonslvprocess.hpp.
|
private |
Definition at line 76 of file hestonslvprocess.hpp.
|
private |
Definition at line 76 of file hestonslvprocess.hpp.
|
private |
Definition at line 76 of file hestonslvprocess.hpp.
|
private |
Definition at line 76 of file hestonslvprocess.hpp.
|
private |
Definition at line 78 of file hestonslvprocess.hpp.
|
private |
Definition at line 79 of file hestonslvprocess.hpp.