At-the-money swaption-volatility matrix. More...
#include <ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp>
Inherits SwaptionVolatilityDiscrete, and noncopyable.
Public Member Functions | |
SwaptionVolatilityMatrix (const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Period > &swapTenors, const std::vector< std::vector< Handle< Quote > > > &vols, const DayCounter &dayCounter, const bool flatExtrapolation=false, const VolatilityType type=ShiftedLognormal, const std::vector< std::vector< Real > > &shifts=std::vector< std::vector< Real > >()) | |
floating reference date, floating market data | |
SwaptionVolatilityMatrix (const Date &referenceDate, const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Period > &swapTenors, const std::vector< std::vector< Handle< Quote > > > &vols, const DayCounter &dayCounter, const bool flatExtrapolation=false, const VolatilityType type=ShiftedLognormal, const std::vector< std::vector< Real > > &shifts=std::vector< std::vector< Real > >()) | |
fixed reference date, floating market data | |
SwaptionVolatilityMatrix (const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Period > &swapTenors, const Matrix &volatilities, const DayCounter &dayCounter, const bool flatExtrapolation=false, const VolatilityType type=ShiftedLognormal, const Matrix &shifts=Matrix()) | |
floating reference date, fixed market data | |
SwaptionVolatilityMatrix (const Date &referenceDate, const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Period > &swapTenors, const Matrix &volatilities, const DayCounter &dayCounter, const bool flatExtrapolation=false, const VolatilityType type=ShiftedLognormal, const Matrix &shifts=Matrix()) | |
fixed reference date, fixed market data | |
SwaptionVolatilityMatrix (const Date &referenceDate, const std::vector< Date > &optionDates, const std::vector< Period > &swapTenors, const Matrix &volatilities, const DayCounter &dayCounter, const bool flatExtrapolation=false, const VolatilityType type=ShiftedLognormal, const Matrix &shifts=Matrix()) | |
QL_DEPRECATED | SwaptionVolatilityMatrix (const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Period > &swapTenors, const std::vector< std::vector< Handle< Quote > > > &vols, const DayCounter &dayCounter, const bool flatExtrapolation, const std::vector< std::vector< Real > > &shifts) |
floating reference date, floating market data More... | |
QL_DEPRECATED | SwaptionVolatilityMatrix (const Date &referenceDate, const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Period > &swapTenors, const std::vector< std::vector< Handle< Quote > > > &vols, const DayCounter &dayCounter, const bool flatExtrapolation, const std::vector< std::vector< Real > > &shifts) |
fixed reference date, floating market data More... | |
QL_DEPRECATED | SwaptionVolatilityMatrix (const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Period > &swapTenors, const Matrix &volatilities, const DayCounter &dayCounter, const bool flatExtrapolation, const Matrix &shifts) |
floating reference date, fixed market data More... | |
QL_DEPRECATED | SwaptionVolatilityMatrix (const Date &referenceDate, const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Period > &swapTenors, const Matrix &volatilities, const DayCounter &dayCounter, const bool flatExtrapolation, const Matrix &shifts) |
fixed reference date, fixed market data More... | |
QL_DEPRECATED | SwaptionVolatilityMatrix (const Date &referenceDate, const std::vector< Date > &optionDates, const std::vector< Period > &swapTenors, const Matrix &volatilities, const DayCounter &dayCounter, const bool flatExtrapolation, const Matrix &shifts) |
VolatilityType | volatilityType () const |
volatility type | |
LazyObject interface | |
void | performCalculations () const |
TermStructure interface | |
Date | maxDate () const |
the latest date for which the curve can return values | |
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 | |
std::pair< Size, Size > | locate (const Date &optionDate, const Period &swapTenor) const |
returns the lower indexes of surrounding volatility matrix corners | |
std::pair< Size, Size > | locate (Time optionTime, Time swapLength) const |
returns the lower indexes of surrounding volatility matrix corners | |
Protected Member Functions | |
boost::shared_ptr< SmileSection > | smileSectionImpl (Time, Time) const |
Volatility | volatilityImpl (Time optionTime, Time swapLength, Rate strike) const |
Real | shiftImpl (Time optionTime, Time swapLength) const |
At-the-money swaption-volatility matrix.
This class provides the at-the-money volatility for a given swaption by interpolating a volatility matrix whose elements are the market volatilities of a set of swaption with given option date and swapLength.
The volatility matrix M
must be defined so that:
M[i][j]
contains the volatility corresponding to the i
-th option and j
-th tenor. QL_DEPRECATED SwaptionVolatilityMatrix | ( | const Calendar & | calendar, |
BusinessDayConvention | bdc, | ||
const std::vector< Period > & | optionTenors, | ||
const std::vector< Period > & | swapTenors, | ||
const std::vector< std::vector< Handle< Quote > > > & | vols, | ||
const DayCounter & | dayCounter, | ||
const bool | flatExtrapolation, | ||
const std::vector< std::vector< Real > > & | shifts | ||
) |
floating reference date, floating market data
QL_DEPRECATED SwaptionVolatilityMatrix | ( | const Date & | referenceDate, |
const Calendar & | calendar, | ||
BusinessDayConvention | bdc, | ||
const std::vector< Period > & | optionTenors, | ||
const std::vector< Period > & | swapTenors, | ||
const std::vector< std::vector< Handle< Quote > > > & | vols, | ||
const DayCounter & | dayCounter, | ||
const bool | flatExtrapolation, | ||
const std::vector< std::vector< Real > > & | shifts | ||
) |
fixed reference date, floating market data
QL_DEPRECATED SwaptionVolatilityMatrix | ( | const Calendar & | calendar, |
BusinessDayConvention | bdc, | ||
const std::vector< Period > & | optionTenors, | ||
const std::vector< Period > & | swapTenors, | ||
const Matrix & | volatilities, | ||
const DayCounter & | dayCounter, | ||
const bool | flatExtrapolation, | ||
const Matrix & | shifts | ||
) |
floating reference date, fixed market data
QL_DEPRECATED SwaptionVolatilityMatrix | ( | const Date & | referenceDate, |
const Calendar & | calendar, | ||
BusinessDayConvention | bdc, | ||
const std::vector< Period > & | optionTenors, | ||
const std::vector< Period > & | swapTenors, | ||
const Matrix & | volatilities, | ||
const DayCounter & | dayCounter, | ||
const bool | flatExtrapolation, | ||
const Matrix & | shifts | ||
) |
fixed reference date, fixed market data
QL_DEPRECATED SwaptionVolatilityMatrix | ( | const Date & | referenceDate, |
const std::vector< Date > & | optionDates, | ||
const std::vector< Period > & | swapTenors, | ||
const Matrix & | volatilities, | ||
const DayCounter & | dayCounter, | ||
const bool | flatExtrapolation, | ||
const Matrix & | shifts | ||
) |
|
virtual |
This method must implement any calculations which must be (re)done in order to calculate the desired results.
Implements LazyObject.