### A free/open-source library for quantitative finance

Public Member Functions | Protected Member Functions
SwaptionVolatilityStructure Class Reference

Swaption-volatility structure More...

`#include <ql/termstructures/volatility/swaption/swaptionvolstructure.hpp>`

Inheritance diagram for SwaptionVolatilityStructure:
[legend]

List of all members.

## Public Member Functions

Time | swapLength (const Period &swapTenor) const
| implements the conversion between swap tenor and swap (time) length
Time | swapLength (const Date &start, const Date &end) const
| implements the conversion between swap dates and swap (time) length
Constructors
See the TermStructure documentation for issues regarding constructors.
| SwaptionVolatilityStructure (const Calendar &calendar, BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
| SwaptionVolatilityStructure (BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
| SwaptionVolatilityStructure (const Date &referenceDate, const Calendar &calendar, BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
| initialize with a fixed reference date
| SwaptionVolatilityStructure (Natural settlementDays, const Calendar &, BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
| calculate the reference date based on the global evaluation date
Volatility, variance and smile
Volatility | volatility (const Period &optionTenor, const Period &swapTenor, Rate strike, bool extrapolate=false) const
| returns the volatility for a given option tenor and swap tenor
Volatility | volatility (const Date &optionDate, const Period &swapTenor, Rate strike, bool extrapolate=false) const
| returns the volatility for a given option date and swap tenor
Volatility | volatility (Time optionTime, const Period &swapTenor, Rate strike, bool extrapolate=false) const
| returns the volatility for a given option time and swap tenor
Volatility | volatility (const Period &optionTenor, Time swapLength, Rate strike, bool extrapolate=false) const
| returns the volatility for a given option tenor and swap length
Volatility | volatility (const Date &optionDate, Time swapLength, Rate strike, bool extrapolate=false) const
| returns the volatility for a given option date and swap length
Volatility | volatility (Time optionTime, Time swapLength, Rate strike, bool extrapolate=false) const
| returns the volatility for a given option time and swap length
Real | blackVariance (const Period &optionTenor, const Period &swapTenor, Rate strike, bool extrapolate=false) const
| returns the Black variance for a given option tenor and swap tenor
Real | blackVariance (const Date &optionDate, const Period &swapTenor, Rate strike, bool extrapolate=false) const
| returns the Black variance for a given option date and swap tenor
Real | blackVariance (Time optionTime, const Period &swapTenor, Rate strike, bool extrapolate=false) const
| returns the Black variance for a given option time and swap tenor
Real | blackVariance (const Period &optionTenor, Time swapLength, Rate strike, bool extrapolate=false) const
| returns the Black variance for a given option tenor and swap length
Real | blackVariance (const Date &optionDate, Time swapLength, Rate strike, bool extrapolate=false) const
| returns the Black variance for a given option date and swap length
Real | blackVariance (Time optionTime, Time swapLength, Rate strike, bool extrapolate=false) const
| returns the Black variance for a given option time and swap length
boost::shared_ptr< SmileSection > | smileSection (const Period &optionTenor, const Period &swapTenor, bool extr=false) const
| returns the smile for a given option tenor and swap tenor
boost::shared_ptr< SmileSection > | smileSection (const Date &optionDate, const Period &swapTenor, bool extr=false) const
| returns the smile for a given option date and swap tenor
boost::shared_ptr< SmileSection > | smileSection (Time optionTime, const Period &swapTenor, bool extr=false) const
| returns the smile for a given option time and swap tenor
boost::shared_ptr< SmileSection > | smileSection (const Period &optionTenor, Time swapLength, bool extr=false) const
| returns the smile for a given option tenor and swap length
boost::shared_ptr< SmileSection > | smileSection (const Date &optionDate, Time swapLength, bool extr=false) const
| returns the smile for a given option date and swap length
boost::shared_ptr< SmileSection > | smileSection (Time optionTime, Time swapLength, bool extr=false) const
| returns the smile for a given option time and swap length
Limits
virtual const Period & | maxSwapTenor () const =0
| the largest length for which the term structure can return vols
Time | maxSwapLength () const
| the largest swapLength for which the term structure can return vols

## Protected Member Functions

virtual boost::shared_ptr < SmileSection > | smileSectionImpl (const Date &optionDate, const Period &swapTenor) const
virtual boost::shared_ptr < SmileSection > | smileSectionImpl (Time optionTime, Time swapLength) const =0
virtual Volatility | volatilityImpl (const Date &optionDate, const Period &swapTenor, Rate strike) const
virtual Volatility | volatilityImpl (Time optionTime, Time swapLength, Rate strike) const =0
void | checkSwapTenor (const Period &swapTenor, bool extrapolate) const
void | checkSwapTenor (Time swapLength, bool extrapolate) const

## Detailed Description

Swaption-volatility structure

This abstract class defines the interface of concrete swaption volatility structures which will be derived from this one.

## Constructor & Destructor Documentation

SwaptionVolatilityStructure | ( | const Calendar & | calendar,
|  | BusinessDayConvention | bdc,
|  | const DayCounter & | dc = `DayCounter()`
| ) |  |

Warning:
  term structures initialized by means of this constructor must manage their own reference date by overriding the referenceDate() method.

SwaptionVolatilityStructure | ( | BusinessDayConvention | bdc,
|  | const DayCounter & | dc = `DayCounter()`
| ) |  |

Warning:
  term structures initialized by means of this constructor must manage their own reference date by overriding the referenceDate() method.