|
QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
CMS-coupon pricer. More...
#include <lineartsrpricer.hpp>
Inheritance diagram for LinearTsrPricer:
Collaboration diagram for LinearTsrPricer:Classes | |
| class | PriceHelper |
| struct | Settings |
| class | VegaRatioHelper |
Public Member Functions | |
| LinearTsrPricer (const Handle< SwaptionVolatilityStructure > &swaptionVol, Handle< Quote > meanReversion, Handle< YieldTermStructure > couponDiscountCurve=Handle< YieldTermStructure >(), const Settings &settings=Settings(), ext::shared_ptr< Integrator > integrator=ext::shared_ptr< Integrator >()) | |
| Real | swapletPrice () const override |
| 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< SwaptionVolatilityStructure > | swaptionVolatility () const |
| void | setSwaptionVolatility (const Handle< SwaptionVolatilityStructure > &v=Handle< SwaptionVolatilityStructure >()) |
Public Member Functions inherited from FloatingRateCouponPricer | |
| ~FloatingRateCouponPricer () override=default | |
| void | update () override |
Public Member Functions inherited from Observer | |
| Observer ()=default | |
| Observer (const Observer &) | |
| Observer & | operator= (const Observer &) |
| virtual | ~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 | update ()=0 |
| virtual void | deepUpdate () |
Public Member Functions inherited from Observable | |
| Observable ()=default | |
| Observable (const Observable &) | |
| Observable & | operator= (const Observable &) |
| Observable (Observable &&)=delete | |
| Observable & | operator= (Observable &&)=delete |
| virtual | ~Observable ()=default |
| void | notifyObservers () |
Public Member Functions inherited from MeanRevertingPricer | |
| virtual Real | meanReversion () const =0 |
| virtual void | setMeanReversion (const Handle< Quote > &)=0 |
| virtual | ~MeanRevertingPricer ()=default |
Private Member Functions | |
| Real | GsrG (const Date &d) const |
| Real | singularTerms (Option::Type type, Real strike) const |
| Real | integrand (Real strike) const |
| void | initialize (const FloatingRateCoupon &coupon) override |
| Real | optionletPrice (Option::Type optionType, Real strike) const |
| Real | strikeFromVegaRatio (Real ratio, Option::Type optionType, Real referenceStrike) const |
| Real | strikeFromPrice (Real price, Option::Type optionType, Real referenceStrike) const |
Private Attributes | |
| Real | a_ |
| Real | b_ |
| Handle< Quote > | meanReversion_ |
| Handle< YieldTermStructure > | forwardCurve_ |
| Handle< YieldTermStructure > | discountCurve_ |
| Handle< YieldTermStructure > | couponDiscountCurve_ |
| const CmsCoupon * | coupon_ |
| Date | today_ |
| Date | paymentDate_ |
| Date | fixingDate_ |
| Real | gearing_ |
| Real | spread_ |
| Period | swapTenor_ |
| Real | spreadLegValue_ |
| Real | swapRateValue_ |
| Real | couponDiscountRatio_ |
| Real | discountCurvePaymentDiscount_ |
| Real | annuity_ |
| ext::shared_ptr< SwapIndex > | swapIndex_ |
| ext::shared_ptr< FixedVsFloatingSwap > | swap_ |
| ext::shared_ptr< SmileSection > | smileSection_ |
| Settings | settings_ |
| DayCounter | volDayCounter_ |
| ext::shared_ptr< Integrator > | integrator_ |
| Real | adjustedLowerBound_ |
| Real | adjustedUpperBound_ |
Static Private Attributes | |
| static const Real | defaultLowerBound = 0.0001 |
| static const Real | defaultUpperBound = 2.0000 |
Additional Inherited Members | |
Public Types inherited from Observer | |
| typedef set_type::iterator | iterator |
CMS-coupon pricer.
Prices a cms coupon using a linear terminal swap rate model The slope parameter is linked to a gaussian short rate model. Reference: Andersen, Piterbarg, Interest Rate Modeling, 16.3.2
The cut off point for integration can be set
Definition at line 64 of file lineartsrpricer.hpp.
| LinearTsrPricer | ( | const Handle< SwaptionVolatilityStructure > & | swaptionVol, |
| Handle< Quote > | meanReversion, | ||
| Handle< YieldTermStructure > | couponDiscountCurve = Handle<YieldTermStructure>(), |
||
| const Settings & | settings = Settings(), |
||
| ext::shared_ptr< Integrator > | integrator = ext::shared_ptr<Integrator>() |
||
| ) |
|
overridevirtual |
Implements FloatingRateCouponPricer.
Definition at line 420 of file lineartsrpricer.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
Implements FloatingRateCouponPricer.
Definition at line 375 of file lineartsrpricer.cpp.
Here is the call graph for this function:Implements FloatingRateCouponPricer.
Definition at line 380 of file lineartsrpricer.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Implements FloatingRateCouponPricer.
Definition at line 395 of file lineartsrpricer.cpp.
Here is the call graph for this function:Implements FloatingRateCouponPricer.
Definition at line 400 of file lineartsrpricer.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Implements FloatingRateCouponPricer.
Definition at line 415 of file lineartsrpricer.cpp.
Here is the call graph for this function:
|
overridevirtual |
Implements MeanRevertingPricer.
Definition at line 373 of file lineartsrpricer.cpp.
Here is the caller graph for this function:Implements MeanRevertingPricer.
Definition at line 177 of file lineartsrpricer.hpp.
Here is the call graph for this function:Definition at line 71 of file lineartsrpricer.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 94 of file lineartsrpricer.cpp.
|
overrideprivatevirtual |
Implements FloatingRateCouponPricer.
Definition at line 100 of file lineartsrpricer.cpp.
Here is the call graph for this function:
|
private |
Definition at line 272 of file lineartsrpricer.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 208 of file lineartsrpricer.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 241 of file lineartsrpricer.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
staticprivate |
Definition at line 67 of file lineartsrpricer.hpp.
|
staticprivate |
Definition at line 68 of file lineartsrpricer.hpp.
|
private |
Definition at line 190 of file lineartsrpricer.hpp.
|
private |
Definition at line 190 of file lineartsrpricer.hpp.
Definition at line 225 of file lineartsrpricer.hpp.
|
private |
Definition at line 227 of file lineartsrpricer.hpp.
|
private |
Definition at line 227 of file lineartsrpricer.hpp.
|
private |
Definition at line 228 of file lineartsrpricer.hpp.
|
private |
Definition at line 230 of file lineartsrpricer.hpp.
|
private |
Definition at line 232 of file lineartsrpricer.hpp.
|
private |
Definition at line 232 of file lineartsrpricer.hpp.
|
private |
Definition at line 232 of file lineartsrpricer.hpp.
|
private |
Definition at line 234 of file lineartsrpricer.hpp.
|
private |
Definition at line 234 of file lineartsrpricer.hpp.
|
private |
Definition at line 236 of file lineartsrpricer.hpp.
|
private |
Definition at line 237 of file lineartsrpricer.hpp.
|
private |
Definition at line 237 of file lineartsrpricer.hpp.
|
private |
Definition at line 237 of file lineartsrpricer.hpp.
|
private |
Definition at line 237 of file lineartsrpricer.hpp.
|
private |
Definition at line 238 of file lineartsrpricer.hpp.
|
private |
Definition at line 240 of file lineartsrpricer.hpp.
|
private |
Definition at line 241 of file lineartsrpricer.hpp.
|
private |
Definition at line 242 of file lineartsrpricer.hpp.
|
private |
Definition at line 244 of file lineartsrpricer.hpp.
|
private |
Definition at line 245 of file lineartsrpricer.hpp.
|
private |
Definition at line 246 of file lineartsrpricer.hpp.
|
private |
Definition at line 248 of file lineartsrpricer.hpp.
|
private |
Definition at line 248 of file lineartsrpricer.hpp.