Logo
Reference manual - version qle_version
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
YoYInflationCapFloorEngine Class Referenceabstract

Base YoY inflation cap/floor engine. More...

#include <qle/pricingengines/inflationcapfloorengines.hpp>

+ Inheritance diagram for YoYInflationCapFloorEngine:

Public Member Functions

 YoYInflationCapFloorEngine (const ext::shared_ptr< QuantLib::YoYInflationIndex > &, const Handle< QuantLib::YoYOptionletVolatilitySurface > &vol, const Handle< YieldTermStructure > &discountCurve)
 
ext::shared_ptr< QuantLib::YoYInflationIndex > index () const
 
Handle< QuantLib::YoYOptionletVolatilitySurface > volatility () const
 
void setVolatility (const Handle< QuantLib::YoYOptionletVolatilitySurface > &vol)
 
void calculate () const override
 

Protected Member Functions

virtual Real optionletImpl (Option::Type type, Rate strike, Rate forward, Real stdDev, Real d) const =0
 descendents only need to implement this
 
virtual Real optionletVegaImpl (Option::Type type, Rate strike, Rate forward, Real stdDev, Real sqrtTime, Real d) const =0
 

Protected Attributes

ext::shared_ptr< QuantLib::YoYInflationIndex > index_
 
Handle< QuantLib::YoYOptionletVolatilitySurface > volatility_
 
Handle< YieldTermStructure > discountCurve_
 

Detailed Description

Base YoY inflation cap/floor engine.

This class doesn't know yet what sort of vol it is. The inflation index must be linked to a yoy inflation term structure. This provides the curves, hence the call uses a shared_ptr<> not a handle<> to the index.