Takes a BlackVolTermStructure with fixed reference date and turns it into a floating reference date term structure. More...
#include <qle/termstructures/dynamicblackvoltermstructure.hpp>
Public Member Functions | |
DynamicBlackVolTermStructure (const Handle< BlackVolTermStructure > &source, Natural settlementDays, const Calendar &calendar, ReactionToTimeDecay decayMode=ConstantVariance, Stickyness stickyness=StickyLogMoneyness, const Handle< YieldTermStructure > &riskfree=Handle< YieldTermStructure >(), const Handle< YieldTermStructure > ÷nd=Handle< YieldTermStructure >(), const Handle< Quote > &spot=Handle< Quote >(), const std::vector< Real > initialForwardGrid=std::vector< Real >()) | |
Real | atm () const |
Real | minStrike () const override |
Real | maxStrike () const override |
Date | maxDate () const override |
void | update () override |
Protected Member Functions | |
Real | blackVarianceImpl (Time t, Real strike) const override |
Volatility | blackVolImpl (Time t, Real strike) const override |
Real | blackVarianceImplTag (Time t, Real strike, tag::curve) const |
Real | blackVarianceImplTag (Time t, Real strike, tag::surface) const |
Private Attributes | |
const Handle< BlackVolTermStructure > | source_ |
ReactionToTimeDecay | decayMode_ |
Stickyness | stickyness_ |
const Handle< YieldTermStructure > | riskfree_ |
const Handle< YieldTermStructure > | dividend_ |
const Handle< Quote > | spot_ |
const Date | originalReferenceDate_ |
const bool | atmKnown_ |
std::vector< Real > | forwardCurveSampleGrid_ |
std::vector< Real > | initialForwards_ |
QuantLib::ext::shared_ptr< Interpolation > | initialForwardCurve_ |
Takes a BlackVolTermStructure with fixed reference date and turns it into a floating reference date term structure.
This class takes a BlackVolTermStructure with fixed reference date and turns it into a floating reference date term structure. There are different ways of reacting to time decay that can be specified. As an additional feature, the class will return the ATM volatility if a null strike is given (currently, for this extrapolation must be allowed, since there is a check in VolatilityTermStructure we can no extend or bypass). ATM is defined as the forward level here (which is of particular interest for FX term structures).
if curve is specified, a more efficient implementation for variance and volatility is used just passing through the given strike to the source term structure; note that in this case a null strike will not be converted to atm though.
\ingroup termstructures
Definition at line 61 of file dynamicblackvoltermstructure.hpp.
DynamicBlackVolTermStructure | ( | const Handle< BlackVolTermStructure > & | source, |
Natural | settlementDays, | ||
const Calendar & | calendar, | ||
ReactionToTimeDecay | decayMode = ConstantVariance , |
||
Stickyness | stickyness = StickyLogMoneyness , |
||
const Handle< YieldTermStructure > & | riskfree = Handle<YieldTermStructure>() , |
||
const Handle< YieldTermStructure > & | dividend = Handle<YieldTermStructure>() , |
||
const Handle< Quote > & | spot = Handle<Quote>() , |
||
const std::vector< Real > | initialForwardGrid = std::vector<Real>() |
||
) |
Definition at line 112 of file dynamicblackvoltermstructure.hpp.
Real atm | ( | ) | const |
|
override |
Definition at line 190 of file dynamicblackvoltermstructure.hpp.
|
override |
Definition at line 203 of file dynamicblackvoltermstructure.hpp.
|
override |
Definition at line 178 of file dynamicblackvoltermstructure.hpp.
|
override |
Definition at line 176 of file dynamicblackvoltermstructure.hpp.
|
overrideprotected |
Definition at line 219 of file dynamicblackvoltermstructure.hpp.
|
overrideprotected |
Definition at line 214 of file dynamicblackvoltermstructure.hpp.
|
protected |
Definition at line 246 of file dynamicblackvoltermstructure.hpp.
|
protected |
Definition at line 224 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 100 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 101 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 102 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 103 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 103 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 104 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 105 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 106 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 107 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 107 of file dynamicblackvoltermstructure.hpp.
|
private |
Definition at line 108 of file dynamicblackvoltermstructure.hpp.