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

helper class for instantiating CMS More...

#include <makecms.hpp>

+ Collaboration diagram for MakeCms:

Public Member Functions

 MakeCms (const Period &swapTenor, const ext::shared_ptr< SwapIndex > &swapIndex, const ext::shared_ptr< IborIndex > &iborIndex, Spread iborSpread=0.0, const Period &forwardStart=0 *Days)
 
 MakeCms (const Period &swapTenor, const ext::shared_ptr< SwapIndex > &swapIndex, Spread iborSpread=0.0, const Period &forwardStart=0 *Days)
 
 operator Swap () const
 
 operator ext::shared_ptr< Swap > () const
 
MakeCmsreceiveCms (bool flag=true)
 
MakeCmswithNominal (Real n)
 
MakeCmswithEffectiveDate (const Date &)
 
MakeCmswithCmsLegTenor (const Period &t)
 
MakeCmswithCmsLegCalendar (const Calendar &cal)
 
MakeCmswithCmsLegConvention (BusinessDayConvention bdc)
 
MakeCmswithCmsLegTerminationDateConvention (BusinessDayConvention)
 
MakeCmswithCmsLegRule (DateGeneration::Rule r)
 
MakeCmswithCmsLegEndOfMonth (bool flag=true)
 
MakeCmswithCmsLegFirstDate (const Date &d)
 
MakeCmswithCmsLegNextToLastDate (const Date &d)
 
MakeCmswithCmsLegDayCount (const DayCounter &dc)
 
MakeCmswithFloatingLegTenor (const Period &t)
 
MakeCmswithFloatingLegCalendar (const Calendar &cal)
 
MakeCmswithFloatingLegConvention (BusinessDayConvention bdc)
 
MakeCmswithFloatingLegTerminationDateConvention (BusinessDayConvention bdc)
 
MakeCmswithFloatingLegRule (DateGeneration::Rule r)
 
MakeCmswithFloatingLegEndOfMonth (bool flag=true)
 
MakeCmswithFloatingLegFirstDate (const Date &d)
 
MakeCmswithFloatingLegNextToLastDate (const Date &d)
 
MakeCmswithFloatingLegDayCount (const DayCounter &dc)
 
MakeCmswithAtmSpread (bool flag=true)
 
MakeCmswithDiscountingTermStructure (const Handle< YieldTermStructure > &discountingTermStructure)
 
MakeCmswithCmsCouponPricer (const ext::shared_ptr< CmsCouponPricer > &couponPricer)
 

Private Attributes

Period swapTenor_
 
ext::shared_ptr< SwapIndexswapIndex_
 
ext::shared_ptr< IborIndexiborIndex_
 
Spread iborSpread_
 
bool useAtmSpread_
 
Period forwardStart_
 
Spread cmsSpread_
 
Real cmsGearing_
 
Rate cmsCap_
 
Rate cmsFloor_
 
Date effectiveDate_
 
Calendar cmsCalendar_
 
Calendar floatCalendar_
 
bool payCms_
 
Real nominal_
 
Period cmsTenor_
 
Period floatTenor_
 
BusinessDayConvention cmsConvention_
 
BusinessDayConvention cmsTerminationDateConvention_
 
BusinessDayConvention floatConvention_
 
BusinessDayConvention floatTerminationDateConvention_
 
DateGeneration::Rule cmsRule_
 
DateGeneration::Rule floatRule_
 
bool cmsEndOfMonth_
 
bool floatEndOfMonth_
 
Date cmsFirstDate_
 
Date cmsNextToLastDate_
 
Date floatFirstDate_
 
Date floatNextToLastDate_
 
DayCounter cmsDayCount_
 
DayCounter floatDayCount_
 
ext::shared_ptr< PricingEngineengine_
 
ext::shared_ptr< CmsCouponPricercouponPricer_
 

Detailed Description

helper class for instantiating CMS

This class provides a more comfortable way to instantiate standard market constant maturity swap.

Definition at line 40 of file makecms.hpp.

Constructor & Destructor Documentation

◆ MakeCms() [1/2]

MakeCms ( const Period swapTenor,
const ext::shared_ptr< SwapIndex > &  swapIndex,
const ext::shared_ptr< IborIndex > &  iborIndex,
Spread  iborSpread = 0.0,
const Period forwardStart = 0*Days 
)

Definition at line 33 of file makecms.cpp.

◆ MakeCms() [2/2]

MakeCms ( const Period swapTenor,
const ext::shared_ptr< SwapIndex > &  swapIndex,
Spread  iborSpread = 0.0,
const Period forwardStart = 0*Days 
)

Definition at line 58 of file makecms.cpp.

Member Function Documentation

◆ operator Swap()

operator Swap ( ) const

Definition at line 80 of file makecms.cpp.

+ Here is the call graph for this function:

◆ operator ext::shared_ptr< Swap >()

operator ext::shared_ptr< Swap > ( ) const

Definition at line 85 of file makecms.cpp.

+ Here is the call graph for this function:

◆ receiveCms()

MakeCms & receiveCms ( bool  flag = true)

Definition at line 172 of file makecms.cpp.

◆ withNominal()

MakeCms & withNominal ( Real  n)

Definition at line 177 of file makecms.cpp.

◆ withEffectiveDate()

MakeCms & withEffectiveDate ( const Date effectiveDate)

Definition at line 183 of file makecms.cpp.

◆ withCmsLegTenor()

MakeCms & withCmsLegTenor ( const Period t)

Definition at line 200 of file makecms.cpp.

◆ withCmsLegCalendar()

MakeCms & withCmsLegCalendar ( const Calendar cal)

Definition at line 206 of file makecms.cpp.

◆ withCmsLegConvention()

MakeCms & withCmsLegConvention ( BusinessDayConvention  bdc)

Definition at line 212 of file makecms.cpp.

◆ withCmsLegTerminationDateConvention()

MakeCms & withCmsLegTerminationDateConvention ( BusinessDayConvention  bdc)

Definition at line 218 of file makecms.cpp.

◆ withCmsLegRule()

MakeCms & withCmsLegRule ( DateGeneration::Rule  r)

Definition at line 223 of file makecms.cpp.

◆ withCmsLegEndOfMonth()

MakeCms & withCmsLegEndOfMonth ( bool  flag = true)

Definition at line 228 of file makecms.cpp.

◆ withCmsLegFirstDate()

MakeCms & withCmsLegFirstDate ( const Date d)

Definition at line 233 of file makecms.cpp.

◆ withCmsLegNextToLastDate()

MakeCms & withCmsLegNextToLastDate ( const Date d)

Definition at line 239 of file makecms.cpp.

◆ withCmsLegDayCount()

MakeCms & withCmsLegDayCount ( const DayCounter dc)

Definition at line 245 of file makecms.cpp.

◆ withFloatingLegTenor()

MakeCms & withFloatingLegTenor ( const Period t)

Definition at line 250 of file makecms.cpp.

◆ withFloatingLegCalendar()

MakeCms & withFloatingLegCalendar ( const Calendar cal)

Definition at line 256 of file makecms.cpp.

◆ withFloatingLegConvention()

MakeCms & withFloatingLegConvention ( BusinessDayConvention  bdc)

Definition at line 262 of file makecms.cpp.

◆ withFloatingLegTerminationDateConvention()

MakeCms & withFloatingLegTerminationDateConvention ( BusinessDayConvention  bdc)

Definition at line 268 of file makecms.cpp.

◆ withFloatingLegRule()

MakeCms & withFloatingLegRule ( DateGeneration::Rule  r)

Definition at line 273 of file makecms.cpp.

◆ withFloatingLegEndOfMonth()

MakeCms & withFloatingLegEndOfMonth ( bool  flag = true)

Definition at line 278 of file makecms.cpp.

◆ withFloatingLegFirstDate()

MakeCms & withFloatingLegFirstDate ( const Date d)

Definition at line 284 of file makecms.cpp.

◆ withFloatingLegNextToLastDate()

MakeCms & withFloatingLegNextToLastDate ( const Date d)

Definition at line 290 of file makecms.cpp.

◆ withFloatingLegDayCount()

MakeCms & withFloatingLegDayCount ( const DayCounter dc)

Definition at line 296 of file makecms.cpp.

◆ withAtmSpread()

MakeCms & withAtmSpread ( bool  flag = true)

Definition at line 301 of file makecms.cpp.

◆ withDiscountingTermStructure()

MakeCms & withDiscountingTermStructure ( const Handle< YieldTermStructure > &  discountingTermStructure)

Definition at line 188 of file makecms.cpp.

+ Here is the caller graph for this function:

◆ withCmsCouponPricer()

MakeCms & withCmsCouponPricer ( const ext::shared_ptr< CmsCouponPricer > &  couponPricer)

Definition at line 194 of file makecms.cpp.

+ Here is the caller graph for this function:

Member Data Documentation

◆ swapTenor_

Period swapTenor_
private

Definition at line 89 of file makecms.hpp.

◆ swapIndex_

ext::shared_ptr<SwapIndex> swapIndex_
private

Definition at line 90 of file makecms.hpp.

◆ iborIndex_

ext::shared_ptr<IborIndex> iborIndex_
private

Definition at line 91 of file makecms.hpp.

◆ iborSpread_

Spread iborSpread_
private

Definition at line 92 of file makecms.hpp.

◆ useAtmSpread_

bool useAtmSpread_
private

Definition at line 93 of file makecms.hpp.

◆ forwardStart_

Period forwardStart_
private

Definition at line 94 of file makecms.hpp.

◆ cmsSpread_

Spread cmsSpread_
private

Definition at line 96 of file makecms.hpp.

◆ cmsGearing_

Real cmsGearing_
private

Definition at line 97 of file makecms.hpp.

◆ cmsCap_

Rate cmsCap_
private

Definition at line 98 of file makecms.hpp.

◆ cmsFloor_

Rate cmsFloor_
private

Definition at line 98 of file makecms.hpp.

◆ effectiveDate_

Date effectiveDate_
private

Definition at line 100 of file makecms.hpp.

◆ cmsCalendar_

Calendar cmsCalendar_
private

Definition at line 101 of file makecms.hpp.

◆ floatCalendar_

Calendar floatCalendar_
private

Definition at line 101 of file makecms.hpp.

◆ payCms_

bool payCms_
private

Definition at line 103 of file makecms.hpp.

◆ nominal_

Real nominal_
private

Definition at line 104 of file makecms.hpp.

◆ cmsTenor_

Period cmsTenor_
private

Definition at line 105 of file makecms.hpp.

◆ floatTenor_

Period floatTenor_
private

Definition at line 105 of file makecms.hpp.

◆ cmsConvention_

BusinessDayConvention cmsConvention_
private

Definition at line 106 of file makecms.hpp.

◆ cmsTerminationDateConvention_

BusinessDayConvention cmsTerminationDateConvention_
private

Definition at line 106 of file makecms.hpp.

◆ floatConvention_

BusinessDayConvention floatConvention_
private

Definition at line 107 of file makecms.hpp.

◆ floatTerminationDateConvention_

BusinessDayConvention floatTerminationDateConvention_
private

Definition at line 107 of file makecms.hpp.

◆ cmsRule_

DateGeneration::Rule cmsRule_
private

Definition at line 108 of file makecms.hpp.

◆ floatRule_

DateGeneration::Rule floatRule_
private

Definition at line 108 of file makecms.hpp.

◆ cmsEndOfMonth_

bool cmsEndOfMonth_
private

Definition at line 109 of file makecms.hpp.

◆ floatEndOfMonth_

bool floatEndOfMonth_
private

Definition at line 109 of file makecms.hpp.

◆ cmsFirstDate_

Date cmsFirstDate_
private

Definition at line 110 of file makecms.hpp.

◆ cmsNextToLastDate_

Date cmsNextToLastDate_
private

Definition at line 110 of file makecms.hpp.

◆ floatFirstDate_

Date floatFirstDate_
private

Definition at line 111 of file makecms.hpp.

◆ floatNextToLastDate_

Date floatNextToLastDate_
private

Definition at line 111 of file makecms.hpp.

◆ cmsDayCount_

DayCounter cmsDayCount_
private

Definition at line 112 of file makecms.hpp.

◆ floatDayCount_

DayCounter floatDayCount_
private

Definition at line 112 of file makecms.hpp.

◆ engine_

ext::shared_ptr<PricingEngine> engine_
private

Definition at line 114 of file makecms.hpp.

◆ couponPricer_

ext::shared_ptr<CmsCouponPricer> couponPricer_
private

Definition at line 115 of file makecms.hpp.