24#ifndef quantlib_yoy_optionlet_stripper_hpp
25#define quantlib_yoy_optionlet_stripper_hpp
27#include <ql/experimental/inflation/yoyinflationoptionletvolatilitystructure2.hpp>
28#include <ql/pricingengines/inflation/inflationcapfloorengines.hpp>
29#include <ql/experimental/inflation/yoycapfloortermpricesurface.hpp>
43 virtual void initialize(
const ext::shared_ptr<YoYCapFloorTermPriceSurface>&,
44 const ext::shared_ptr<YoYInflationCapFloorEngine>&,
45 Real slope)
const = 0;
48 virtual std::vector<Rate>
strikes()
const = 0;
49 virtual std::pair<std::vector<Rate>, std::vector<Volatility> >
54 mutable ext::shared_ptr<YoYCapFloorTermPriceSurface>
56 mutable ext::shared_ptr<YoYInflationCapFloorEngine>
p_;
Interface for inflation cap stripping, i.e. from price surfaces.
virtual void initialize(const ext::shared_ptr< YoYCapFloorTermPriceSurface > &, const ext::shared_ptr< YoYInflationCapFloorEngine > &, Real slope) const =0
YoYOptionletStripper interface.
virtual std::vector< Rate > strikes() const =0
virtual Rate maxStrike() const =0
bool indexIsInterpolated_
virtual std::pair< std::vector< Rate >, std::vector< Volatility > > slice(const Date &d) const =0
ext::shared_ptr< YoYCapFloorTermPriceSurface > YoYCapFloorTermPriceSurface_
virtual Rate minStrike() const =0
ext::shared_ptr< YoYInflationCapFloorEngine > p_
virtual ~YoYOptionletStripper()=default
Frequency
Frequency of events.