Logo
Reference manual - version ored_version
VolatilitySurfaceConfig Class Referenceabstract

#include <ored/configuration/volatilityconfig.hpp>

Inheritance diagram for VolatilitySurfaceConfig:

Public Member Functions

 VolatilitySurfaceConfig (MarketDatum::QuoteType quoteType=MarketDatum::QuoteType::RATE_LNVOL, QuantLib::Exercise::Type exerciseType=QuantLib::Exercise::Type::European, std::string calendarStr=std::string(), QuantLib::Natural priority=0)
 Default constructor.
 VolatilitySurfaceConfig (const std::string &timeInterpolation, const std::string &strikeInterpolation, bool extrapolation, const std::string &timeExtrapolation, const std::string &strikeExtrapolation, MarketDatum::QuoteType quoteType=MarketDatum::QuoteType::RATE_LNVOL, QuantLib::Exercise::Type exerciseType=QuantLib::Exercise::Type::European, std::string calendarStr=std::string(), QuantLib::Natural priority=0, bool timeExtrapolationInVariance=true)
 Explicit constructor.
Public Member Functions inherited from QuoteBasedVolatilityConfig
 QuoteBasedVolatilityConfig (MarketDatum::QuoteType quoteType=MarketDatum::QuoteType::RATE_LNVOL, QuantLib::Exercise::Type exerciseType=QuantLib::Exercise::Type::European, std::string calendarStr=std::string(), QuantLib::Natural priority=0)
 Default constructor.
const MarketDatum::QuoteTypequoteType () const
const QuantLib::Exercise::Type & exerciseType () const
VolatilityType volType () const
void fromBaseNode (ore::data::XMLNode *node)
void toBaseNode (ore::data::XMLDocument &doc, ore::data::XMLNode *node) const
Public Member Functions inherited from VolatilityConfig
 VolatilityConfig (std::string calendarStr=std::string(), QuantLib::Natural priority=0)
void fromXMLNode (ore::data::XMLNode *node)
void toXMLNode (XMLDocument &doc, XMLNode *node) const
QuantLib::Natural priority () const
Calendar calendar () const
Public Member Functions inherited from 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.
std::string toXMLString () const
 Parse from XML string.
std::string toXMLStringUnformatted () const

Inspectors

const std::string & timeInterpolation () const
const std::string & strikeInterpolation () const
bool extrapolation () const
const std::string & timeExtrapolation () const
bool timeExtrapolationVariance () const
const std::string & strikeExtrapolation () const
virtual std::vector< std::pair< std::string, std::string > > quotes () const =0
void fromNode (ore::data::XMLNode *node)
void addNodes (ore::data::XMLDocument &doc, ore::data::XMLNode *node) const

Additional Inherited Members

Public Types inherited from VolatilityConfig
enum class  VolatilityType { Lognormal , Normal , ShiftedLognormal }

Detailed Description

Base volatility configuration for a 2-D volatility surface

Member Function Documentation

◆ quotes()

virtual std::vector< std::pair< std::string, std::string > > quotes ( ) const
pure virtual

Return a vector of pairs of expiry and strike. The first element in the pair is the expiry and the second element in the pair is the string representation of the strike. This will be useful for building the vector of quote strings in classes that have a VolatilitySurfaceConfig.

Implemented in VolatilityApoFutureSurfaceConfig, VolatilityDeltaSurfaceConfig, VolatilityMoneynessSurfaceConfig, and VolatilityStrikeSurfaceConfig.

◆ fromNode()

void fromNode ( ore::data::XMLNode * node)
protected

Populate members from the provided node. Can be called by fromXML in derived classes.

◆ addNodes()

void addNodes ( ore::data::XMLDocument & doc,
ore::data::XMLNode * node ) const
protected

Add members to the provided node. Can be called by toXML in derived classes.