QuantLib: DigitalCmsSpreadCoupon Class Reference

A free/open-source library for quantitative finance Reference manual - version 1.20

Public Member Functions | List of all members
DigitalCmsSpreadCoupon Class Reference

Cms-spread-rate coupon with digital digital call/put option. More...

`#include <ql/experimental/coupons/digitalcmsspreadcoupon.hpp>`

Inheritance diagram for DigitalCmsSpreadCoupon:
[legend]

## Public Member Functions
| DigitalCmsSpreadCoupon (const ext::shared_ptr< CmsSpreadCoupon > &underlying, Rate callStrike=Null< Rate >(), Position::Type callPosition=Position::Long, bool isCallATMIncluded=false, Rate callDigitalPayoff=Null< Rate >(), Rate putStrike=Null< Rate >(), Position::Type putPosition=Position::Long, bool isPutATMIncluded=false, Rate putDigitalPayoff=Null< Rate >(), const ext::shared_ptr< DigitalReplication > &replication=ext::shared_ptr< DigitalReplication >(new DigitalReplication), bool nakedOption=false)
Visitability
virtual void | accept (AcyclicVisitor &)
Public Member Functions inherited from DigitalCoupon
| DigitalCoupon (const ext::shared_ptr< FloatingRateCoupon > &underlying, Rate callStrike=Null< Rate >(), Position::Type callPosition=Position::Long, bool isCallITMIncluded=false, Rate callDigitalPayoff=Null< Rate >(), Rate putStrike=Null< Rate >(), Position::Type putPosition=Position::Long, bool isPutITMIncluded=false, Rate putDigitalPayoff=Null< Rate >(), const ext::shared_ptr< DigitalReplication > &replication=ext::shared_ptr< DigitalReplication >(), bool nakedOption=false)
| general constructor
Rate | rate () const
| accrued rate
Rate | convexityAdjustment () const
| convexity adjustment
Rate | callStrike () const
Rate | putStrike () const
Rate | callDigitalPayoff () const
Rate | putDigitalPayoff () const
bool | hasPut () const
bool | hasCall () const
bool | hasCollar () const
bool | isLongPut () const
bool | isLongCall () const
ext::shared_ptr< FloatingRateCoupon > | underlying () const
Rate | callOptionRate () const
Rate | putOptionRate () const
void | update ()
void | setPricer (const ext::shared_ptr< FloatingRateCouponPricer > &pricer)
Public Member Functions inherited from FloatingRateCoupon
| FloatingRateCoupon (const Date &paymentDate, Real nominal, const Date &startDate, const Date &endDate, Natural fixingDays, const ext::shared_ptr< InterestRateIndex > &index, Real gearing=1.0, Spread spread=0.0, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const DayCounter &dayCounter=DayCounter(), bool isInArrears=false, const Date &exCouponDate=Date())
Real | amount () const
| returns the amount of the cash flow More...
Rate | rate () const
| accrued rate
Real | price (const Handle< YieldTermStructure > &discountingCurve) const
DayCounter | dayCounter () const
| day counter for accrual calculation
Real | accruedAmount (const Date &) const
| accrued amount at the given date
const ext::shared_ptr< InterestRateIndex > & | index () const
| floating index
Natural | fixingDays () const
| fixing days
virtual Date | fixingDate () const
| fixing date
Real | gearing () const
| index gearing, i.e. multiplicative coefficient for the index
Spread | spread () const
| spread paid over the fixing of the underlying index
virtual Rate | indexFixing () const
| fixing of the underlying index
virtual Rate | adjustedFixing () const
| convexity-adjusted fixing
bool | isInArrears () const
| whether or not the coupon fixes in arrears
void | update ()
ext::shared_ptr< FloatingRateCouponPricer > | pricer () const
Public Member Functions inherited from Coupon
| Coupon (const Date &paymentDate, Real nominal, const Date &accrualStartDate, const Date &accrualEndDate, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const Date &exCouponDate=Date())
Date | date () const
Date | exCouponDate () const
| returns the date that the cash flow trades exCoupon
virtual Real | nominal () const
const Date & | accrualStartDate () const
| start of the accrual period
const Date & | accrualEndDate () const
| end of the accrual period
const Date & | referencePeriodStart () const
| start date of the reference period
const Date & | referencePeriodEnd () const
| end date of the reference period
Time | accrualPeriod () const
| accrual period as fraction of year
Date::serial_type | accrualDays () const
| accrual period in days
Time | accruedPeriod (const Date &) const
| accrued period as fraction of year at the given date
Date::serial_type | accruedDays (const Date &) const
| accrued days at the given date
Public Member Functions inherited from CashFlow
bool | hasOccurred (const Date &refDate=Date(), boost::optional< bool > includeRefDate=boost::none) const
| returns true if an event has already occurred before a date More...
bool | tradingExCoupon (const Date &refDate=Date()) const
| returns true if the cashflow is trading ex-coupon on the refDate
Event interface
Visitability
Public Member Functions inherited from Observable
| Observable (const Observable &)
Observable & | operator= (const Observable &)
void | notifyObservers ()
Public Member Functions inherited from Observer
| Observer (const Observer &)
Observer & | operator= (const Observer &)
std::pair< iterator, bool > | registerWith (const ext::shared_ptr< Observable > &)
void | registerWithObservables (const ext::shared_ptr< Observer > &)
Size | unregisterWith (const ext::shared_ptr< Observable > &)
void | unregisterWithAll ()
virtual void | deepUpdate ()

## Additional Inherited Members
Public Types inherited from Observer
typedef boost::unordered_set< ext::shared_ptr< Observable > > | set_type
typedef set_type::iterator | iterator
Protected Member Functions inherited from FloatingRateCoupon
Rate | convexityAdjustmentImpl (Rate fixing) const
| convexity adjustment for the given index fixing
Protected Attributes inherited from DigitalCoupon
ext::shared_ptr< FloatingRateCoupon > | underlying_
Rate | callStrike_
| strike rate for the the call option
Rate | putStrike_
| strike rate for the the put option
Real | callCsi_
| multiplicative factor of call payoff
Real | putCsi_
| multiplicative factor of put payoff
bool | isCallATMIncluded_
| inclusion flag og the call payoff if the call option ends at-the-money
bool | isPutATMIncluded_
| inclusion flag og the put payoff if the put option ends at-the-money
bool | isCallCashOrNothing_
| digital call option type: if true, cash-or-nothing, if false asset-or-nothing
bool | isPutCashOrNothing_
| digital put option type: if true, cash-or-nothing, if false asset-or-nothing
Rate | callDigitalPayoff_
| digital call option payoff rate, if any
Rate | putDigitalPayoff_
| digital put option payoff rate, if any
Real | callLeftEps_
| the left and right gaps applied in payoff replication for call
Real | callRightEps_
Real | putLeftEps_
| the left and right gaps applied in payoff replication for put
Real | putRightEps_
bool | hasPutStrike_
bool | hasCallStrike_
Replication::Type | replicationType_
| Type of replication.
bool | nakedOption_
| underlying excluded from the payoff
Protected Attributes inherited from FloatingRateCoupon
ext::shared_ptr< InterestRateIndex > | index_
DayCounter | dayCounter_
Natural | fixingDays_
Real | gearing_
Spread | spread_
bool | isInArrears_
ext::shared_ptr< FloatingRateCouponPricer > | pricer_
Protected Attributes inherited from Coupon
Date | paymentDate_
Real | nominal_
Date | accrualStartDate_
Date | accrualEndDate_
Date | refPeriodStart_
Date | refPeriodEnd_
Date | exCouponDate_
Real | accrualPeriod_

## Detailed Description

Cms-spread-rate coupon with digital digital call/put option.