FX volatility structure configuration. More...
#include <ored/configuration/fxvolcurveconfig.hpp>
Inheritance diagram for FXVolatilityCurveConfig:Public Types | |
| enum class | Dimension { ATM , SmileVannaVolga , SmileDelta , SmileBFRR , SmileAbsolute , ATMTriangulated } |
| supported volatility structure types More... | |
| enum class | SmileInterpolation { VannaVolga1 , VannaVolga2 , Linear , Cubic } |
Public Member Functions | |
Constructors/Destructors | |
| FXVolatilityCurveConfig () | |
| Default constructor. | |
| FXVolatilityCurveConfig (const string &curveID, const string &curveDescription, const Dimension &dimension, const vector< string > &expiries, const vector< string > &deltas=vector< string >(), const string &fxSpotID="", const string &fxForeignCurveID="", const string &fxDomesticCurveID="", const DayCounter &dayCounter=QuantLib::Actual365Fixed(), const Calendar &calendar=QuantLib::TARGET(), const SmileInterpolation &interp=SmileInterpolation::VannaVolga2, const string &conventionsID="", const std::vector< Size > &smileDelta={25}, const string &smileExtrapolation="Flat") | |
| Detailed constructor. | |
| FXVolatilityCurveConfig (const string &curveID, const string &curveDescription, const Dimension &dimension, const string &baseVolatility1, const string &baseVolatility2, const string &fxIndexTag="GENERIC") | |
Serialisation | |
| void | fromXML (XMLNode *node) override |
| XMLNode * | toXML (XMLDocument &doc) const override |
Inspectors | |
| const Dimension & | dimension () const |
| const vector< string > & | expiries () const |
| const vector< string > & | deltas () const |
| const DayCounter & | dayCounter () const |
| const Calendar & | calendar () const |
| const string & | fxSpotID () const |
| const string & | fxForeignYieldCurveID () const |
| const string & | fxDomesticYieldCurveID () const |
| const SmileInterpolation & | smileInterpolation () const |
| const std::string & | smileExtrapolation () const |
| const string & | conventionsID () const |
| const std::vector< Size > & | smileDelta () const |
| const vector< string > & | quotes () override |
| Return all the market quotes required for this config. | |
| const string & | baseVolatility1 () const |
| const string & | baseVolatility2 () const |
| const string & | fxIndexTag () 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. | |
| 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 | |
| Dimension & | dimension () |
| SmileInterpolation & | smileInterpolation () |
| string & | smileExtrapolation () |
| vector< string > & | deltas () |
| DayCounter & | dayCounter () |
| Calendar & | calendar () |
| string & | fxSpotID () |
| string & | fxForeignYieldCurveID () |
| string & | fxDomesticYieldCurveID () |
| string | conventionsID () |
| std::vector< Size > & | smileDelta () |
| const std::set< string > & | requiredYieldCurveIDs () const |
| string & | baseVolatility1 () |
| string & | baseVolatility2 () |
| string & | fxIndexTag () |
Additional Inherited Members | |
Protected Attributes inherited from CurveConfig | |
| string | curveID_ |
| string | curveDescription_ |
| vector< string > | quotes_ |
| map< CurveSpec::CurveType, set< string > > | requiredCurveIds_ |
FX volatility structure configuration.
|
strong |
supported volatility structure types
For ATM we will only load ATM quotes, for Smile we load ATM, RR, BF or Deltas SmileInterpolation - currently supports which of the 2 Vanna Volga approximations, as per Castagna& Mercurio(2006), to use. The second approximation is more accurate but can ask for the square root of a negative number under unusual circumstances.