QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.20
Public Member Functions | List of all members
Schedule Class Reference

Payment schedule. More...

#include <ql/time/schedule.hpp>

Public Member Functions

 Schedule (const std::vector< Date > &, const Calendar &calendar=NullCalendar(), BusinessDayConvention convention=Unadjusted, const boost::optional< BusinessDayConvention > &terminationDateConvention=boost::none, const boost::optional< Period > &tenor=boost::none, const boost::optional< DateGeneration::Rule > &rule=boost::none, const boost::optional< bool > &endOfMonth=boost::none, const std::vector< bool > &isRegular=std::vector< bool >(0))
 
 Schedule (Date effectiveDate, const Date &terminationDate, const Period &tenor, const Calendar &calendar, BusinessDayConvention convention, BusinessDayConvention terminationDateConvention, DateGeneration::Rule rule, bool endOfMonth, const Date &firstDate=Date(), const Date &nextToLastDate=Date())
 
Date access
Size size () const
 
const Dateoperator[] (Size i) const
 
const Dateat (Size i) const
 
const Datedate (Size i) const
 
Date previousDate (const Date &refDate) const
 
Date nextDate (const Date &refDate) const
 
const std::vector< Date > & dates () const
 
bool hasIsRegular () const
 
bool isRegular (Size i) const
 
const std::vector< bool > & isRegular () const
 
Other inspectors
bool empty () const
 
const Calendarcalendar () const
 
const DatestartDate () const
 
const DateendDate () const
 
bool hasTenor () const
 
const Periodtenor () const
 
BusinessDayConvention businessDayConvention () const
 
bool hasTerminationDateBusinessDayConvention () const
 
BusinessDayConvention terminationDateBusinessDayConvention () const
 
bool hasRule () const
 
DateGeneration::Rule rule () const
 
bool hasEndOfMonth () const
 
bool endOfMonth () const
 

Iterators

typedef std::vector< Date >::const_iterator const_iterator
 
const_iterator begin () const
 
const_iterator end () const
 
const_iterator lower_bound (const Date &d=Date()) const
 

Utilities

Schedule after (const Date &truncationDate) const
 truncated schedule
 
Schedule until (const Date &truncationDate) const
 

Detailed Description

Payment schedule.

Examples
BermudanSwaption.cpp, Bonds.cpp, CallableBonds.cpp, CDS.cpp, ConvertibleBonds.cpp, FittedBondCurve.cpp, Gaussian1dModels.cpp, MulticurveBootstrapping.cpp, and Repo.cpp.

Constructor & Destructor Documentation

◆ Schedule() [1/2]

Schedule ( const std::vector< Date > &  ,
const Calendar calendar = NullCalendar(),
BusinessDayConvention  convention = Unadjusted,
const boost::optional< BusinessDayConvention > &  terminationDateConvention = boost::none,
const boost::optional< Period > &  tenor = boost::none,
const boost::optional< DateGeneration::Rule > &  rule = boost::none,
const boost::optional< bool > &  endOfMonth = boost::none,
const std::vector< bool > &  isRegular = std::vector< bool >(0) 
)

constructor that takes any list of dates, and optionally meta information that can be used by client classes. Note that neither the list of dates nor the meta information is checked for plausibility in any sense.

◆ Schedule() [2/2]

Schedule ( Date  effectiveDate,
const Date terminationDate,
const Period tenor,
const Calendar calendar,
BusinessDayConvention  convention,
BusinessDayConvention  terminationDateConvention,
DateGeneration::Rule  rule,
bool  endOfMonth,
const Date firstDate = Date(),
const Date nextToLastDate = Date() 
)

rule based constructor