calendar class More...
#include <ql/time/calendar.hpp>
Inheritance diagram for Calendar:Classes | |
| class | Impl |
| abstract base class for calendar implementations More... | |
| class | OrthodoxImpl |
| partial calendar implementation More... | |
| class | WesternImpl |
| partial calendar implementation More... | |
Public Member Functions | |
| Calendar () | |
Protected Attributes | |
| ext::shared_ptr< Impl > | impl_ |
Related Functions | |
(Note that these are not member functions.) | |
| bool | operator== (const Calendar &, const Calendar &) |
| bool | operator!= (const Calendar &, const Calendar &) |
| std::ostream & | operator<< (std::ostream &, const Calendar &) |
Calendar interface | |
| bool | empty () const |
| Returns whether or not the calendar is initialized. | |
| std::string | name () const |
| Returns the name of the calendar. More... | |
| const std::set< Date > & | addedHolidays () const |
| const std::set< Date > & | removedHolidays () const |
| bool | isBusinessDay (const Date &d) const |
| bool | isHoliday (const Date &d) const |
| bool | isWeekend (Weekday w) const |
| bool | isEndOfMonth (const Date &d) const |
| Date | endOfMonth (const Date &d) const |
| last business day of the month to which the given date belongs | |
| void | addHoliday (const Date &) |
| void | removeHoliday (const Date &) |
| std::vector< Date > | holidayList (const Date &from, const Date &to, bool includeWeekEnds=false) const |
| std::vector< Date > | businessDayList (const Date &from, const Date &to) const |
| Date | adjust (const Date &, BusinessDayConvention convention=Following) const |
| Date | advance (const Date &, Integer n, TimeUnit unit, BusinessDayConvention convention=Following, bool endOfMonth=false) const |
| Date | advance (const Date &date, const Period &period, BusinessDayConvention convention=Following, bool endOfMonth=false) const |
| Date::serial_type | businessDaysBetween (const Date &from, const Date &to, bool includeFirst=true, bool includeLast=false) const |
| static QL_DEPRECATED std::vector< Date > | holidayList (const Calendar &calendar, const Date &from, const Date &to, bool includeWeekEnds=false) |
calendar class
This class provides methods for determining whether a date is a business day or a holiday for a given market, and for incrementing/decrementing a date of a given number of business days.
The Bridge pattern is used to provide the base behavior of the calendar, namely, to determine whether a date is a business day.
A calendar should be defined for specific exchange holiday schedule or for general country holiday schedule. Legacy city holiday schedule calendars will be moved to the exchange/country convention.
| Calendar | ( | ) |
The default constructor returns a calendar with a null implementation, which is therefore unusable except as a placeholder.
| std::string name | ( | ) | const |
Returns the name of the calendar.
| const std::set< Date > & addedHolidays | ( | ) | const |
Returns true iff the date is a business day for the given market.
Returns the set of added holidays for the given calendar
| const std::set< Date > & removedHolidays | ( | ) | const |
Returns the set of removed holidays for the given calendar
| bool isHoliday | ( | const Date & | d | ) | const |
Returns true iff the date is a holiday for the given market.
| bool isWeekend | ( | Weekday | w | ) | const |
Returns true iff the weekday is part of the weekend for the given market.
| bool isEndOfMonth | ( | const Date & | d | ) | const |
Returns true iff in the given market, the date is on or after the last business day for that month.
| void addHoliday | ( | const Date & | ) |
Adds a date to the set of holidays for the given calendar.
| void removeHoliday | ( | const Date & | ) |
Removes a date from the set of holidays for the given calendar.
|
static |
Returns the holidays between two dates.
| std::vector<Date> holidayList | ( | const Date & | from, |
| const Date & | to, | ||
| bool | includeWeekEnds = false |
||
| ) | const |
Returns the holidays between two dates.
Returns the business days between two dates.
| Date adjust | ( | const Date & | , |
| BusinessDayConvention | convention = Following |
||
| ) | const |
Adjusts a non-business day to the appropriate near business day with respect to the given convention.
| Date advance | ( | const Date & | , |
| Integer | n, | ||
| TimeUnit | unit, | ||
| BusinessDayConvention | convention = Following, |
||
| bool | endOfMonth = false |
||
| ) | const |
Advances the given date of the given number of business days and returns the result.
| Date advance | ( | const Date & | date, |
| const Period & | period, | ||
| BusinessDayConvention | convention = Following, |
||
| bool | endOfMonth = false |
||
| ) | const |
Advances the given date as specified by the given period and returns the result.
| Date::serial_type businessDaysBetween | ( | const Date & | from, |
| const Date & | to, | ||
| bool | includeFirst = true, |
||
| bool | includeLast = false |
||
| ) | const |
Calculates the number of business days between two given dates and returns the result.