21#include <ql/time/calendars/canada.hpp>
22#include <ql/errors.hpp>
28 static ext::shared_ptr<Calendar::Impl> settlementImpl(
33 impl_ = settlementImpl;
39 QL_FAIL(
"unknown market");
51 || ((d == 1 || ((d == 2 || d == 3) && w ==
Monday)) && m ==
January)
58 || (d > 17 && d <= 24 && w ==
Monday && m ==
May)
60 || ((d == 1 || ((d == 2 || d == 3) && w ==
Monday)) && m==
July)
71 || ((d == 11 || ((d == 12 || d == 13) && w ==
Monday))
89 Day em = easterMonday(y);
92 || ((d == 1 || ((d == 2 || d == 3) && w ==
Monday)) && m ==
January)
99 || (d > 17 && d <= 24 && w ==
Monday && m ==
May)
101 || ((d == 1 || ((d == 2 || d == 3) && w ==
Monday)) && m==
July)
static Day easterMonday(Year)
expressed relative to first day of year
bool isWeekend(Weekday) const override
bool isWeekend(Weekday w) const
ext::shared_ptr< Impl > impl_
bool isBusinessDay(const Date &) const override
bool isBusinessDay(const Date &) const override
Canada(Market market=Settlement)
@ TSX
Toronto stock exchange calendar.
@ Settlement
generic settlement calendar
Day dayOfYear() const
One-based (Jan 1st = 1)