Logo
Reference manual - version ored_version
GenericYieldVolatilityCurveConfig Class Reference

Generic yield volatility curve configuration class. More...

#include <ored/configuration/genericyieldvolcurveconfig.hpp>

Inheritance diagram for GenericYieldVolatilityCurveConfig:

Public Types

enum class  Dimension { ATM , Smile }
 supported volatility dimensions
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.
 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 QuantLib::ext::optional< ParametricSmileConfiguration > &parametricSmileConfiguration=QuantLib::ext::nullopt)
 Detailed constructor.
 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.
Serialisation
void fromXML (XMLNode *node) override
XMLNode * toXML (XMLDocument &doc) const override
Inspectors
const stringqualifier () const
Dimension dimension () const
VolatilityType volatilityType () const
VolatilityType outputVolatilityType () const
const vector< Real > & modelShift () const
const vector< Real > & outputShift () 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 stringshortSwapIndexBase () const
const stringswapIndexBase () const
const vector< string > & smileOptionTenors () const
const vector< string > & smileUnderlyingTenors () const
const vector< string > & smileSpreads () const
const stringquoteTag () const
const vector< string > & quotes () override
 Return all the market quotes required for this config.
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 QuantLib::ext::optional< ParametricSmileConfigurationparametricSmileConfiguration () const
const ReportConfigreportConfig () const
Public Member Functions inherited from CurveConfig
 CurveConfig (const string &curveID, const string &curveDescription, const vector< string > &quotes=vector< string >())
 Detailed constructor.
 CurveConfig ()
 Default constructor.
const stringcurveID () const
const stringcurveDescription () const
set< stringrequiredCurveIds (const CurveSpec::CurveType &curveType) const
set< stringrequiredNames (const MarketObject o, const std::string &configuration) const
map< CurveSpec::CurveType, set< string > > requiredCurveIds () const
map< MarketObject, set< string > > requiredNames (const std::string &configuration) const
map< pair< MarketObject, string >, set< string > > requiredNames () const
stringcurveID ()
stringcurveDescription ()
void setRequiredCurveIds (const CurveSpec::CurveType &curveType, const set< string > &ids)
void setRequiredCurveIds (const map< CurveSpec::CurveType, set< string > > &ids)
void setRequiredNames (const MarketObject o, const std::string &configuration, const set< string > &ids)
void setRequiredNames (const map< std::pair< MarketObject, std::string >, set< string > > &ids)
Public Member Functions inherited from XMLSerializable
void fromFile (const std::string &filename)
void toFile (const std::string &filename) const
void fromXMLString (const std::string &xml)
 Parse from XML string.
std::string toXMLString () const
 Parse from XML string.
std::string toXMLStringUnformatted () const

Setters

stringqualifier ()
Dimensiondimension ()
VolatilityType & volatilityType ()
VolatilityType & outputVolatilityType ()
vector< Real > & modelShift ()
vector< Real > & outputShift ()
Interpolation & interpolation ()
Extrapolation & extrapolation ()
vector< string > & optionTenors ()
vector< string > & underlyingTenors ()
DayCounter & dayCounter ()
Calendar & calendar ()
BusinessDayConvention & businessDayConvention ()
stringshortSwapIndexBase ()
stringswapIndexBase ()
vector< string > & smileOptionTenors ()
vector< string > & smileUnderlyingTenors ()
vector< string > & smileSpreads ()
stringquoteTag ()

Additional Inherited Members

bool requiredIdsInitialized_ = false
map< CurveSpec::CurveType, set< string > > requiredCurveIds_
map< std::pair< MarketObject, std::string >, set< string > > requiredNames_
string curveID_
string curveDescription_
vector< stringquotes_

Detailed Description

Generic yield volatility curve configuration class.

Member Function Documentation

◆ fromXML()

void fromXML ( XMLNode * node)
overridevirtual

Implements XMLSerializable.

◆ toXML()

XMLNode * toXML ( XMLDocument & doc) const
overridevirtual

Implements XMLSerializable.

◆ quotes()

const vector< string > & quotes ( )
overridevirtual

Return all the market quotes required for this config.

Reimplemented from CurveConfig.