Logo
Reference manual - version qle_version
Public Member Functions | List of all members
EquityMarginCoupon Class Reference

equity coupon More...

#include <qle/cashflows/equitymargincoupon.hpp>

+ Inheritance diagram for EquityMarginCoupon:

Public Member Functions

 EquityMarginCoupon (const Date &paymentDate, Real nominal, Rate rate, Real marginFactor, const Date &startDate, const Date &endDate, Natural fixingDays, const boost::shared_ptr< QuantExt::EquityIndex2 > &equityCurve, const DayCounter &dayCounter, bool isTotalReturn=false, Real dividendFactor=1.0, bool notionalReset=false, Real initialPrice=Null< Real >(), Real quantity=Null< Real >(), const Date &fixingStartDate=Date(), const Date &fixingEndDate=Date(), const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date(), const Date &exCouponDate=Date(), Real multiplier=Null< Real >(), const boost::shared_ptr< FxIndex > &fxIndex=nullptr, const bool initialPriceIsInTargetCcy=false)
 
Coupon interface
DayCounter dayCounter () const override
 
Real accruedAmount (const Date &) const override
 
Real amount () const override
 
Rate rate () const override
 
Real nominal () const override
 
Inspectors
const boost::shared_ptr< QuantExt::EquityIndex2 > & equityCurve () const
 equity reference rate curve
 
const boost::shared_ptr< FxIndex > & fxIndex () const
 fx index curve
 
bool isTotalReturn () const
 total return or price return?
 
Real dividendFactor () const
 are dividends scaled (e.g. to account for tax)
 
Date fixingStartDate () const
 The date at which the starting equity price is fixed.
 
Date fixingEndDate () const
 The date at which performance is measured.
 
std::vector< Date > fixingDates () const
 return both fixing dates
 
Real initialPrice () const
 initial price
 
bool initialPriceIsInTargetCcy () const
 initial price is in target ccy (if applicable, i.e. if fxIndex != null, otherwise ignored)
 
Real quantity () const
 Number of equity shares held.
 
Real fxRate () const
 FX conversion rate (or 1.0 if not applicable)
 
Date fixingDate () const
 This function is called for other coupon types.
 
Real marginFactor () const
 
InterestRate fixedRate () const
 
Real multiplier () const
 
Observer interface
void update () override
 

Visitability

boost::shared_ptr< EquityMarginCouponPricerpricer_
 
Natural fixingDays_
 
boost::shared_ptr< QuantExt::EquityIndex2equityCurve_
 
DayCounter dayCounter_
 
bool isTotalReturn_
 
Real dividendFactor_
 
bool notionalReset_
 
Real initialPrice_
 
bool initialPriceIsInTargetCcy_
 
Real quantity_
 
Date fixingStartDate_
 
Date fixingEndDate_
 
Natural paymentLag_
 
boost::shared_ptr< FxIndexfxIndex_
 
Real marginFactor_
 
InterestRate fixedRate_
 
Real multiplier_
 
virtual void accept (AcyclicVisitor &) override
 
void setPricer (const boost::shared_ptr< EquityMarginCouponPricer > &)
 
boost::shared_ptr< EquityMarginCouponPricerpricer () const
 

Detailed Description

equity coupon