34 ext::shared_ptr<YoYInflationIndex> index,
38 ext::shared_ptr<YoYInflationCapFloorEngine> pricer)
40 capFloorType_(capFloorType), lag_(lag), fixingDays_(fixingDays), index_(
std::move(index)),
41 strike_(strike), n_(
n), yoyDayCounter_(
std::move(yoyDayCounter)),
42 calendar_(
std::move(paymentCalendar)),
pricer_(
std::move(pricer)) {
56 earliestDate_ = ext::dynamic_pointer_cast<YoYInflationCoupon>(
58 latestDate_ = ext::dynamic_pointer_cast<YoYInflationCoupon>(
74 ext::shared_ptr<YoYInflationIndex> index,
77 ext::shared_ptr<YoYInflationCapFloorEngine> pricer)
79 fixingDays,
std::move(index),
CPI::AsIndex, strike,
n,
std::move(pricer)) {}
94 const bool own =
false;
97 ext::shared_ptr<YoYOptionletVolatilitySurface>(
v,
null_deleter()),
102 pricer_->setVolatility(volSurf);
Base helper class for bootstrapping.
virtual void setTermStructure(TS *)
sets the term structure to be used for pricing
Shared handle to an observable.
MakeYoYInflationCapFloor & withStrike(Rate strike)
MakeYoYInflationCapFloor & withFixingDays(Natural fixingDays)
MakeYoYInflationCapFloor & withNominal(Real n)
MakeYoYInflationCapFloor & withPaymentDayCounter(const DayCounter &)
Year-on-year inflation-volatility bootstrap helper.
ext::shared_ptr< YoYInflationIndex > index_
void setTermStructure(YoYOptionletVolatilitySurface *) override
ext::shared_ptr< YoYInflationCapFloorEngine > pricer_
DayCounter yoyDayCounter_
ext::shared_ptr< YoYInflationCapFloor > yoyCapFloor_
Real impliedQuote() const override
YoYOptionletHelper(const Handle< Quote > &price, Real notional, YoYInflationCapFloor::Type capFloorType, Period &lag, DayCounter yoyDayCounter, Calendar paymentCalendar, Natural fixingDays, ext::shared_ptr< YoYInflationIndex > index, CPI::InterpolationType interpolation, Rate strike, Size n, ext::shared_ptr< YoYInflationCapFloorEngine > pricer)
YoYInflationCapFloor::Type capFloorType_
ext::shared_ptr< FloatingRateCouponPricer > pricer_
unsigned QL_INTEGER Natural
positive integer
std::size_t Size
size of a container
Helper class to instantiate standard yoy inflation cap/floor.
empty deleter for shared_ptr
ext::shared_ptr< BlackVolTermStructure > v
InterpolationType
when you observe an index, how do you interpolate between fixings?
helpers for YoY inflation-volatility bootstrap