QuantLib: SwaptionVolatilityCube Class Reference

A free/open-source library for quantitative finance Reference manual - version 1.20

Public Member Functions | List of all members
SwaptionVolatilityCube Class Reference

swaption-volatility cube More...

`#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 ext::shared_ptr< SwapIndex > &swapIndexBase, const ext::shared_ptr< SwapIndex > &shortSwapIndexBase, bool vegaWeightedSmileFit)
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
ext::shared_ptr< SwapIndex > | swapIndexBase () const
ext::shared_ptr< SwapIndex > | shortSwapIndexBase () const
bool | vegaWeightedSmileFit () const

## LazyObject interface
Handle< SwaptionVolatilityStructure > | atmVol_
Size | nStrikes_
std::vector< Spread > | strikeSpreads_
std::vector< Rate > | localStrikes_
std::vector< Volatility > | localSmile_
std::vector< std::vector< Handle< Quote > > > | volSpreads_
ext::shared_ptr< SwapIndex > | swapIndexBase_
ext::shared_ptr< SwapIndex > | shortSwapIndexBase_
bool | vegaWeightedSmileFit_
void | performCalculations () const
VolatilityType | volatilityType () const
| volatility type
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

## Detailed Description

swaption-volatility cube

Warning:
  this class is not finalized and its interface might change in subsequent releases.

## Member Function Documentation

## ◆ performCalculations()

void performCalculations | ( |  | ) | const
| virtual

This method must implement any calculations which must be (re)done in order to calculate the desired results.

Implements LazyObject.