QuantLib: LognormalCmsSpreadPricer Class Reference

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

Public Member Functions | List of all members
LognormalCmsSpreadPricer Class Reference

CMS spread - coupon pricer. More...

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

Inheritance diagram for LognormalCmsSpreadPricer:
[legend]

## Public Member Functions
| LognormalCmsSpreadPricer (const boost::shared_ptr< CmsCouponPricer > cmsPricer, const Handle< Quote > &correlation, const Handle< YieldTermStructure > &couponDiscountCurve=Handle< YieldTermStructure >(), const Size IntegrationPoints=16, const boost::optional< VolatilityType > volatilityType=boost::none, const Real shift1=Null< Real >(), const Real shift2=Null< Real >())
virtual Real | swapletPrice () const
virtual Rate | swapletRate () const
virtual Real | capletPrice (Rate effectiveCap) const
virtual Rate | capletRate (Rate effectiveCap) const
virtual Real | floorletPrice (Rate effectiveFloor) const
virtual Rate | floorletRate (Rate effectiveFloor) const
void | flushCache ()
Public Member Functions inherited from CmsSpreadCouponPricer
| CmsSpreadCouponPricer (const Handle< Quote > &correlation=Handle< Quote >())
Handle< Quote > | correlation () const
void | setCorrelation (const Handle< Quote > &correlation=Handle< Quote >())
Public Member Functions inherited from FloatingRateCouponPricer
void | update ()
Public Member Functions inherited from Observer
| Observer (const Observer &)
Observer & | operator= (const Observer &)
std::pair< iterator, bool > | registerWith (const boost::shared_ptr< Observable > &)
void | registerWithObservables (const boost::shared_ptr< Observer > &)
Size | unregisterWith (const boost::shared_ptr< Observable > &)
void | unregisterWithAll ()
virtual void | deepUpdate ()
Public Member Functions inherited from Observable
| Observable (const Observable &)
Observable & | operator= (const Observable &)
void | notifyObservers ()

## Additional Inherited Members
Public Types inherited from Observer
typedef std::set< boost::shared_ptr< Observable > > | set_type
typedef set_type::iterator | iterator

## Detailed Description

CMS spread - coupon pricer.

The swap rate adjustments are computed using the given volatility structures for the underlyings in every case (w.r.t. volatility type and shift).

For the bivariate spread model, the volatility type and the shifts can be inherited (default), or explicitly specified. In the latter case the type, and (if lognormal) the shifts must be given (or are defaulted to zero, if not given).

References:

Brigo, Mercurio: Interst Rate Models - Theory and Practice, 2nd Edition, Springer, 2006, chapter 13.6.2

http://ssrn.com/abstract=2686998