Logo
Reference manual - version qle_version
Public Types | Public Member Functions | List of all members
HwModel Class Reference
+ Inheritance diagram for HwModel:

Public Types

enum class  Discretization { Euler , Exact }
 
- Public Types inherited from IrModel
enum class  Measure { LGM , BA }
 

Public Member Functions

 HwModel (const boost::shared_ptr< IrHwParametrization > &parametrization, const Measure measure=Measure::BA, const Discretization discretization=Discretization::Euler, const bool evaluateBankAccount=true)
 
Measure measure () const override
 
const boost::shared_ptr< ParametrizationparametrizationBase () const override
 
Handle< YieldTermStructure > termStructure () const override
 
Size n () const override
 
Size m () const override
 
Size n_aux () const override
 
Size m_aux () const override
 
boost::shared_ptr< StochasticProcessstateProcess () const override
 
QuantLib::Real discountBond (const QuantLib::Time t, const QuantLib::Time T, const QuantLib::Array &x, const QuantLib::Handle< QuantLib::YieldTermStructure > &discountCurve=Handle< YieldTermStructure >()) const override
 
QuantLib::Real numeraire (const QuantLib::Time t, const QuantLib::Array &x, const QuantLib::Handle< QuantLib::YieldTermStructure > &discountCurve=Handle< YieldTermStructure >(), const QuantLib::Array &aux=Array()) const override
 
QuantLib::Real shortRate (const QuantLib::Time t, const QuantLib::Array &x, const QuantLib::Handle< QuantLib::YieldTermStructure > &discountCurve=Handle< YieldTermStructure >()) const override
 
const boost::shared_ptr< IrHwParametrizationparametrization () const
 
void update () override
 
void generateArguments () override
 
- Public Member Functions inherited from LinkableCalibratedModel
void update () override
 
virtual void calibrate (const std::vector< boost::shared_ptr< CalibrationHelper > > &, OptimizationMethod &method, const EndCriteria &endCriteria, const Constraint &constraint=Constraint(), const std::vector< Real > &weights=std::vector< Real >(), const std::vector< bool > &fixParameters=std::vector< bool >())
 Calibrate to a set of market instruments (usually caps/swaptions) More...
 
virtual void calibrate (const std::vector< boost::shared_ptr< BlackCalibrationHelper > > &, OptimizationMethod &method, const EndCriteria &endCriteria, const Constraint &constraint=Constraint(), const std::vector< Real > &weights=std::vector< Real >(), const std::vector< bool > &fixParameters=std::vector< bool >())
 for backward compatibility
 
Real value (const Array &params, const std::vector< boost::shared_ptr< CalibrationHelper > > &)
 
Real value (const Array &params, const std::vector< boost::shared_ptr< BlackCalibrationHelper > > &)
 for backward compatibility
 
const boost::shared_ptr< Constraint > & constraint () const
 
EndCriteria::Type endCriteria () const
 Returns end criteria result.
 
const Array & problemValues () const
 Returns the problem values.
 
Array params () const
 Returns array of arguments on which calibration is done.
 
virtual void setParams (const Array &params)
 

Additional Inherited Members

- Protected Attributes inherited from LinkableCalibratedModel
std::vector< boost::shared_ptr< Parameter > > arguments_
 
boost::shared_ptr< Constraintconstraint_
 
EndCriteria::Type endCriteria_
 
Array problemValues_
 

Member Function Documentation

◆ measure()

Measure measure ( ) const
overridevirtual

measure under which the model is operated

Implements IrModel.

◆ parametrizationBase()

const boost::shared_ptr<Parametrization> parametrizationBase ( ) const
overridevirtual

parametrization (as base class)

Implements IrModel.

◆ termStructure()

Handle<YieldTermStructure> termStructure ( ) const
overridevirtual

yield term structure to which the IrModel is (initially) calibrated

Implements IrModel.

◆ n()

Size n ( ) const
overridevirtual

dimension of model state, excluding auxilliary states

Implements IrModel.

◆ m()

Size m ( ) const
overridevirtual

number of Brownians to evolve the state

Implements IrModel.

◆ n_aux()

Size n_aux ( ) const
overridevirtual

(effective) dimension of auxilliary state, typically to evaluate the numeraire in the BA-measure

Implements IrModel.

◆ m_aux()

Size m_aux ( ) const
overridevirtual

(effective) number of Brownians required to evolve the auxilliary state, typcially for exact discretization schemes

Implements IrModel.

◆ stateProcess()

boost::shared_ptr<StochasticProcess> stateProcess ( ) const
overridevirtual

stochastic process, this has dimension n() + n_aux() and m() + m_aux() Brownian drivers

Implements IrModel.

◆ discountBond()

QuantLib::Real discountBond ( const QuantLib::Time  t,
const QuantLib::Time  T,
const QuantLib::Array &  x,
const QuantLib::Handle< QuantLib::YieldTermStructure > &  discountCurve = Handle< YieldTermStructure >() 
) const
overridevirtual

discount bond depending on state (of dimension n())

Implements IrModel.

◆ numeraire()

QuantLib::Real numeraire ( const QuantLib::Time  t,
const QuantLib::Array &  x,
const QuantLib::Handle< QuantLib::YieldTermStructure > &  discountCurve = Handle< YieldTermStructure >(),
const QuantLib::Array &  aux = Array() 
) const
overridevirtual

numeraire depending on state and aux state (of dimensions n(), n_aux()

Implements IrModel.

◆ shortRate()

QuantLib::Real shortRate ( const QuantLib::Time  t,
const QuantLib::Array &  x,
const QuantLib::Handle< QuantLib::YieldTermStructure > &  discountCurve = Handle< YieldTermStructure >() 
) const
overridevirtual

short rate at t

Implements IrModel.

◆ update()

void update ( )
override

observer and linked calibrated model interface