EQ Black Scholes constant parametrization. More...
#include <qle/models/eqbspiecewiseconstantparametrization.hpp>
Public Member Functions | |
EqBsPiecewiseConstantParametrization (const Currency ¤cy, const std::string &eqName, const Handle< Quote > &eqSpotToday, const Handle< Quote > &fxSpotToday, const Array ×, const Array &sigma, const Handle< YieldTermStructure > &eqIrCurveToday, const Handle< YieldTermStructure > &eqDivYieldCurveToday) | |
EqBsPiecewiseConstantParametrization (const Currency ¤cy, const std::string &eqName, const Handle< Quote > &eqSpotToday, const Handle< Quote > &fxSpotToday, const std::vector< Date > &dates, const Array &sigma, const Handle< YieldTermStructure > &domesticTermStructure, const Handle< YieldTermStructure > &eqIrCurveToday, const Handle< YieldTermStructure > &eqDivYieldCurveToday) | |
Real | variance (const Time t) const override |
Real | sigma (const Time t) const override |
const Array & | parameterTimes (const Size) const override |
const QuantLib::ext::shared_ptr< Parameter > | parameter (const Size) const override |
void | update () const override |
Public Member Functions inherited from EqBsParametrization | |
EqBsParametrization (const Currency &eqCcy, const std::string &eqName, const Handle< Quote > &equitySpotToday, const Handle< Quote > &fxSpotToday, const Handle< YieldTermStructure > &equityIrCurveToday, const Handle< YieldTermStructure > &equityDivYieldCurveToday) | |
virtual Real | variance (const Time t) const =0 |
virtual Real | sigma (const Time t) const |
virtual Real | stdDeviation (const Time t) const |
const Handle< Quote > | eqSpotToday () const |
const Handle< Quote > | fxSpotToday () const |
const Handle< YieldTermStructure > | equityIrCurveToday () const |
const Handle< YieldTermStructure > | equityDivYieldCurveToday () const |
Size | numberOfParameters () 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 Member Functions | |
Real | direct (const Size i, const Real x) const override |
Real | inverse (const Size i, const Real y) const override |
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 |
Private Member Functions | |
void | initialize (const Array &sigma) |
Private Member Functions inherited from PiecewiseConstantHelper1 | |
PiecewiseConstantHelper1 (const Array &t, const QuantLib::ext::shared_ptr< QuantLib::Constraint > &constraint=QuantLib::ext::make_shared< QuantLib::NoConstraint >()) | |
PiecewiseConstantHelper1 (const std::vector< Date > &dates, const Handle< YieldTermStructure > &yts, const QuantLib::ext::shared_ptr< QuantLib::Constraint > &constraint=QuantLib::ext::make_shared< QuantLib::NoConstraint >()) | |
const Array & | t () const |
const QuantLib::ext::shared_ptr< Parameter > | p () const |
void | update () const |
Real | y (const Time t) const |
Real | int_y_sqr (const Time t) const |
int_0^t y^2(s) ds More... | |
Real | direct (const Real x) const |
Real | inverse (const Real y) const |
Additional Inherited Members | |
Protected Attributes inherited from Parametrization | |
const Real | h_ |
const Real | h2_ |
Private Attributes inherited from PiecewiseConstantHelper1 | |
const Array | t_ |
const QuantLib::ext::shared_ptr< PseudoParameter > | y_ |
EQ Black Scholes constant parametrization.
EQ Black Scholes parametrization with piecewise constant volatility
Definition at line 36 of file eqbspiecewiseconstantparametrization.hpp.
EqBsPiecewiseConstantParametrization | ( | const Currency & | currency, |
const std::string & | eqName, | ||
const Handle< Quote > & | eqSpotToday, | ||
const Handle< Quote > & | fxSpotToday, | ||
const Array & | times, | ||
const Array & | sigma, | ||
const Handle< YieldTermStructure > & | eqIrCurveToday, | ||
const Handle< YieldTermStructure > & | eqDivYieldCurveToday | ||
) |
The currency refers to the equity currency, the spots are as of today (i.e. the discounted spot)
Definition at line 23 of file eqbspiecewiseconstantparametrization.cpp.
EqBsPiecewiseConstantParametrization | ( | const Currency & | currency, |
const std::string & | eqName, | ||
const Handle< Quote > & | eqSpotToday, | ||
const Handle< Quote > & | fxSpotToday, | ||
const std::vector< Date > & | dates, | ||
const Array & | sigma, | ||
const Handle< YieldTermStructure > & | domesticTermStructure, | ||
const Handle< YieldTermStructure > & | eqIrCurveToday, | ||
const Handle< YieldTermStructure > & | eqDivYieldCurveToday | ||
) |
The term structure is needed in addition because it it's day counter and reference date is needed to convert dates to times. It should be the term structure of the domestic IR component in the cross asset model, since this is defining the model's date-time conversion in more general terms.
Definition at line 32 of file eqbspiecewiseconstantparametrization.cpp.
|
overridevirtual |
must satisfy variance(0) = 0.0, variance'(t) >= 0
Implements EqBsParametrization.
Definition at line 81 of file eqbspiecewiseconstantparametrization.hpp.
|
overridevirtual |
is supposed to be positive
Reimplemented from EqBsParametrization.
Definition at line 85 of file eqbspiecewiseconstantparametrization.hpp.
|
overridevirtual |
the times associated to parameter i
Reimplemented from Parametrization.
Definition at line 87 of file eqbspiecewiseconstantparametrization.hpp.
|
overridevirtual |
the parameter storing the raw parameter values
Reimplemented from Parametrization.
Definition at line 92 of file eqbspiecewiseconstantparametrization.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.
Definition at line 97 of file eqbspiecewiseconstantparametrization.hpp.
|
overrideprotectedvirtual |
transformations between raw and actual parameters
Reimplemented from Parametrization.
Definition at line 73 of file eqbspiecewiseconstantparametrization.hpp.
|
overrideprotectedvirtual |
Reimplemented from Parametrization.
Definition at line 77 of file eqbspiecewiseconstantparametrization.hpp.
|
private |
Definition at line 42 of file eqbspiecewiseconstantparametrization.cpp.