Logo
Reference manual - version qle_version
Public Member Functions | List of all members
CapFloorTermVolSurfaceSparse< InterpolatorStrike, InterpolatorExpiry > Class Template Reference

Cap/floor smile volatility surface sparse. More...

#include <qle/termstructures/capfloortermvolsurfacesparse.hpp>

+ Inheritance diagram for CapFloorTermVolSurfaceSparse< InterpolatorStrike, InterpolatorExpiry >:

Public Member Functions

 CapFloorTermVolSurfaceSparse (const QuantLib::Date &referenceDate, const QuantLib::Calendar &calendar, const QuantLib::BusinessDayConvention &bdc, const QuantLib::DayCounter &dc, const std::vector< QuantLib::Period > &tenors, const std::vector< QuantLib::Real > &strikes, const std::vector< QuantLib::Volatility > &volatilities, bool lowerStrikeConstExtrap=true, bool upperStrikeConstExtrap=true, bool timeFlatExtrapolation=false)
 fixed reference date, fixed market data
 
 CapFloorTermVolSurfaceSparse (QuantLib::Natural settlementDays, const QuantLib::Calendar &calendar, const QuantLib::BusinessDayConvention &bdc, const QuantLib::DayCounter &dc, const std::vector< QuantLib::Period > &tenors, const std::vector< QuantLib::Real > &strikes, const std::vector< QuantLib::Volatility > &volatilities, bool lowerStrikeConstExtrap=true, bool upperStrikeConstExtrap=true, bool timeFlatExtrapolation=false)
 floating reference date, fixed market data
 
TermStructure interface
QuantLib::Date maxDate () const override
 
VolatilityTermStructure interface
QuantLib::Real minStrike () const override
 
QuantLib::Real maxStrike () const override
 
- Public Member Functions inherited from CapFloorTermVolSurface
 CapFloorTermVolSurface (QuantLib::BusinessDayConvention bdc, const QuantLib::DayCounter &dc=QuantLib::DayCounter(), std::vector< QuantLib::Period > optionTenors={}, std::vector< QuantLib::Rate > strikes={})
 default constructor
 
 CapFloorTermVolSurface (const QuantLib::Date &referenceDate, const QuantLib::Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=QuantLib::DayCounter(), std::vector< QuantLib::Period > optionTenors={}, std::vector< QuantLib::Rate > strikes={})
 initialize with a fixed reference date
 
 CapFloorTermVolSurface (QuantLib::Natural settlementDays, const QuantLib::Calendar &cal, QuantLib::BusinessDayConvention bdc, const QuantLib::DayCounter &dc=QuantLib::DayCounter(), std::vector< QuantLib::Period > optionTenors={}, std::vector< QuantLib::Rate > strikes={})
 calculate the reference date based on the global evaluation date
 
const std::vector< QuantLib::Period > & optionTenors () const
 
const std::vector< QuantLib::Rate > & strikes () const
 
void update () override
 
void performCalculations () const override
 

LazyObject interface

void performCalculations () const override
 
QuantLib::Volatility volatilityImpl (Time t, Rate strike) const override
 

Additional Inherited Members

- Protected Attributes inherited from CapFloorTermVolSurface
std::vector< QuantLib::Period > optionTenors_
 
std::vector< QuantLib::Rate > strikes_
 

Detailed Description

template<class InterpolatorStrike, class InterpolatorExpiry>
class QuantExt::CapFloorTermVolSurfaceSparse< InterpolatorStrike, InterpolatorExpiry >

Cap/floor smile volatility surface sparse.

This class provides the volatility for a given cap/floor interpolating a volatility surface whose elements are the market term volatilities of a set of caps/floors.