SwaptionVolatilityCube − swaption-volatility cube
#include <ql/termstructures/volatility/swaption/swaptionvolcube.hpp>
Inherits SwaptionVolatilityDiscrete.
Inherited by SwaptionVolCube1x< Model >, and SwaptionVolCube2.
Public Member Functions
SwaptionVolatilityCube (const Handle< SwaptionVolatilityStructure > &atmVolStructure, const std::vector< Period > &optionTenors, const std::vector< Period > &swapTenors, const std::vector< Spread > &strikeSpreads, const std::vector< std::vector< Handle< Quote > > > &volSpreads, const boost::shared_ptr< SwapIndex > &swapIndexBase, const boost::shared_ptr< SwapIndex > &shortSwapIndexBase, bool vegaWeightedSmileFit)
VolatilityType volatilityType () const
volatility type
TermStructure interface
DayCounter dayCounter () const
the day counter used for date/time conversion
Date maxDate () const
the latest date for which the curve can return values
Time maxTime () const
the latest time for which the curve can return values
const Date & referenceDate () const
the date at which discount = 1.0 and/or variance = 0.0
Calendar calendar () const
the calendar used for reference and/or option date calculation
Natural settlementDays () const
the settlementDays used for reference date calculation
VolatilityTermStructure interface
Rate minStrike () const
the minimum strike for which the term structure can return vols
Rate maxStrike () const
the maximum strike for which the term structure can return vols
SwaptionVolatilityStructure interface
const Period & maxSwapTenor () const
the largest length for which the term structure can return vols
Other inspectors
Rate atmStrike (const Date &optionDate, const Period &swapTenor) const
Rate atmStrike (const Period &optionTenor, const Period &swapTenor) const
Handle< SwaptionVolatilityStructure > atmVol () const
const std::vector< Spread > & strikeSpreads () const
const std::vector< std::vector< Handle< Quote > > > & volSpreads () const
const boost::shared_ptr< SwapIndex > swapIndexBase () const
const boost::shared_ptr< SwapIndex > shortSwapIndexBase () const
bool vegaWeightedSmileFit () const
LazyObject interface
void performCalculations () const
Protected Member Functions
void registerWithVolatilitySpread ()
virtual Size requiredNumberOfStrikes () const
Volatility volatilityImpl (Time optionTime, Time swapLength, Rate strike) const
Volatility volatilityImpl (const Date &optionDate, const Period &swapTenor, Rate strike) const
Real shiftImpl (Time optionTime, Time swapLength) const
Protected Attributes
Handle< SwaptionVolatilityStructure > atmVol_
Size nStrikes_
std::vector< Spread > strikeSpreads_
std::vector< Rate > localStrikes_
std::vector< Volatility > localSmile_
std::vector< std::vector< Handle< Quote > > > volSpreads_
boost::shared_ptr< SwapIndex > swapIndexBase_
boost::shared_ptr< SwapIndex > shortSwapIndexBase_
bool vegaWeightedSmileFit_
swaption-volatility cube
Warning
this class is not finalized and its interface might change in subsequent releases.
void performCalculations () const [virtual]
This method must implement any calculations which must be (re)done in order to calculate the desired results.
Implements LazyObject.
Generated automatically by Doxygen for QuantLib from the source code.