QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
MultipleResetsLeg Class Reference

helper class building a sequence of multiple-reset coupons More...

#include <multipleresetscoupon.hpp>

+ Collaboration diagram for MultipleResetsLeg:

Public Member Functions

 MultipleResetsLeg (Schedule fullResetSchedule, ext::shared_ptr< IborIndex > index, Size resetsPerCoupon)
 
MultipleResetsLegwithNotionals (Real notional)
 
MultipleResetsLegwithNotionals (const std::vector< Real > &notionals)
 
MultipleResetsLegwithPaymentDayCounter (const DayCounter &)
 
MultipleResetsLegwithPaymentAdjustment (BusinessDayConvention)
 
MultipleResetsLegwithPaymentCalendar (const Calendar &)
 
MultipleResetsLegwithPaymentLag (Integer lag)
 
MultipleResetsLegwithFixingDays (Natural fixingDays)
 
MultipleResetsLegwithFixingDays (const std::vector< Natural > &fixingDays)
 
MultipleResetsLegwithGearings (Real gearing)
 
MultipleResetsLegwithGearings (const std::vector< Real > &gearings)
 
MultipleResetsLegwithCouponSpreads (Spread spread)
 
MultipleResetsLegwithCouponSpreads (const std::vector< Spread > &spreads)
 
MultipleResetsLegwithRateSpreads (Spread spread)
 
MultipleResetsLegwithRateSpreads (const std::vector< Spread > &spreads)
 
MultipleResetsLegwithExCouponPeriod (const Period &, const Calendar &, BusinessDayConvention, bool endOfMonth=false)
 
MultipleResetsLegwithAveragingMethod (RateAveraging::Type averagingMethod)
 
 operator Leg () const
 

Private Attributes

Schedule schedule_
 
ext::shared_ptr< IborIndexindex_
 
Size resetsPerCoupon_
 
std::vector< Realnotionals_
 
DayCounter paymentDayCounter_
 
Calendar paymentCalendar_
 
BusinessDayConvention paymentAdjustment_ = Following
 
Integer paymentLag_ = 0
 
std::vector< NaturalfixingDays_
 
std::vector< Realgearings_
 
std::vector< SpreadcouponSpreads_
 
std::vector< SpreadrateSpreads_
 
RateAveraging::Type averagingMethod_ = RateAveraging::Compound
 
Period exCouponPeriod_
 
Calendar exCouponCalendar_
 
BusinessDayConvention exCouponAdjustment_ = Unadjusted
 
bool exCouponEndOfMonth_ = false
 

Detailed Description

helper class building a sequence of multiple-reset coupons

Definition at line 165 of file multipleresetscoupon.hpp.

Constructor & Destructor Documentation

◆ MultipleResetsLeg()

MultipleResetsLeg ( Schedule  fullResetSchedule,
ext::shared_ptr< IborIndex index,
Size  resetsPerCoupon 
)
Parameters
fullResetSchedulethe full schedule specifying reset periods for all coupons.
indexthe index whose fixings will be used; it should have the same tenor as the resets.
resetsPerCouponthe number of resets for each coupon; the number of periods in the schedule should be divided exactly by this number.

Definition at line 197 of file multipleresetscoupon.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ withNotionals() [1/2]

MultipleResetsLeg & withNotionals ( Real  notional)

Definition at line 208 of file multipleresetscoupon.cpp.

◆ withNotionals() [2/2]

MultipleResetsLeg & withNotionals ( const std::vector< Real > &  notionals)

Definition at line 213 of file multipleresetscoupon.cpp.

◆ withPaymentDayCounter()

MultipleResetsLeg & withPaymentDayCounter ( const DayCounter dc)

Definition at line 218 of file multipleresetscoupon.cpp.

◆ withPaymentAdjustment()

MultipleResetsLeg & withPaymentAdjustment ( BusinessDayConvention  convention)

Definition at line 223 of file multipleresetscoupon.cpp.

◆ withPaymentCalendar()

MultipleResetsLeg & withPaymentCalendar ( const Calendar cal)

Definition at line 228 of file multipleresetscoupon.cpp.

◆ withPaymentLag()

MultipleResetsLeg & withPaymentLag ( Integer  lag)

Definition at line 233 of file multipleresetscoupon.cpp.

◆ withFixingDays() [1/2]

MultipleResetsLeg & withFixingDays ( Natural  fixingDays)

Definition at line 238 of file multipleresetscoupon.cpp.

◆ withFixingDays() [2/2]

MultipleResetsLeg & withFixingDays ( const std::vector< Natural > &  fixingDays)

Definition at line 243 of file multipleresetscoupon.cpp.

◆ withGearings() [1/2]

MultipleResetsLeg & withGearings ( Real  gearing)

Definition at line 248 of file multipleresetscoupon.cpp.

◆ withGearings() [2/2]

MultipleResetsLeg & withGearings ( const std::vector< Real > &  gearings)

Definition at line 253 of file multipleresetscoupon.cpp.

◆ withCouponSpreads() [1/2]

MultipleResetsLeg & withCouponSpreads ( Spread  spread)

Definition at line 258 of file multipleresetscoupon.cpp.

◆ withCouponSpreads() [2/2]

MultipleResetsLeg & withCouponSpreads ( const std::vector< Spread > &  spreads)

Definition at line 263 of file multipleresetscoupon.cpp.

◆ withRateSpreads() [1/2]

MultipleResetsLeg & withRateSpreads ( Spread  spread)

Definition at line 268 of file multipleresetscoupon.cpp.

◆ withRateSpreads() [2/2]

MultipleResetsLeg & withRateSpreads ( const std::vector< Spread > &  spreads)

Definition at line 273 of file multipleresetscoupon.cpp.

◆ withExCouponPeriod()

MultipleResetsLeg & withExCouponPeriod ( const Period period,
const Calendar cal,
BusinessDayConvention  convention,
bool  endOfMonth = false 
)

Definition at line 283 of file multipleresetscoupon.cpp.

◆ withAveragingMethod()

MultipleResetsLeg & withAveragingMethod ( RateAveraging::Type  averagingMethod)

Definition at line 278 of file multipleresetscoupon.cpp.

◆ operator Leg()

operator Leg ( ) const

Definition at line 294 of file multipleresetscoupon.cpp.

+ Here is the call graph for this function:

Member Data Documentation

◆ schedule_

Schedule schedule_
private

Definition at line 198 of file multipleresetscoupon.hpp.

◆ index_

ext::shared_ptr<IborIndex> index_
private

Definition at line 199 of file multipleresetscoupon.hpp.

◆ resetsPerCoupon_

Size resetsPerCoupon_
private

Definition at line 200 of file multipleresetscoupon.hpp.

◆ notionals_

std::vector<Real> notionals_
private

Definition at line 201 of file multipleresetscoupon.hpp.

◆ paymentDayCounter_

DayCounter paymentDayCounter_
private

Definition at line 202 of file multipleresetscoupon.hpp.

◆ paymentCalendar_

Calendar paymentCalendar_
private

Definition at line 203 of file multipleresetscoupon.hpp.

◆ paymentAdjustment_

BusinessDayConvention paymentAdjustment_ = Following
private

Definition at line 204 of file multipleresetscoupon.hpp.

◆ paymentLag_

Integer paymentLag_ = 0
private

Definition at line 205 of file multipleresetscoupon.hpp.

◆ fixingDays_

std::vector<Natural> fixingDays_
private

Definition at line 206 of file multipleresetscoupon.hpp.

◆ gearings_

std::vector<Real> gearings_
private

Definition at line 207 of file multipleresetscoupon.hpp.

◆ couponSpreads_

std::vector<Spread> couponSpreads_
private

Definition at line 208 of file multipleresetscoupon.hpp.

◆ rateSpreads_

std::vector<Spread> rateSpreads_
private

Definition at line 209 of file multipleresetscoupon.hpp.

◆ averagingMethod_

RateAveraging::Type averagingMethod_ = RateAveraging::Compound
private

Definition at line 210 of file multipleresetscoupon.hpp.

◆ exCouponPeriod_

Period exCouponPeriod_
private

Definition at line 211 of file multipleresetscoupon.hpp.

◆ exCouponCalendar_

Calendar exCouponCalendar_
private

Definition at line 212 of file multipleresetscoupon.hpp.

◆ exCouponAdjustment_

BusinessDayConvention exCouponAdjustment_ = Unadjusted
private

Definition at line 213 of file multipleresetscoupon.hpp.

◆ exCouponEndOfMonth_

bool exCouponEndOfMonth_ = false
private

Definition at line 214 of file multipleresetscoupon.hpp.