SwaptionVolatilityStructure Class Reference

#include <ql/swaptionvolstructure.hpp>

Inheritance diagram for SwaptionVolatilityStructure:

Inheritance graph
[legend]
List of all members.

Detailed Description

Swaption-volatility structure

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


Public Member Functions

virtual std::pair< Time, Time > convertDates (const Date &optionDate, const Period &swapTenor) const
 implements the conversion between dates and times
virtual BusinessDayConvention businessDayConvention () const
 the business day convention used for option date calculation
Date optionDateFromTenor (const Period &optionTenor) const
 implements the conversion between optionTenors and optionDates
Constructors
See the TermStructure documentation for issues regarding constructors.

 SwaptionVolatilityStructure (const DayCounter &dc=Actual365Fixed(), BusinessDayConvention bdc=Following)
 default constructor
 SwaptionVolatilityStructure (const Date &referenceDate, const Calendar &calendar=Calendar(), const DayCounter &dc=Actual365Fixed(), BusinessDayConvention bdc=Following)
 initialize with a fixed reference date
 SwaptionVolatilityStructure (Natural settlementDays, const Calendar &, const DayCounter &dc=Actual365Fixed(), BusinessDayConvention bdc=Following)
 calculate the reference date based on the global evaluation date
Volatility, variance and smile
Volatility volatility (Time optionTime, Time swapLength, Rate strike, bool extrapolate=false) const
 returns the volatility for a given option time and swapLength
Real blackVariance (Time optionTime, Time swapLength, Rate strike, bool extrapolate=false) const
 returns the Black variance for a given option time and swapLength
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
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
virtual boost::shared_ptr<
SmileSection
smileSection (const Date &optionDate, const Period &swapTenor) const
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
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
boost::shared_ptr< SmileSectionsmileSection (const Period &optionTenor, const Period &swapTenor) const
Limits
virtual const PeriodmaxSwapTenor () const=0
 the largest length for which the term structure can return vols
virtual Time maxSwapLength () const
 the largest swapLength for which the term structure can return vols
virtual Rate minStrike () const=0
 the minimum strike for which the term structure can return vols
virtual Rate maxStrike () const=0
 the maximum strike for which the term structure can return vols

Protected Member Functions

virtual boost::shared_ptr<
SmileSection
smileSectionImpl (Time optionTime, Time swapLength) const=0
 return smile section
virtual Volatility volatilityImpl (Time optionTime, Time swapLength, Rate strike) const=0
 implements the actual volatility calculation in derived classes
virtual Volatility volatilityImpl (const Date &optionDate, const Period &swapTenor, Rate strike) const
void checkRange (Time, Time, Rate strike, bool extrapolate) const
void checkRange (const Date &optionDate, const Period &swapTenor, Rate strike, bool extrapolate) const


Constructor & Destructor Documentation

default constructor

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