CapFloorTermVolCurve Class Reference

Cap/floor at-the-money term-volatility vector. More...

#include <ql/termstructures/volatility/capfloor/capfloortermvolcurve.hpp>

Inheritance diagram for CapFloorTermVolCurve:

Public Member Functions

 CapFloorTermVolCurve (Natural settlementDays, const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Handle< Quote > > &vols, const DayCounter &dc=Actual365Fixed())
 floating reference date, floating market data
 
 CapFloorTermVolCurve (const Date &settlementDate, const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Handle< Quote > > &vols, const DayCounter &dc=Actual365Fixed())
 fixed reference date, floating market data
 
 CapFloorTermVolCurve (const Date &settlementDate, const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Volatility > &vols, const DayCounter &dc=Actual365Fixed())
 fixed reference date, fixed market data
 
 CapFloorTermVolCurve (Natural settlementDays, const Calendar &calendar, BusinessDayConvention bdc, const std::vector< Period > &optionTenors, const std::vector< Volatility > &vols, const DayCounter &dc=Actual365Fixed())
 floating reference date, fixed market data
 
TermStructure interface
Date maxDate () const
 the latest date for which the curve can return values
 
VolatilityTermStructure interface
Real minStrike () const
 the minimum strike for which the term structure can return vols
 
Real maxStrike () const
 the maximum strike for which the term structure can return vols
 
LazyObject interface
void update ()
 
void performCalculations () const
 
some inspectors
const std::vector< Period > & optionTenors () const
 
const std::vector< Date > & optionDates () const
 
const std::vector< Time > & optionTimes () const
 
- Public Member Functions inherited from CapFloorTermVolatilityStructure
 CapFloorTermVolatilityStructure (const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
 
 CapFloorTermVolatilityStructure (BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
 
 CapFloorTermVolatilityStructure (const Date &referenceDate, const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
 initialize with a fixed reference date
 
 CapFloorTermVolatilityStructure (Natural settlementDays, const Calendar &, BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
 calculate the reference date based on the global evaluation date
 
Volatility volatility (const Period &length, Rate strike, bool extrapolate=false) const
 returns the volatility for a given cap/floor length and strike rate
 
Volatility volatility (const Date &end, Rate strike, bool extrapolate=false) const
 
Volatility volatility (Time t, Rate strike, bool extrapolate=false) const
 returns the volatility for a given end time and strike rate
 
- Public Member Functions inherited from VolatilityTermStructure
virtual BusinessDayConvention businessDayConvention () const
 the business day convention used in tenor to date conversion
 
Date optionDateFromTenor (const Period &) const
 period/date conversion
 
 VolatilityTermStructure (const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
 
 VolatilityTermStructure (BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
 
 VolatilityTermStructure (const Date &referenceDate, const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
 initialize with a fixed reference date
 
 VolatilityTermStructure (Natural settlementDays, const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=DayCounter())
 calculate the reference date based on the global evaluation date
 
- Public Member Functions inherited from TermStructure
 TermStructure (const DayCounter &dc=DayCounter())
 default constructor
 
 TermStructure (const Date &referenceDate, const Calendar &calendar=Calendar(), const DayCounter &dc=DayCounter())
 initialize with a fixed reference date
 
 TermStructure (Natural settlementDays, const Calendar &, const DayCounter &dc=DayCounter())
 calculate the reference date based on the global evaluation date
 
virtual DayCounter dayCounter () const
 the day counter used for date/time conversion
 
Time timeFromReference (const Date &date) const
 date/time conversion
 
virtual Time maxTime () const
 the latest time for which the curve can return values
 
virtual const DatereferenceDate () const
 the date at which discount = 1.0 and/or variance = 0.0
 
virtual Calendar calendar () const
 the calendar used for reference and/or option date calculation
 
virtual Natural settlementDays () const
 the settlementDays used for reference date calculation
 
- Public Member Functions inherited from Observer
 Observer (const Observer &)
 
Observeroperator= (const Observer &)
 
std::pair< std::set
< boost::shared_ptr
< Observable > >::iterator,
bool > 
registerWith (const boost::shared_ptr< Observable > &)
 
Size unregisterWith (const boost::shared_ptr< Observable > &)
 
void unregisterWithAll ()
 
- Public Member Functions inherited from Observable
 Observable (const Observable &)
 
Observableoperator= (const Observable &)
 
void notifyObservers ()
 
- Public Member Functions inherited from Extrapolator
void enableExtrapolation (bool b=true)
 enable extrapolation in subsequent calls
 
void disableExtrapolation (bool b=true)
 disable extrapolation in subsequent calls
 
bool allowsExtrapolation () const
 tells whether extrapolation is enabled
 
- Public Member Functions inherited from LazyObject
void recalculate ()
 
void freeze ()
 
void unfreeze ()
 

Protected Member Functions

Volatility volatilityImpl (Time length, Rate) const
 implements the actual volatility calculation in derived classes
 
- Protected Member Functions inherited from LazyObject
virtual void calculate () const
 

Additional Inherited Members

- Protected Attributes inherited from TermStructure
bool moving_
 
bool updated_
 
Calendar calendar_
 
- Protected Attributes inherited from LazyObject
bool calculated_
 
bool frozen_
 

Detailed Description

Cap/floor at-the-money term-volatility vector.

This class provides the at-the-money volatility for a given cap/floor interpolating a volatility vector whose elements are the market volatilities of a set of caps/floors with given length.

Member Function Documentation

void performCalculations ( ) const
virtual

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

Implements LazyObject.