/usr/include/ql/time/calendars/russia.hpp is in libquantlib0-dev 1.12-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 | /* -*- mode: c++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
Copyright (C) 2010 StatPro Italia srl
This file is part of QuantLib, a free-software/open-source library
for financial quantitative analysts and developers - http://quantlib.org/
QuantLib is free software: you can redistribute it and/or modify it
under the terms of the QuantLib license. You should have received a
copy of the license along with this program; if not, please email
<quantlib-dev@lists.sf.net>. The license is also available online at
<http://quantlib.org/license.shtml>.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the license for more details.
*/
/*! \file russia.hpp
\brief Russian calendar
*/
#ifndef quantlib_russia_calendar_hpp
#define quantlib_russia_calendar_hpp
#include <ql/time/calendar.hpp>
namespace QuantLib {
//! Russian calendars
/*! Public holidays (see <http://www.cbr.ru/eng/>:):
<ul>
<li>Saturdays</li>
<li>Sundays</li>
<li>New Year holidays and Christmas, January 1st to 8th</li>
<li>Defender of the Fatherland Day, February 23rd (possibly
moved to Monday)</li>
<li>International Women's Day, March 8th (possibly moved to
Monday)</li>
<li>Labour Day, May 1st (possibly moved to Monday)</li>
<li>Victory Day, May 9th (possibly moved to Monday)</li>
<li>Russia Day, June 12th (possibly moved to Monday)</li>
<li>Unity Day, November 4th (possibly moved to Monday)</li>
</ul>
Holidays for the Moscow Exchange (MOEX) taken from
<http://moex.com/s726> and related pages. These holidays are
<em>not</em> consistent year-to-year, may or may not correlate
to public holidays, and are only available for dates since the
introduction of the MOEX 'brand' (a merger of the stock and
futures markets).
\ingroup calendars
*/
class Russia : public Calendar {
private:
class SettlementImpl : public Calendar::OrthodoxImpl {
public:
std::string name() const { return "Russian settlement"; }
bool isBusinessDay(const Date&) const;
};
class ExchangeImpl : public Calendar::OrthodoxImpl {
public:
std::string name() const { return "Moscow exchange"; }
bool isBusinessDay(const Date&) const;
};
public:
//! Russian calendars
enum Market { Settlement, //!< generic settlement calendar
MOEX //!< Moscow Exchange calendar
};
Russia(Market = Settlement);
};
}
#endif
|