|
QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
Base inflation-coupon pricer. More...
#include <inflationcouponpricer.hpp>
Inheritance diagram for InflationCouponPricer:
Collaboration diagram for InflationCouponPricer:Public Member Functions | |
| QL_DEPRECATED_DISABLE_WARNING | InflationCouponPricer ()=default |
| ~InflationCouponPricer () override=default | |
Interface | |
| virtual Real | swapletPrice () const =0 |
| virtual Rate | swapletRate () const =0 |
| virtual Real | capletPrice (Rate effectiveCap) const =0 |
| virtual Rate | capletRate (Rate effectiveCap) const =0 |
| virtual Real | floorletPrice (Rate effectiveFloor) const =0 |
| virtual Rate | floorletRate (Rate effectiveFloor) const =0 |
| virtual void | initialize (const InflationCoupon &)=0 |
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 () |
Observer interface | |
| Date | paymentDate_ |
| void | update () override |
Additional Inherited Members | |
Public Types inherited from Observer | |
| typedef set_type::iterator | iterator |
Base inflation-coupon pricer.
The main reason we can't use FloatingRateCouponPricer as the base is that it takes a FloatingRateCoupon which takes an InterestRateIndex and we need an inflation index (these are lagged).
The basic inflation-specific thing that the pricer has to do is deal with different lags in the index and the option e.g. the option could look 3 months back and the index 2.
We add the requirement that pricers do inverseCap/Floor-lets. These are cap/floor-lets as usually defined, i.e. pay out if underlying is above/below a strike. The non-inverse (usual) versions are from a coupon point of view (a capped coupon has a maximum at the strike).
We add the inverse prices so that conventional caps can be priced simply.
Definition at line 53 of file inflationcouponpricer.hpp.
|
default |
|
overridedefault |
|
pure virtual |
Implemented in CPICouponPricer, and YoYInflationCouponPricer.
|
pure virtual |
Implemented in CPICouponPricer, and YoYInflationCouponPricer.
Implemented in CPICouponPricer, and YoYInflationCouponPricer.
Implemented in CPICouponPricer, and YoYInflationCouponPricer.
Implemented in CPICouponPricer, and YoYInflationCouponPricer.
Implemented in CPICouponPricer, and YoYInflationCouponPricer.
|
pure virtual |
Implemented in CPICouponPricer, and YoYInflationCouponPricer.
|
overridevirtual |
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.
Implements Observer.
Definition at line 73 of file inflationcouponpricer.hpp.
Here is the call graph for this function:
|
protected |
Definition at line 76 of file inflationcouponpricer.hpp.