Generic yield volatility curve configuration class. More...
#include <ored/configuration/genericyieldvolcurveconfig.hpp>
Inheritance diagram for GenericYieldVolatilityCurveConfig:
Collaboration diagram for GenericYieldVolatilityCurveConfig:Public Types | |
| enum class | Dimension { ATM , Smile } |
| supported volatility dimensions More... | |
| enum class | VolatilityType { Lognormal , Normal , ShiftedLognormal } |
| enum class | Interpolation { Hagan2002Lognormal = 0 , Hagan2002Normal = 1 , Hagan2002NormalZeroBeta = 2 , Antonov2015FreeBoundaryNormal =3 , KienitzLawsonSwaynePde =4 , FlochKennedy =5 , Linear = 6 } |
| enum class | Extrapolation { None , Flat , Linear } |
Public Member Functions | |
Constructors/Destructors | |
| GenericYieldVolatilityCurveConfig (const std::string &underlyingLabel, const std::string &rootNodeLabel, const std::string &marketDatumInstrumentLabel, const std::string &qualifierLabel, const bool allowSmile, const bool requireSwapIndexBases) | |
| Default constructor. More... | |
| GenericYieldVolatilityCurveConfig (const std::string &underlyingLabel, const std::string &rootNodeLabel, const std::string &marketDatumInstrumentLabel, const std::string &qualifierLabel, const string &curveID, const string &curveDescription, const string &qualifier, const Dimension dimension, const VolatilityType volatilityType, const VolatilityType outputVolatilityType, const Interpolation interpolation, const Extrapolation extrapolation, const vector< string > &optionTenors, const vector< string > &underlyingTenors, const DayCounter &dayCounter, const Calendar &calendar, const BusinessDayConvention &businessDayConvention, const string &shortSwapIndexBase="", const string &swapIndexBase="", const vector< string > &smileOptionTenors=vector< string >(), const vector< string > &smileUnderlyingTenors=vector< string >(), const vector< string > &smileSpreads=vector< string >(), const boost::optional< ParametricSmileConfiguration > ¶metricSmileConfiguration=boost::none) | |
| Detailed constructor. More... | |
| GenericYieldVolatilityCurveConfig (const std::string &underlyingLabel, const std::string &rootNodeLabel, const std::string &qualifierLabel, const string &curveID, const string &curveDescription, const string &qualifier, const std::string &proxySourceCurveId, const std::string &proxySourceShortSwapIndexBase, const std::string &proxySourceSwapIndexBase, const std::string &proxyTargetShortSwapIndexBase, const std::string &proxyTargetSwapIndexBase) | |
| Detailed contructor for proxy config. More... | |
Serialisation | |
| void | fromXML (XMLNode *node) override |
| XMLNode * | toXML (XMLDocument &doc) const override |
Inspectors | |
| const string & | qualifier () const |
| Dimension | dimension () const |
| VolatilityType | volatilityType () const |
| VolatilityType | outputVolatilityType () const |
| Interpolation | interpolation () const |
| Extrapolation | extrapolation () const |
| const vector< string > & | optionTenors () const |
| const vector< string > & | underlyingTenors () const |
| const DayCounter & | dayCounter () const |
| const Calendar & | calendar () const |
| const BusinessDayConvention & | businessDayConvention () const |
| const string & | shortSwapIndexBase () const |
| const string & | swapIndexBase () const |
| const vector< string > & | smileOptionTenors () const |
| const vector< string > & | smileUnderlyingTenors () const |
| const vector< string > & | smileSpreads () const |
| const string & | quoteTag () const |
| const vector< string > & | quotes () override |
| Return all the market quotes required for this config. More... | |
| const std::string & | proxySourceCurveId () const |
| const std::string & | proxySourceShortSwapIndexBase () const |
| const std::string & | proxySourceSwapIndexBase () const |
| const std::string & | proxyTargetShortSwapIndexBase () const |
| const std::string & | proxyTargetSwapIndexBase () const |
| const boost::optional< ParametricSmileConfiguration > | parametricSmileConfiguration () const |
| const ReportConfig & | reportConfig () const |
Public Member Functions inherited from CurveConfig | |
| CurveConfig (const string &curveID, const string &curveDescription, const vector< string > "es=vector< string >()) | |
| Detailed constructor. More... | |
| CurveConfig () | |
| Default constructor. More... | |
| const string & | curveID () const |
| const string & | curveDescription () const |
| const set< string > & | requiredCurveIds (const CurveSpec::CurveType &curveType) const |
| const map< CurveSpec::CurveType, set< string > > & | requiredCurveIds () const |
| string & | curveID () |
| string & | curveDescription () |
| set< string > & | requiredCurveIds (const CurveSpec::CurveType &curveType) |
| map< CurveSpec::CurveType, set< string > > & | requiredCurveIds () |
Public Member Functions inherited from XMLSerializable | |
| virtual | ~XMLSerializable () |
| virtual void | fromXML (XMLNode *node)=0 |
| virtual XMLNode * | toXML (XMLDocument &doc) const =0 |
| void | fromFile (const std::string &filename) |
| void | toFile (const std::string &filename) const |
| void | fromXMLString (const std::string &xml) |
| Parse from XML string. More... | |
| std::string | toXMLString () const |
| Parse from XML string. More... | |
Additional Inherited Members | |
Protected Attributes inherited from CurveConfig | |
| string | curveID_ |
| string | curveDescription_ |
| vector< string > | quotes_ |
| map< CurveSpec::CurveType, set< string > > | requiredCurveIds_ |
Generic yield volatility curve configuration class.
Definition at line 49 of file genericyieldvolcurveconfig.hpp.
|
strong |
supported volatility dimensions
| Enumerator | |
|---|---|
| ATM | |
| Smile | |
Definition at line 52 of file genericyieldvolcurveconfig.hpp.
|
strong |
| Enumerator | |
|---|---|
| Lognormal | |
| Normal | |
| ShiftedLognormal | |
Definition at line 54 of file genericyieldvolcurveconfig.hpp.
|
strong |
| Enumerator | |
|---|---|
| Hagan2002Lognormal | |
| Hagan2002Normal | |
| Hagan2002NormalZeroBeta | |
| Antonov2015FreeBoundaryNormal | |
| KienitzLawsonSwaynePde | |
| FlochKennedy | |
| Linear | |
Definition at line 56 of file genericyieldvolcurveconfig.hpp.
|
strong |
| Enumerator | |
|---|---|
| None | |
| Flat | |
| Linear | |
Definition at line 66 of file genericyieldvolcurveconfig.hpp.
| GenericYieldVolatilityCurveConfig | ( | const std::string & | underlyingLabel, |
| const std::string & | rootNodeLabel, | ||
| const std::string & | marketDatumInstrumentLabel, | ||
| const std::string & | qualifierLabel, | ||
| const bool | allowSmile, | ||
| const bool | requireSwapIndexBases | ||
| ) |
Default constructor.
Definition at line 73 of file genericyieldvolcurveconfig.hpp.
| GenericYieldVolatilityCurveConfig | ( | const std::string & | underlyingLabel, |
| const std::string & | rootNodeLabel, | ||
| const std::string & | marketDatumInstrumentLabel, | ||
| const std::string & | qualifierLabel, | ||
| const string & | curveID, | ||
| const string & | curveDescription, | ||
| const string & | qualifier, | ||
| const Dimension | dimension, | ||
| const VolatilityType | volatilityType, | ||
| const VolatilityType | outputVolatilityType, | ||
| const Interpolation | interpolation, | ||
| const Extrapolation | extrapolation, | ||
| const vector< string > & | optionTenors, | ||
| const vector< string > & | underlyingTenors, | ||
| const DayCounter & | dayCounter, | ||
| const Calendar & | calendar, | ||
| const BusinessDayConvention & | businessDayConvention, | ||
| const string & | shortSwapIndexBase = "", |
||
| const string & | swapIndexBase = "", |
||
| const vector< string > & | smileOptionTenors = vector<string>(), |
||
| const vector< string > & | smileUnderlyingTenors = vector<string>(), |
||
| const vector< string > & | smileSpreads = vector<string>(), |
||
| const boost::optional< ParametricSmileConfiguration > & | parametricSmileConfiguration = boost::none |
||
| ) |
Detailed constructor.
Definition at line 44 of file genericyieldvolcurveconfig.cpp.
Here is the call graph for this function:| GenericYieldVolatilityCurveConfig | ( | const std::string & | underlyingLabel, |
| const std::string & | rootNodeLabel, | ||
| const std::string & | qualifierLabel, | ||
| const string & | curveID, | ||
| const string & | curveDescription, | ||
| const string & | qualifier, | ||
| const std::string & | proxySourceCurveId, | ||
| const std::string & | proxySourceShortSwapIndexBase, | ||
| const std::string & | proxySourceSwapIndexBase, | ||
| const std::string & | proxyTargetShortSwapIndexBase, | ||
| const std::string & | proxyTargetSwapIndexBase | ||
| ) |
Detailed contructor for proxy config.
Definition at line 76 of file genericyieldvolcurveconfig.cpp.
Here is the call graph for this function:
|
overridevirtual |
Implements XMLSerializable.
Definition at line 155 of file genericyieldvolcurveconfig.cpp.
Here is the call graph for this function:
|
overridevirtual |
Implements XMLSerializable.
Definition at line 292 of file genericyieldvolcurveconfig.cpp.
Here is the call graph for this function:| const string & qualifier | ( | ) | const |
Definition at line 114 of file genericyieldvolcurveconfig.hpp.
| Dimension dimension | ( | ) | const |
Definition at line 115 of file genericyieldvolcurveconfig.hpp.
Here is the caller graph for this function:| VolatilityType volatilityType | ( | ) | const |
Definition at line 116 of file genericyieldvolcurveconfig.hpp.
| VolatilityType outputVolatilityType | ( | ) | const |
Definition at line 117 of file genericyieldvolcurveconfig.hpp.
| Interpolation interpolation | ( | ) | const |
Definition at line 118 of file genericyieldvolcurveconfig.hpp.
| Extrapolation extrapolation | ( | ) | const |
Definition at line 119 of file genericyieldvolcurveconfig.hpp.
| const vector< string > & optionTenors | ( | ) | const |
Definition at line 120 of file genericyieldvolcurveconfig.hpp.
| const vector< string > & underlyingTenors | ( | ) | const |
Definition at line 121 of file genericyieldvolcurveconfig.hpp.
| const DayCounter & dayCounter | ( | ) | const |
Definition at line 122 of file genericyieldvolcurveconfig.hpp.
| const Calendar & calendar | ( | ) | const |
Definition at line 123 of file genericyieldvolcurveconfig.hpp.
| const BusinessDayConvention & businessDayConvention | ( | ) | const |
Definition at line 124 of file genericyieldvolcurveconfig.hpp.
| const string & shortSwapIndexBase | ( | ) | const |
Definition at line 125 of file genericyieldvolcurveconfig.hpp.
| const string & swapIndexBase | ( | ) | const |
Definition at line 126 of file genericyieldvolcurveconfig.hpp.
Here is the caller graph for this function:| const vector< string > & smileOptionTenors | ( | ) | const |
Definition at line 127 of file genericyieldvolcurveconfig.hpp.
Here is the caller graph for this function:| const vector< string > & smileUnderlyingTenors | ( | ) | const |
Definition at line 128 of file genericyieldvolcurveconfig.hpp.
Here is the caller graph for this function:| const vector< string > & smileSpreads | ( | ) | const |
Definition at line 129 of file genericyieldvolcurveconfig.hpp.
Here is the caller graph for this function:| const string & quoteTag | ( | ) | const |
Definition at line 130 of file genericyieldvolcurveconfig.hpp.
|
overridevirtual |
Return all the market quotes required for this config.
Reimplemented from CurveConfig.
Definition at line 103 of file genericyieldvolcurveconfig.cpp.
| const std::string & proxySourceCurveId | ( | ) | const |
Definition at line 133 of file genericyieldvolcurveconfig.hpp.
| const std::string & proxySourceShortSwapIndexBase | ( | ) | const |
Definition at line 134 of file genericyieldvolcurveconfig.hpp.
| const std::string & proxySourceSwapIndexBase | ( | ) | const |
Definition at line 135 of file genericyieldvolcurveconfig.hpp.
| const std::string & proxyTargetShortSwapIndexBase | ( | ) | const |
Definition at line 136 of file genericyieldvolcurveconfig.hpp.
| const std::string & proxyTargetSwapIndexBase | ( | ) | const |
Definition at line 137 of file genericyieldvolcurveconfig.hpp.
| const boost::optional< ParametricSmileConfiguration > parametricSmileConfiguration | ( | ) | const |
Definition at line 139 of file genericyieldvolcurveconfig.hpp.
| const ReportConfig & reportConfig | ( | ) | const |
Definition at line 143 of file genericyieldvolcurveconfig.hpp.
| string & qualifier | ( | ) |
Definition at line 148 of file genericyieldvolcurveconfig.hpp.
| Dimension & dimension | ( | ) |
Definition at line 149 of file genericyieldvolcurveconfig.hpp.
| VolatilityType & volatilityType | ( | ) |
Definition at line 150 of file genericyieldvolcurveconfig.hpp.
| VolatilityType & outputVolatilityType | ( | ) |
Definition at line 151 of file genericyieldvolcurveconfig.hpp.
| Interpolation & interpolation | ( | ) |
Definition at line 152 of file genericyieldvolcurveconfig.hpp.
| Extrapolation & extrapolation | ( | ) |
Definition at line 153 of file genericyieldvolcurveconfig.hpp.
| vector< string > & optionTenors | ( | ) |
Definition at line 154 of file genericyieldvolcurveconfig.hpp.
| vector< string > & underlyingTenors | ( | ) |
Definition at line 155 of file genericyieldvolcurveconfig.hpp.
| DayCounter & dayCounter | ( | ) |
Definition at line 156 of file genericyieldvolcurveconfig.hpp.
| Calendar & calendar | ( | ) |
Definition at line 157 of file genericyieldvolcurveconfig.hpp.
| BusinessDayConvention & businessDayConvention | ( | ) |
Definition at line 158 of file genericyieldvolcurveconfig.hpp.
| string & shortSwapIndexBase | ( | ) |
Definition at line 159 of file genericyieldvolcurveconfig.hpp.
| string & swapIndexBase | ( | ) |
Definition at line 160 of file genericyieldvolcurveconfig.hpp.
| vector< string > & smileOptionTenors | ( | ) |
Definition at line 161 of file genericyieldvolcurveconfig.hpp.
| vector< string > & smileUnderlyingTenors | ( | ) |
Definition at line 162 of file genericyieldvolcurveconfig.hpp.
| vector< string > & smileSpreads | ( | ) |
Definition at line 163 of file genericyieldvolcurveconfig.hpp.
| string & quoteTag | ( | ) |
Definition at line 164 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 96 of file genericyieldvolcurveconfig.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 146 of file genericyieldvolcurveconfig.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 171 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 171 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 171 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 171 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 172 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 172 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 174 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 175 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 176 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 177 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 178 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 179 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 180 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 180 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 181 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 182 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 183 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 184 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 184 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 185 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 186 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 187 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 188 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 190 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 191 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 192 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 193 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 194 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 196 of file genericyieldvolcurveconfig.hpp.
|
private |
Definition at line 198 of file genericyieldvolcurveconfig.hpp.