Inheritance diagram for SabrParametricVolatility:Public Types | |
| enum class | ModelVariant { Hagan2002Lognormal = 0 , Hagan2002Normal = 1 , Hagan2002NormalZeroBeta = 2 , Antonov2015FreeBoundaryNormal = 3 , KienitzLawsonSwaynePde = 4 , FlochKennedy = 5 } |
Public Types inherited from ParametricVolatility | |
| enum class | MarketModelType { Black76 } |
| enum class | MarketQuoteType { Price , NormalVolatility , ShiftedLognormalVolatility } |
Public Member Functions | |
| SabrParametricVolatility (const ModelVariant modelVariant, const std::vector< MarketSmile > marketSmiles, const MarketModelType marketModelType, const MarketQuoteType inputMarketQuoteType, const QuantLib::Handle< QuantLib::YieldTermStructure > discountCurve, const std::map< std::pair< QuantLib::Real, QuantLib::Real >, std::vector< std::pair< Real, bool >>> modelParameters={}, const QuantLib::Size maxCalibrationAttempts=10, const QuantLib::Real exitEarlyErrorThreshold=0.005, const QuantLib::Real maxAcceptableError=0.05) | |
| QuantLib::Real | evaluate (const QuantLib::Real timeToExpiry, const QuantLib::Real underlyingLength, const QuantLib::Real strike, const QuantLib::Real forward, const MarketQuoteType outputMarketQuoteType, const QuantLib::Real outputLognormalShift=QuantLib::Null< QuantLib::Real >(), const boost::optional< QuantLib::Option::Type > outputOptionType=boost::none) const override |
| const std::vector< Real > & | timeToEpiries () const |
| const std::vector< Real > & | underlyingLenghts () const |
| const QuantLib::Matrix & | alpha () const |
| const QuantLib::Matrix & | beta () const |
| const QuantLib::Matrix & | nu () const |
| const QuantLib::Matrix & | rho () const |
| const QuantLib::Matrix & | lognormalShift () const |
| const QuantLib::Matrix & | numberOfCalibrationAttempts () const |
| const QuantLib::Matrix & | calibrationError () const |
| const QuantLib::Matrix & | isInterpolated () const |
Public Member Functions inherited from ParametricVolatility | |
| ParametricVolatility (const std::vector< MarketSmile > marketSmiles, const MarketModelType marketModelType, const MarketQuoteType inputMarketQuoteType, const QuantLib::Handle< QuantLib::YieldTermStructure > discountCurve) | |
| Real | convert (const Real inputQuote, const MarketQuoteType inputMarketQuoteType, const QuantLib::Real inputLognormalShift, const boost::optional< QuantLib::Option::Type > inputOptionType, const QuantLib::Real timeToExpiry, const QuantLib::Real strike, const QuantLib::Real forward, const MarketQuoteType outputMarketQuoteType, const QuantLib::Real outputLognormalShift, const boost::optional< QuantLib::Option::Type > outputOptionType=boost::none) const |
Additional Inherited Members | |
Protected Attributes inherited from ParametricVolatility | |
| std::vector< MarketSmile > | marketSmiles_ |
| MarketModelType | marketModelType_ |
| MarketQuoteType | inputMarketQuoteType_ |
| QuantLib::Handle< QuantLib::YieldTermStructure > | discountCurve_ |
| SabrParametricVolatility | ( | const ModelVariant | modelVariant, |
| const std::vector< MarketSmile > | marketSmiles, | ||
| const MarketModelType | marketModelType, | ||
| const MarketQuoteType | inputMarketQuoteType, | ||
| const QuantLib::Handle< QuantLib::YieldTermStructure > | discountCurve, | ||
| const std::map< std::pair< QuantLib::Real, QuantLib::Real >, std::vector< std::pair< Real, bool >>> | modelParameters = {}, |
||
| const QuantLib::Size | maxCalibrationAttempts = 10, |
||
| const QuantLib::Real | exitEarlyErrorThreshold = 0.005, |
||
| const QuantLib::Real | maxAcceptableError = 0.05 |
||
| ) |
modelParameters are given by (tte, underlyingLen) as a vector of parameter values and whether the values are fixed