PiecewiseYoYInflationCurve< Interpolator, Bootstrap, Traits > Class Template Reference

Piecewise year-on-year inflation term structure. More...

#include <ql/termstructures/inflation/piecewiseyoyinflationcurve.hpp>

Inheritance diagram for PiecewiseYoYInflationCurve< Interpolator, Bootstrap, Traits >:

List of all members.

Public Types

typedef Traits traits_type
typedef Interpolator interpolator_type

Public Member Functions

Constructors
 PiecewiseYoYInflationCurve (const Date &referenceDate, const Calendar &calendar, const DayCounter &dayCounter, const Period &lag, Frequency frequency, bool indexIsInterpolated, Rate baseYoYRate, const Handle< YieldTermStructure > &nominalTS, const std::vector< boost::shared_ptr< typename Traits::helper > > &instruments, Real accuracy=1.0e-12, const Interpolator &i=Interpolator())
Inflation interface
Date baseDate () const
 minimum (base) date
Date maxDate () const
 the latest date for which the curve can return values
Inspectors
const std::vector< Time > & times () const
const std::vector< Date > & dates () const
const std::vector< Real > & data () const
std::vector< std::pair< Date,
Real > > 
nodes () const
Observer interface
void update ()

Friends

class Bootstrap< this_curve >
class BootstrapError< this_curve >

Detailed Description

template<class Interpolator, template< class > class Bootstrap = IterativeBootstrap, class Traits = YoYInflationTraits>
class QuantLib::PiecewiseYoYInflationCurve< Interpolator, Bootstrap, Traits >

Piecewise year-on-year inflation term structure.


Member Function Documentation

Date baseDate ( ) const [virtual]

minimum (base) date

Important in inflation since it starts before nominal reference date. Changes depending whether index is interpolated or not. When interpolated the base date is just observation lag before nominal. When not interpolated it is the beginning of the relevant period (hence it is easy to create interpolated fixings from a not-interpolated curve because interpolation, usually, of fixings is forward looking).

Reimplemented from InterpolatedYoYInflationCurve< Interpolator >.

void update ( ) [virtual]

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.

Reimplemented from LazyObject.