QuantLib_YieldTermStructure (3) - Linux Manuals
QuantLib_YieldTermStructure: Interest-rate term structure.
NAME
QuantLib::YieldTermStructure - Interest-rate term structure.
SYNOPSIS
#include <ql/termstructures/yieldtermstructure.hpp>
Inherits QuantLib::TermStructure.
Inherited by InterpolatedDiscountCurve< LogLinear >, FittedBondDiscountCurve, FlatForward, ForwardRateStructure, ImpliedTermStructure, InterpolatedDiscountCurve< Interpolator >, and ZeroYieldStructure.
Public Member Functions
Constructors
See the TermStructure documentation for issues regarding constructors.
YieldTermStructure (const DayCounter &dc=DayCounter())
default constructor
YieldTermStructure (const Date &referenceDate, const Calendar &cal=Calendar(), const DayCounter &dc=DayCounter())
initialize with a fixed reference date
YieldTermStructure (Natural settlementDays, const Calendar &cal, const DayCounter &dc=DayCounter())
calculate the reference date based on the global evaluation date
zero-yield rates
These methods return the implied zero-yield rate for a given date or time. In the former case, the time is calculated as a fraction of year from the reference date.
InterestRate zeroRate (const Date &d, const DayCounter &resultDayCounter, Compounding comp, Frequency freq=Annual, bool extrapolate=false) const
InterestRate zeroRate (Time t, Compounding comp, Frequency freq=Annual, bool extrapolate=false) const
discount factors
These methods return the discount factor for a given date or time. In the former case, the time is calculated as a fraction of year from the reference date.
DiscountFactor discount (const Date &, bool extrapolate=false) const
DiscountFactor discount (Time, bool extrapolate=false) const
forward rates
These methods returns the implied forward interest rate between two dates or times. In the former case, times are calculated as fractions of year from the reference date.
InterestRate forwardRate (const Date &d1, const Date &d2, const DayCounter &resultDayCounter, Compounding comp, Frequency freq=Annual, bool extrapolate=false) const
InterestRate forwardRate (const Date &d, const Period &p, const DayCounter &resultDayCounter, Compounding comp, Frequency freq=Annual, bool extrapolate=false) const
InterestRate forwardRate (Time t1, Time t2, Compounding comp, Frequency freq=Annual, bool extrapolate=false) const
par rates
These methods returns the implied par rate for a given sequence of payments at the given dates or times. In the former case, times are calculated as fractions of year from the reference date.
Warning
- though somewhat related to a swap rate, this method is not to be used for the fair rate of a real swap, since it does not take into account all the market conventions' details. The correct way to evaluate such rate is to instantiate a SimpleSwap with the correct conventions, pass it the term structure and call the swap's fairRate() method.
Rate parRate (Integer tenor, const Date &startDate, Frequency freq=Annual, bool extrapolate=false) const
Rate parRate (const std::vector< Date > &dates, Frequency freq=Annual, bool extrapolate=false) const
Rate parRate (const std::vector< Time > ×, Frequency freq=Annual, bool extrapolate=false) const
Protected Member Functions
Calculations
These methods must be implemented in derived classes to perform the actual discount and rate calculations. When they are called, range check has already been performed; therefore, they must assume that extrapolation is required.
virtual DiscountFactor discountImpl (Time) const =0
discount calculation
Detailed Description
Interest-rate term structure.
This abstract class defines the interface of concrete rate structures which will be derived from this one.
Rates are assumed to be annual continuous compounding.
Possible enhancements
- add derived class ParSwapTermStructure similar to ZeroYieldTermStructure, DiscountStructure, ForwardRateStructure
Tests
- observability against evaluation date changes is checked.
Constructor & Destructor Documentation
YieldTermStructure (const DayCounter & dc = DayCounter())
default constructor
Warning
- term structures initialized by means of this constructor must manage their own reference date by overriding the referenceDate() method.
Member Function Documentation
InterestRate zeroRate (const Date & d, const DayCounter & resultDayCounter, Compounding comp, Frequency freq = Annual, bool extrapolate = false) const
The resulting interest rate has the required daycounting rule.
InterestRate zeroRate (Time t, Compounding comp, Frequency freq = Annual, bool extrapolate = false) const
The resulting interest rate has the same day-counting rule used by the term structure. The same rule should be used for calculating the passed time t.
DiscountFactor discount (Time t, bool extrapolate = false) const
The same day-counting rule used by the term structure should be used for calculating the passed time t.
InterestRate forwardRate (const Date & d1, const Date & d2, const DayCounter & resultDayCounter, Compounding comp, Frequency freq = Annual, bool extrapolate = false) const
The resulting interest rate has the required day-counting rule.
InterestRate forwardRate (const Date & d, const Period & p, const DayCounter & resultDayCounter, Compounding comp, Frequency freq = Annual, bool extrapolate = false) const
The resulting interest rate has the required day-counting rule.
Warning
- dates are not adjusted for holidays
InterestRate forwardRate (Time t1, Time t2, Compounding comp, Frequency freq = Annual, bool extrapolate = false) const
The resulting interest rate has the same day-counting rule used by the term structure. The same rule should be used for the calculating the passed times t1 and t2.
Rate parRate (const std::vector< Date > & dates, Frequency freq = Annual, bool extrapolate = false) const
the first date in the vector must equal the start date; the following dates must equal the payment dates.
Rate parRate (const std::vector< Time > & times, Frequency freq = Annual, bool extrapolate = false) const
the first time in the vector must equal the start time; the following times must equal the payment times.
Author
Generated automatically by Doxygen for QuantLib from the source code.