Abstract Spreaded Black volatility surface based on moneyness (moneyness defined in subclasses) More...
#include <qle/termstructures/spreadedblackvolatilitysurfacemoneyness.hpp>
Public Member Functions | |
SpreadedBlackVolatilitySurfaceMoneyness (const Handle< BlackVolTermStructure > &referenceVol, const Handle< Quote > &movingSpot, const std::vector< Time > ×, const std::vector< Real > &moneyness, const std::vector< std::vector< Handle< Quote > > > &volSpreads, const Handle< Quote > &stickySpot, const Handle< YieldTermStructure > &stickyDividendTs, const Handle< YieldTermStructure > &stickyRiskFreeTs, const Handle< YieldTermStructure > &movingDividendTs, const Handle< YieldTermStructure > &movingRiskFreeTs, bool stickyStrike) | |
Date | maxDate () const override |
const Date & | referenceDate () const override |
Calendar | calendar () const override |
Natural | settlementDays () const override |
Real | minStrike () const override |
Real | maxStrike () const override |
void | update () override |
const std::vector< QuantLib::Real > & | moneyness () const |
Protected Member Functions | |
virtual Real | strikeFromMoneyness (Time t, Real moneyness, const bool stickyReference) const =0 |
virtual Real | moneynessFromStrike (Time t, Real strike, const bool stickyReference) const =0 |
Protected Attributes | |
Handle< BlackVolTermStructure > | referenceVol_ |
Handle< Quote > | movingSpot_ |
std::vector< Time > | times_ |
std::vector< Real > | moneyness_ |
std::vector< std::vector< Handle< Quote > > > | volSpreads_ |
Handle< Quote > | stickySpot_ |
Handle< YieldTermStructure > | stickyDividendTs_ |
Handle< YieldTermStructure > | stickyRiskFreeTs_ |
Handle< YieldTermStructure > | movingDividendTs_ |
Handle< YieldTermStructure > | movingRiskFreeTs_ |
bool | stickyStrike_ |
Matrix | data_ |
Interpolation2D | volSpreadSurface_ |
Private Member Functions | |
void | performCalculations () const override |
Real | blackVolImpl (Time t, Real strike) const override |
Abstract Spreaded Black volatility surface based on moneyness (moneyness defined in subclasses)
Definition at line 38 of file spreadedblackvolatilitysurfacemoneyness.hpp.
SpreadedBlackVolatilitySurfaceMoneyness | ( | const Handle< BlackVolTermStructure > & | referenceVol, |
const Handle< Quote > & | movingSpot, | ||
const std::vector< Time > & | times, | ||
const std::vector< Real > & | moneyness, | ||
const std::vector< std::vector< Handle< Quote > > > & | volSpreads, | ||
const Handle< Quote > & | stickySpot, | ||
const Handle< YieldTermStructure > & | stickyDividendTs, | ||
const Handle< YieldTermStructure > & | stickyRiskFreeTs, | ||
const Handle< YieldTermStructure > & | movingDividendTs, | ||
const Handle< YieldTermStructure > & | movingRiskFreeTs, | ||
bool | stickyStrike | ||
) |
Definition at line 34 of file spreadedblackvolatilitysurfacemoneyness.cpp.
|
override |
Definition at line 101 of file spreadedblackvolatilitysurfacemoneyness.cpp.
|
override |
Definition at line 102 of file spreadedblackvolatilitysurfacemoneyness.cpp.
|
override |
Definition at line 103 of file spreadedblackvolatilitysurfacemoneyness.cpp.
|
override |
Definition at line 104 of file spreadedblackvolatilitysurfacemoneyness.cpp.
|
override |
Definition at line 105 of file spreadedblackvolatilitysurfacemoneyness.cpp.
|
override |
Definition at line 106 of file spreadedblackvolatilitysurfacemoneyness.cpp.
|
override |
Definition at line 108 of file spreadedblackvolatilitysurfacemoneyness.cpp.
const std::vector< QuantLib::Real > & moneyness | ( | ) | const |
Definition at line 113 of file spreadedblackvolatilitysurfacemoneyness.cpp.
|
protectedpure virtual |
Implemented in SpreadedBlackVolatilitySurfaceMoneynessSpot, SpreadedBlackVolatilitySurfaceMoneynessForward, SpreadedBlackVolatilitySurfaceLogMoneynessSpot, SpreadedBlackVolatilitySurfaceLogMoneynessForward, SpreadedBlackVolatilitySurfaceStdDevs, SpreadedBlackVolatilitySurfaceMoneynessSpotAbsolute, and SpreadedBlackVolatilitySurfaceMoneynessForwardAbsolute.
|
protectedpure virtual |
Implemented in SpreadedBlackVolatilitySurfaceMoneynessSpot, SpreadedBlackVolatilitySurfaceMoneynessForward, SpreadedBlackVolatilitySurfaceLogMoneynessSpot, SpreadedBlackVolatilitySurfaceLogMoneynessForward, SpreadedBlackVolatilitySurfaceStdDevs, SpreadedBlackVolatilitySurfaceMoneynessSpotAbsolute, and SpreadedBlackVolatilitySurfaceMoneynessForwardAbsolute.
|
overrideprivate |
Definition at line 115 of file spreadedblackvolatilitysurfacemoneyness.cpp.
|
overrideprivate |
Definition at line 124 of file spreadedblackvolatilitysurfacemoneyness.cpp.
|
protected |
Definition at line 67 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
protected |
Definition at line 68 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
protected |
Definition at line 69 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
protected |
Definition at line 70 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
protected |
Definition at line 71 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
protected |
Definition at line 72 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
protected |
Definition at line 73 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
protected |
Definition at line 74 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
protected |
Definition at line 75 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
protected |
Definition at line 76 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
protected |
Definition at line 77 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
mutableprotected |
Definition at line 79 of file spreadedblackvolatilitysurfacemoneyness.hpp.
|
mutableprotected |
Definition at line 80 of file spreadedblackvolatilitysurfacemoneyness.hpp.