Generic yield volatility curve configuration class. More...
#include <ored/configuration/genericyieldvolcurveconfig.hpp>
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.
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.
|
overridevirtual |
Implements XMLSerializable.
Definition at line 155 of file genericyieldvolcurveconfig.cpp.
|
overridevirtual |
Implements XMLSerializable.
Definition at line 292 of file genericyieldvolcurveconfig.cpp.
const string & qualifier | ( | ) | const |
Definition at line 114 of file genericyieldvolcurveconfig.hpp.
Dimension dimension | ( | ) | const |
Definition at line 115 of file genericyieldvolcurveconfig.hpp.
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.
const vector< string > & smileOptionTenors | ( | ) | const |
Definition at line 127 of file genericyieldvolcurveconfig.hpp.
const vector< string > & smileUnderlyingTenors | ( | ) | const |
Definition at line 128 of file genericyieldvolcurveconfig.hpp.
const vector< string > & smileSpreads | ( | ) | const |
Definition at line 129 of file genericyieldvolcurveconfig.hpp.
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.
|
private |
Definition at line 146 of file genericyieldvolcurveconfig.cpp.
|
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.