QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
Loading...
Searching...
No Matches
HaganPricer Class Referenceabstract

CMS-coupon pricer. More...

#include <ql/cashflows/conundrumpricer.hpp>

Inheritance diagram for HaganPricer:

Public Member Functions

Real swapletPrice () const override=0
Rate swapletRate () const override
Real capletPrice (Rate effectiveCap) const override
Rate capletRate (Rate effectiveCap) const override
Real floorletPrice (Rate effectiveFloor) const override
Rate floorletRate (Rate effectiveFloor) const override
Real meanReversion () const override
void setMeanReversion (const Handle< Quote > &meanReversion) override
Public Member Functions inherited from CmsCouponPricer
 CmsCouponPricer (Handle< SwaptionVolatilityStructure > v=Handle< SwaptionVolatilityStructure >())
Handle< SwaptionVolatilityStructureswaptionVolatility () const
void setSwaptionVolatility (const Handle< SwaptionVolatilityStructure > &v=Handle< SwaptionVolatilityStructure >())
Public Member Functions inherited from FloatingRateCouponPricer
void update () override
Public Member Functions inherited from Observer
 Observer (const Observer &)
Observeroperator= (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 ()
Public Member Functions inherited from Observable
 Observable (const Observable &)
Observableoperator= (const Observable &)
 Observable (Observable &&)=delete
Observableoperator= (Observable &&)=delete
void notifyObservers ()

Protected Member Functions

 HaganPricer (const Handle< SwaptionVolatilityStructure > &swaptionVol, GFunctionFactory::YieldCurveModel modelOfYieldCurve, Handle< Quote > meanReversion)
void initialize (const FloatingRateCoupon &coupon) override
virtual Real optionletPrice (Option::Type optionType, Real strike) const =0

Protected Attributes

ext::shared_ptr< YieldTermStructurerateCurve_
GFunctionFactory::YieldCurveModel modelOfYieldCurve_
ext::shared_ptr< GFunction > gFunction_
const CmsCouponcoupon_
Date paymentDate_
Date fixingDate_
Rate swapRateValue_
DiscountFactor discount_
Real annuity_
Real gearing_
Spread spread_
Real spreadLegValue_
Rate cutoffForCaplet_ = 2
Rate cutoffForFloorlet_ = 0
Handle< QuotemeanReversion_
Period swapTenor_
ext::shared_ptr< VanillaOptionPricer > vanillaOptionPricer_

Additional Inherited Members

Public Types inherited from Observer
typedef set_type::iterator iterator

Detailed Description

CMS-coupon pricer.

Base class for the pricing of a CMS coupon via static replication as in Hagan's "Conundrums..." article

Member Function Documentation

◆ swapletPrice()

Real swapletPrice ( ) const
overridepure virtual

◆ swapletRate()

Rate swapletRate ( ) const
overridevirtual

◆ capletPrice()

Real capletPrice ( Rate effectiveCap) const
overridevirtual

◆ capletRate()

Rate capletRate ( Rate effectiveCap) const
overridevirtual

◆ floorletPrice()

Real floorletPrice ( Rate effectiveFloor) const
overridevirtual

◆ floorletRate()

Rate floorletRate ( Rate effectiveFloor) const
overridevirtual

◆ meanReversion()

Real meanReversion ( ) const
overridevirtual

Implements MeanRevertingPricer.

◆ setMeanReversion()

void setMeanReversion ( const Handle< Quote > & meanReversion)
overridevirtual

Implements MeanRevertingPricer.

◆ initialize()

void initialize ( const FloatingRateCoupon & coupon)
overrideprotectedvirtual