- QuantLib
- DigitalCoupon
Digital-payoff coupon. More...
#include <ql/cashflows/digitalcoupon.hpp>

Public Member Functions | |
Constructors | |
| DigitalCoupon (const boost::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 boost::shared_ptr< DigitalReplication > &replication=boost::shared_ptr< DigitalReplication >()) | |
| general constructor | |
Coupon interface | |
| Rate | rate () const |
| accrued rate | |
| Rate | convexityAdjustment () const |
| convexity adjustment | |
Digital inspectors | |
| 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 |
|
boost::shared_ptr < FloatingRateCoupon > | underlying () const |
| Rate | callOptionRate () const |
| Rate | putOptionRate () const |
Observer interface | |
| void | update () |
Visitability | |
| virtual void | accept (AcyclicVisitor &) |
| void | setPricer (const boost::shared_ptr< FloatingRateCouponPricer > &pricer) |
Protected Attributes | |
Data members | |
|
boost::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 puf | |
| Real | putRightEps_ |
| bool | hasPutStrike_ |
| bool | hasCallStrike_ |
| Replication::Type | replicationType_ |
| Type of replication. | |
Digital-payoff coupon.
Implementation of a floating-rate coupon with digital call/put option. Payoffs:
| Rate callOptionRate | ( | ) | const |
Returns the call option rate (multiplied by: nominal*accrualperiod*discount is the NPV of the option)
| Rate putOptionRate | ( | ) | const |
Returns the put option rate (multiplied by: nominal*accrualperiod*discount is the NPV of the option)
| void update | ( | ) | [virtual] |
This method must be implemented in derived classes. An instance of Observer does not call this method directly: instead, it will be called by the observables the instance registered with when they need to notify any changes.
Reimplemented from FloatingRateCoupon.