// we may watch an underlying coupon ... public CappedFlooredYoYInflationCoupon(YoYInflationCoupon underlying, double? cap = null, double? floor = null) :base(underlying.date(), underlying.nominal(), underlying.accrualStartDate(), underlying.accrualEndDate(), underlying.fixingDays(), underlying.yoyIndex(), underlying.observationLag(), underlying.dayCounter(), underlying.gearing(), underlying.spread(), underlying.refPeriodStart, underlying.refPeriodEnd) { underlying_ = underlying; isFloored_ = false; isCapped_ = false; setCommon(cap, floor); underlying.registerWith(update); }
// we may watch an underlying coupon ... public CappedFlooredYoYInflationCoupon(YoYInflationCoupon underlying, double?cap = null, double?floor = null) : base(underlying.date(), underlying.nominal(), underlying.accrualStartDate(), underlying.accrualEndDate(), underlying.fixingDays(), underlying.yoyIndex(), underlying.observationLag(), underlying.dayCounter(), underlying.gearing(), underlying.spread(), underlying.referencePeriodStart, underlying.referencePeriodEnd) { underlying_ = underlying; isFloored_ = false; isCapped_ = false; setCommon(cap, floor); underlying.registerWith(update); }
public CappedFlooredYoYInflationCoupon(YoYInflationCoupon underlying, double?cap, double?floor) : this(underlying.Date, underlying.nominal(), underlying.accrualStartDate(), underlying.accrualEndDate(), underlying.fixingDays(), underlying.yoyIndex(), underlying.observationLag(), underlying.dayCounter(), underlying.gearing(), underlying.spread(), null, null, underlying.refPeriodStart, underlying.refPeriodEnd) { underlying_ = underlying; setCommon(cap, floor); underlying.registerWith(update); }