Logo
Reference manual - version ored_version
Public Types | Public Member Functions | List of all members
LgmData Class Reference

Linear Gauss Markov Model Parameters. More...

#include <ored/model/lgmdata.hpp>

+ Inheritance diagram for LgmData:

Public Types

enum class  ReversionType { HullWhite , Hagan }
 Supported mean reversion types. More...
 
enum class  VolatilityType { HullWhite , Hagan }
 Supported volatility types. More...
 

Public Member Functions

 LgmData ()
 Default constructor.
 
 LgmData (std::string qualifier, CalibrationType calibrationType, ReversionType revType, VolatilityType volType, bool calibrateH, ParamType hType, std::vector< Time > hTimes, std::vector< Real > hValues, bool calibrateA, ParamType aType, std::vector< Time > aTimes, std::vector< Real > aValues, Real shiftHorizon=0.0, Real scaling=1.0, std::vector< std::string > optionExpiries=std::vector< std::string >(), std::vector< std::string > optionTerms=std::vector< std::string >(), std::vector< std::string > optionStrikes=std::vector< std::string >())
 Detailed constructor.
 
void clear () override
 Clear list of calibration instruments.
 
void reset () override
 Reset member variables to defaults.
 
Serialisation
virtual void fromXML (XMLNode *node) override
 
virtual XMLNodetoXML (XMLDocument &doc) override
 
Setters/Getters
ReversionTypereversionType ()
 
VolatilityTypevolatilityType ()
 
bool & calibrateH ()
 
ParamTypehParamType ()
 
std::vector< Time > & hTimes ()
 
std::vector< Real > & hValues ()
 
bool & calibrateA ()
 
ParamTypeaParamType ()
 
std::vector< Time > & aTimes ()
 
std::vector< Real > & aValues ()
 
Real & shiftHorizon ()
 
Real & scaling ()
 
std::vector< std::string > & optionExpiries ()
 
std::vector< std::string > & optionTerms ()
 
std::vector< std::string > & optionStrikes ()
 
- Public Member Functions inherited from IrModelData
 IrModelData (const std::string &name)
 minimal constructor
 
 IrModelData (const std::string &name, const std::string &qualifier, CalibrationType calibrationType)
 Detailed constructor.
 
const std::string & name ()
 
std::string & qualifier ()
 
CalibrationTypecalibrationType ()
 
virtual std::string ccy () const
 
- Public Member Functions inherited from XMLSerializable
void fromFile (const std::string &filename)
 
void toFile (const std::string &filename)
 
void fromXMLString (const std::string &xml)
 Parse from XML string.
 
std::string toXMLString ()
 Parse from XML string.
 

Operators

bool operator== (const LgmData &rhs)
 
bool operator!= (const LgmData &rhs)
 

Additional Inherited Members

- Protected Attributes inherited from IrModelData
std::string name_
 
std::string qualifier_
 
CalibrationType calibrationType_
 

Detailed Description

Linear Gauss Markov Model Parameters.

This class contains the description of a Linear Gauss Markov interest rate model and instructions for how to calibrate it.

Member Enumeration Documentation

◆ ReversionType

enum ReversionType
strong

Supported mean reversion types.

Enumerator
HullWhite 

Parametrize H(t) via Hull-White mean reversion speed, LGM H(t) = int_0^t exp(-kappa(s) *s) ds with constant or piecewise kappa(s)

Hagan 

Parametrize LGM H(t) as H(t) = int_0^t h(s) ds with constant or piecewise h(s)

◆ VolatilityType

enum VolatilityType
strong

Supported volatility types.

Enumerator
HullWhite 

Parametrize volatility as HullWhite sigma(t)

Hagan 

Parametrize volatility as Hagan alpha(t)