Takes a BlackVolTermStructure with fixed reference date and turns it into a floating reference date term structure. More...
#include <qle/termstructures/dynamicblackvoltermstructure.hpp>
Inheritance diagram for DynamicBlackVolTermStructure< mode >:
Collaboration diagram for DynamicBlackVolTermStructure< mode >: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.