QuantLib: UnitedStates Class Reference

A free/open-source library for quantitative finance Reference manual - version 1.20

Public Types | Public Member Functions | List of all members
UnitedStates Class Reference
Date and time calculations » Calendars

United States calendars. More...

`#include <ql/time/calendars/unitedstates.hpp>`

Inheritance diagram for UnitedStates:
[legend]

## Public Types
enum | Market { Settlement, NYSE, GovernmentBond, NERC, LiborImpact, FederalReserve }
| US calendars. More...

## Public Member Functions
| UnitedStates (Market market=Settlement)
Public Member Functions inherited from Calendar
| Calendar ()
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

## Additional Inherited Members
Static Public Member Functions inherited from Calendar
static QL_DEPRECATED std::vector< Date > | holidayList (const Calendar &calendar, const Date &from, const Date &to, bool includeWeekEnds=false)
Protected Attributes inherited from Calendar
ext::shared_ptr< Impl > | impl_
Related Functions inherited from Calendar
bool | operator== (const Calendar &, const Calendar &)
bool | operator!= (const Calendar &, const Calendar &)
std::ostream & | operator<< (std::ostream &, const Calendar &)

## Detailed Description

United States calendars.

Public holidays (see: http://www.opm.gov/fedhol/):

- Saturdays
- Sundays
- New Year's Day, January 1st (possibly moved to Monday if actually on Sunday, or to Friday if on Saturday)
- Martin Luther King's birthday, third Monday in January (since 1983)
- Presidents' Day (a.k.a. Washington's birthday), third Monday in February
- Memorial Day, last Monday in May
- Independence Day, July 4th (moved to Monday if Sunday or Friday if Saturday)
- Labor Day, first Monday in September
- Columbus Day, second Monday in October
- Veterans' Day, November 11th (moved to Monday if Sunday or Friday if Saturday)
- Thanksgiving Day, fourth Thursday in November
- Christmas, December 25th (moved to Monday if Sunday or Friday if Saturday)

Note that since 2015 Independence Day only impacts Libor if it falls on a weekday (see https://www.theice.com/iba/libor, https://www.theice.com/marketdata/reports/170 and https://www.theice.com/publicdocs/LIBOR_Holiday_Calendar_2015.pdf for the fixing and value date calendars).

Holidays for the stock exchange (data from http://www.nyse.com):

- Saturdays
- Sundays
- New Year's Day, January 1st (possibly moved to Monday if actually on Sunday)
- Martin Luther King's birthday, third Monday in January (since 1998)
- Presidents' Day (a.k.a. Washington's birthday), third Monday in February
- Good Friday
- Memorial Day, last Monday in May
- Independence Day, July 4th (moved to Monday if Sunday or Friday if Saturday)
- Labor Day, first Monday in September
- Thanksgiving Day, fourth Thursday in November
- Presidential election day, first Tuesday in November of election years (until 1980)
- Christmas, December 25th (moved to Monday if Sunday or Friday if Saturday)
- Special historic closings (see http://www.nyse.com/pdfs/closings.pdf)

Holidays for the government bond market (data from http://www.bondmarkets.com):

- Saturdays
- Sundays
- New Year's Day, January 1st (possibly moved to Monday if actually on Sunday)
- Martin Luther King's birthday, third Monday in January (since 1983)
- Presidents' Day (a.k.a. Washington's birthday), third Monday in February
- Good Friday
- Memorial Day, last Monday in May
- Independence Day, July 4th (moved to Monday if Sunday or Friday if Saturday)
- Labor Day, first Monday in September
- Columbus Day, second Monday in October
- Veterans' Day, November 11th (moved to Monday if Sunday or Friday if Saturday)
- Thanksgiving Day, fourth Thursday in November
- Christmas, December 25th (moved to Monday if Sunday or Friday if Saturday)

Holidays for the North American Energy Reliability Council (data from http://www.nerc.com/~oc/offpeaks.html):

- Saturdays
- Sundays
- New Year's Day, January 1st (possibly moved to Monday if actually on Sunday)
- Memorial Day, last Monday in May
- Independence Day, July 4th (moved to Monday if Sunday)
- Labor Day, first Monday in September
- Thanksgiving Day, fourth Thursday in November
- Christmas, December 25th (moved to Monday if Sunday)

Tests:
  the correctness of the returned results is tested against a list of known holidays.

Examples
  Bonds.cpp, and CallableBonds.cpp.

## Member Enumeration Documentation

## ◆ Market

enum Market

US calendars.

Enumerator
Settlement | generic settlement calendar
NYSE | New York stock exchange calendar.
GovernmentBond | government-bond calendar
NERC | off-peak days for NERC
LiborImpact | Libor impact calendar.
FederalReserve | Federal Reserve Bankwire System.