Logo
Reference manual - version ored_version
Public Types | List of all members
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 boost::optional< ParametricSmileConfiguration > &parametricSmileConfiguration=boost::none)
 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
 
XMLNodetoXML (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.
 
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< 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 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
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.
 

Setters

string & qualifier ()
 
Dimensiondimension ()
 
VolatilityType & volatilityType ()
 
VolatilityType & outputVolatilityType ()
 
Interpolation & interpolation ()
 
Extrapolation & extrapolation ()
 
vector< string > & optionTenors ()
 
vector< string > & underlyingTenors ()
 
DayCounter & dayCounter ()
 
Calendar & calendar ()
 
BusinessDayConvention & businessDayConvention ()
 
string & shortSwapIndexBase ()
 
string & swapIndexBase ()
 
vector< string > & smileOptionTenors ()
 
vector< string > & smileUnderlyingTenors ()
 
vector< string > & smileSpreads ()
 
string & quoteTag ()
 

Additional Inherited Members

- Protected Attributes inherited from CurveConfig
string curveID_
 
string curveDescription_
 
vector< string > quotes_
 
map< CurveSpec::CurveType, set< string > > requiredCurveIds_
 

Detailed Description

Generic yield volatility curve configuration class.