QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Merton-76 jump-diffusion process. More...
#include <merton76process.hpp>
Public Member Functions | |
Merton76Process (const Handle< Quote > &stateVariable, const Handle< YieldTermStructure > ÷ndTS, const Handle< YieldTermStructure > &riskFreeTS, const Handle< BlackVolTermStructure > &blackVolTS, Handle< Quote > jumpInt, Handle< Quote > logJMean, Handle< Quote > logJVol, const ext::shared_ptr< discretization > &d=ext::shared_ptr< discretization >(new EulerDiscretization)) | |
StochasticProcess1D interface | |
Real | x0 () const override |
returns the initial value of the state variable More... | |
Real | drift (Time, Real) const override |
returns the drift part of the equation, i.e. \( \mu(t, x_t) \) More... | |
Real | diffusion (Time, Real) const override |
returns the diffusion part of the equation, i.e. \( \sigma(t, x_t) \) More... | |
Real | apply (Real, Real) const override |
Time | time (const Date &) const override |
Public Member Functions inherited from StochasticProcess1D | |
virtual Real | expectation (Time t0, Real x0, Time dt) const |
virtual Real | stdDeviation (Time t0, Real x0, Time dt) const |
virtual Real | variance (Time t0, Real x0, Time dt) const |
virtual Real | evolve (Time t0, Real x0, Time dt, Real dw) const |
Public Member Functions inherited from StochasticProcess | |
~StochasticProcess () override=default | |
virtual Size | factors () const |
returns the number of independent factors of the process More... | |
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 () | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
Observable (Observable &&)=delete | |
Observable & | operator= (Observable &&)=delete |
virtual | ~Observable ()=default |
void | notifyObservers () |
Inspectors | |
ext::shared_ptr< GeneralizedBlackScholesProcess > | blackProcess_ |
Handle< Quote > | jumpIntensity_ |
Handle< Quote > | logMeanJump_ |
Handle< Quote > | logJumpVolatility_ |
const Handle< Quote > & | stateVariable () const |
const Handle< YieldTermStructure > & | dividendYield () const |
const Handle< YieldTermStructure > & | riskFreeRate () const |
const Handle< BlackVolTermStructure > & | blackVolatility () const |
const Handle< Quote > & | jumpIntensity () const |
const Handle< Quote > & | logMeanJump () const |
const Handle< Quote > & | logJumpVolatility () const |
Additional Inherited Members | |
Public Types inherited from Observer | |
typedef set_type::iterator | iterator |
Protected Member Functions inherited from StochasticProcess1D | |
StochasticProcess1D ()=default | |
StochasticProcess1D (ext::shared_ptr< discretization >) | |
Protected Member Functions inherited from StochasticProcess | |
StochasticProcess ()=default | |
StochasticProcess (ext::shared_ptr< discretization >) | |
Protected Attributes inherited from StochasticProcess1D | |
ext::shared_ptr< discretization > | discretization_ |
Protected Attributes inherited from StochasticProcess | |
ext::shared_ptr< discretization > | discretization_ |
Merton-76 jump-diffusion process.
Definition at line 36 of file merton76process.hpp.
Merton76Process | ( | const Handle< Quote > & | stateVariable, |
const Handle< YieldTermStructure > & | dividendTS, | ||
const Handle< YieldTermStructure > & | riskFreeTS, | ||
const Handle< BlackVolTermStructure > & | blackVolTS, | ||
Handle< Quote > | jumpInt, | ||
Handle< Quote > | logJMean, | ||
Handle< Quote > | logJVol, | ||
const ext::shared_ptr< discretization > & | d = ext::shared_ptr<discretization>(new EulerDiscretization) |
||
) |
|
overridevirtual |
returns the initial value of the state variable
Implements StochasticProcess1D.
Definition at line 45 of file merton76process.cpp.
returns the drift part of the equation, i.e. \( \mu(t, x_t) \)
Implements StochasticProcess1D.
Definition at line 50 of file merton76process.hpp.
returns the diffusion part of the equation, i.e. \( \sigma(t, x_t) \)
Implements StochasticProcess1D.
Definition at line 51 of file merton76process.hpp.
applies a change to the asset value. By default, it returns \( x + \Delta x \).
Reimplemented from StochasticProcess1D.
Definition at line 52 of file merton76process.hpp.
returns the time value corresponding to the given date in the reference system of the stochastic process.
Reimplemented from StochasticProcess.
Definition at line 49 of file merton76process.cpp.
Definition at line 53 of file merton76process.cpp.
const Handle< YieldTermStructure > & dividendYield | ( | ) | const |
Definition at line 57 of file merton76process.cpp.
const Handle< YieldTermStructure > & riskFreeRate | ( | ) | const |
Definition at line 61 of file merton76process.cpp.
const Handle< BlackVolTermStructure > & blackVolatility | ( | ) | const |
Definition at line 66 of file merton76process.cpp.
Definition at line 70 of file merton76process.cpp.
Definition at line 74 of file merton76process.cpp.
Definition at line 78 of file merton76process.cpp.
|
private |
Definition at line 66 of file merton76process.hpp.
Definition at line 67 of file merton76process.hpp.
Definition at line 67 of file merton76process.hpp.
Definition at line 67 of file merton76process.hpp.