QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
euhicp.hpp
Go to the documentation of this file.
1/* -*- mode: c++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
3/*
4 Copyright (C) 2007, 2009 Chris Kenyon
5 Copyright (C) 2010 StatPro Italia srl
6 Copyright (C) 2021 Ralf Konrad Eckel
7
8 This file is part of QuantLib, a free-software/open-source library
9 for financial quantitative analysts and developers - http://quantlib.org/
10
11 QuantLib is free software: you can redistribute it and/or modify it
12 under the terms of the QuantLib license. You should have received a
13 copy of the license along with this program; if not, please email
14 <quantlib-dev@lists.sf.net>. The license is also available online at
15 <http://quantlib.org/license.shtml>.
16
17 This program is distributed in the hope that it will be useful, but WITHOUT
18 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
19 FOR A PARTICULAR PURPOSE. See the license for more details.
20*/
21
22/*! \file euhicp.hpp
23 \brief EU HICP index
24*/
25
26#ifndef quantlib_euhicp_hpp
27#define quantlib_euhicp_hpp
28
31
32namespace QuantLib {
33
34 //! EU HICP index
35 class EUHICP : public ZeroInflationIndex {
36 public:
38 : ZeroInflationIndex("HICP",
39 EURegion(),
40 false,
41 Monthly,
42 Period(1, Months), // availability
44 ts) {}
45 };
46
47 //! EU HICPXT index
49 public:
51 : ZeroInflationIndex("HICPXT",
52 EURegion(),
53 false,
54 Monthly,
55 Period(1, Months), // availability
57 ts) {}
58 };
59
60
61 //! Quoted year-on-year EU HICP (i.e. not a ratio of EU HICP)
62 class YYEUHICP : public YoYInflationIndex {
63 public:
64 explicit YYEUHICP(
65 bool interpolated,
67 : YoYInflationIndex("YY_HICP",
68 EURegion(),
69 false,
71 Monthly,
72 Period(1, Months),
74 ts) {}
75 };
76
77 //! Quoted year-on-year EU HICPXT
79 public:
80 explicit YYEUHICPXT(
81 bool interpolated,
83 : YoYInflationIndex("YY_HICPXT",
84 EURegion(),
85 false,
87 Monthly,
88 Period(1, Months),
90 ts) {}
91 };
92
93
95
96 //! Year-on-year EU HICP (i.e. a ratio of EU HICP)
97 /*! \deprecated Pass the EUHICP index to YoYInflationIndex instead.
98 Deprecated in version 1.31.
99 */
100 class [[deprecated("Pass the EUHICP index to YoYInflationIndex instead")]] YYEUHICPr : public YoYInflationIndex {
101 public:
102 explicit YYEUHICPr(
103 bool interpolated,
105 : YoYInflationIndex("YYR_HICP",
106 EURegion(),
107 false,
108 interpolated,
109 true,
110 Monthly,
111 Period(1, Months),
112 EURCurrency(),
113 ts) {}
114 };
115
117}
118
119
120#endif
EU HICP index.
Definition: euhicp.hpp:35
EUHICP(const Handle< ZeroInflationTermStructure > &ts={})
Definition: euhicp.hpp:37
EU HICPXT index.
Definition: euhicp.hpp:48
EUHICPXT(const Handle< ZeroInflationTermStructure > &ts={})
Definition: euhicp.hpp:50
European Euro.
Definition: europe.hpp:123
European Union as geographical/economic region.
Definition: region.hpp:81
Shared handle to an observable.
Definition: handle.hpp:41
Quoted year-on-year EU HICP (i.e. not a ratio of EU HICP)
Definition: euhicp.hpp:62
YYEUHICP(bool interpolated, const Handle< YoYInflationTermStructure > &ts={})
Definition: euhicp.hpp:64
Quoted year-on-year EU HICPXT.
Definition: euhicp.hpp:78
YYEUHICPXT(bool interpolated, const Handle< YoYInflationTermStructure > &ts={})
Definition: euhicp.hpp:80
Year-on-year EU HICP (i.e. a ratio of EU HICP)
Definition: euhicp.hpp:100
YYEUHICPr(bool interpolated, const Handle< YoYInflationTermStructure > &ts={})
Definition: euhicp.hpp:102
Base class for year-on-year inflation indices.
Base class for zero inflation indices.
European currencies.
@ Monthly
once a month
Definition: frequency.hpp:44
base classes for inflation indexes
Definition: any.hpp:35
#define QL_DEPRECATED_DISABLE_WARNING
Definition: qldefines.hpp:216
#define QL_DEPRECATED_ENABLE_WARNING
Definition: qldefines.hpp:217