LGM 1F Parametrization. More...
#include <qle/models/irlgm1fparametrization.hpp>
Public Member Functions | |
Lgm1fParametrization (const Currency ¤cy, const Handle< TS > &termStructure, const std::string &name=std::string()) | |
virtual Real | zeta (const Time t) const =0 |
virtual Real | H (const Time t) const =0 |
virtual Real | alpha (const Time t) const |
virtual Real | kappa (const Time t) const |
virtual Real | Hprime (const Time t) const |
virtual Real | Hprime2 (const Time t) const |
virtual Real | hullWhiteSigma (const Time t) const |
const Handle< TS > | termStructure () const |
Real | zetan (const Size n, const Time t, const QuantLib::ext::shared_ptr< Integrator > &integrator) |
Real & | shift () |
Real & | scaling () |
Size | numberOfParameters () const override |
void | update () const override |
Public Member Functions inherited from Parametrization | |
Parametrization (const Currency ¤cy, const std::string &name="") | |
virtual | ~Parametrization () |
virtual const Currency & | currency () const |
virtual const Array & | parameterTimes (const Size) const |
virtual Size | numberOfParameters () const |
virtual Array | parameterValues (const Size) const |
virtual const QuantLib::ext::shared_ptr< Parameter > | parameter (const Size) const |
virtual void | update () const |
const std::string & | name () const |
virtual Real | direct (const Size, const Real x) const |
virtual Real | inverse (const Size, const Real y) const |
Protected Attributes | |
Real | shift_ |
Real | scaling_ |
Protected Attributes inherited from Parametrization | |
const Real | h_ |
const Real | h2_ |
Private Attributes | |
const Handle< TS > | termStructure_ |
std::map< std::pair< Size, Real >, Real > | zetan_cached_ |
Additional Inherited Members | |
Protected Member Functions inherited from Parametrization | |
Time | tr (const Time t) const |
Time | tl (const Time t) const |
Time | tr2 (const Time t) const |
Time | tm2 (const Time t) const |
Time | tl2 (const Time t) const |
LGM 1F Parametrization.
Definition at line 40 of file irlgm1fparametrization.hpp.
Lgm1fParametrization | ( | const Currency & | currency, |
const Handle< TS > & | termStructure, | ||
const std::string & | name = std::string() |
||
) |
Definition at line 82 of file irlgm1fparametrization.hpp.
|
pure virtual |
zeta must satisfy zeta(0) = 0, zeta'(t) >= 0
Implemented in Lgm1fConstantParametrization< TS >, Lgm1fPiecewiseConstantHullWhiteAdaptor< TS >, Lgm1fPiecewiseConstantParametrization< TS >, and Lgm1fPiecewiseLinearParametrization< TS >.
|
pure virtual |
H must be such that H' does not change its sign
Implemented in Lgm1fConstantParametrization< TS >, Lgm1fPiecewiseConstantHullWhiteAdaptor< TS >, Lgm1fPiecewiseConstantParametrization< TS >, and Lgm1fPiecewiseLinearParametrization< TS >.
|
virtual |
Reimplemented in Lgm1fConstantParametrization< TS >, Lgm1fPiecewiseConstantHullWhiteAdaptor< TS >, Lgm1fPiecewiseConstantParametrization< TS >, and Lgm1fPiecewiseLinearParametrization< TS >.
Definition at line 89 of file irlgm1fparametrization.hpp.
|
virtual |
Reimplemented in Lgm1fConstantParametrization< TS >, Lgm1fPiecewiseConstantHullWhiteAdaptor< TS >, Lgm1fPiecewiseConstantParametrization< TS >, and Lgm1fPiecewiseLinearParametrization< TS >.
Definition at line 105 of file irlgm1fparametrization.hpp.
|
virtual |
Reimplemented in Lgm1fConstantParametrization< TS >, Lgm1fPiecewiseConstantHullWhiteAdaptor< TS >, Lgm1fPiecewiseConstantParametrization< TS >, and Lgm1fPiecewiseLinearParametrization< TS >.
Definition at line 93 of file irlgm1fparametrization.hpp.
|
virtual |
Reimplemented in Lgm1fConstantParametrization< TS >, Lgm1fPiecewiseConstantHullWhiteAdaptor< TS >, Lgm1fPiecewiseConstantParametrization< TS >, and Lgm1fPiecewiseLinearParametrization< TS >.
Definition at line 97 of file irlgm1fparametrization.hpp.
|
virtual |
Reimplemented in Lgm1fPiecewiseConstantHullWhiteAdaptor< TS >.
Definition at line 101 of file irlgm1fparametrization.hpp.
const Handle< TS > termStructure |
Definition at line 107 of file irlgm1fparametrization.hpp.
Real zetan | ( | const Size | n, |
const Time | t, | ||
const QuantLib::ext::shared_ptr< Integrator > & | integrator | ||
) |
\[ \int_0^t alpha^2(u) H^n(u) du \]
Definition at line 114 of file irlgm1fparametrization.hpp.
Real & shift |
allows to apply a shift to H (model invariance 1)
Definition at line 109 of file irlgm1fparametrization.hpp.
Real & scaling |
allows to apply a scaling to H and zeta (model invariance 2), note that if a non unit scaling is provided, then the parameterValues method returns the unscaled alpha, while all other methods return scaled (and shifted) values
Definition at line 111 of file irlgm1fparametrization.hpp.
|
overridevirtual |
the number of parameters in this parametrization
Reimplemented from Parametrization.
Definition at line 67 of file irlgm1fparametrization.hpp.
|
overridevirtual |
this method should be called when input parameters linked via references or pointers change in order to ensure consistent results
Reimplemented from Parametrization.
Reimplemented in Lgm1fPiecewiseConstantHullWhiteAdaptor< TS >, Lgm1fPiecewiseConstantParametrization< TS >, and Lgm1fPiecewiseLinearParametrization< TS >.
Definition at line 130 of file irlgm1fparametrization.hpp.
|
protected |
Definition at line 72 of file irlgm1fparametrization.hpp.
|
protected |
Definition at line 72 of file irlgm1fparametrization.hpp.
|
private |
Definition at line 75 of file irlgm1fparametrization.hpp.
|
mutableprivate |
Definition at line 76 of file irlgm1fparametrization.hpp.