QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
bibor.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) 2018 Matthias Groncki
5
6 This file is part of QuantLib, a free-software/open-source library
7 for financial quantitative analysts and developers - http://quantlib.org/
8
9 QuantLib is free software: you can redistribute it and/or modify it
10 under the terms of the QuantLib license. You should have received a
11 copy of the license along with this program; if not, please email
12 <quantlib-dev@lists.sf.net>. The license is also available online at
13 <http://quantlib.org/license.shtml>.
14
15 This program is distributed in the hope that it will be useful, but WITHOUT
16 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17 FOR A PARTICULAR PURPOSE. See the license for more details.
18*/
19
20/*! \file bibor.hpp
21 \brief %Bangkok Interbank Offered Rate index
22*/
23
24#ifndef quantlib_bibor_hpp
25#define quantlib_bibor_hpp
26
28
29namespace QuantLib {
30
31 //! %Bibor index
32 /*! Bangkok Interbank Offered Rate fixed by the Bank of Thailand BOT.
33 */
34 class Bibor : public IborIndex {
35 public:
36 Bibor(const Period& tenor,
37 const Handle<YieldTermStructure>& h = {});
38 };
39
40
41 //! 1-week %Bibor index
42 class BiborSW : public Bibor {
43 public:
44 explicit BiborSW(const Handle<YieldTermStructure>& h = {})
45 : Bibor(Period(1, Weeks), h) {}
46 };
47
48
49 //! 1-month %Bibor index
50 class Bibor1M : public Bibor {
51 public:
52 explicit Bibor1M(const Handle<YieldTermStructure>& h = {})
53 : Bibor(Period(1, Months), h) {}
54 };
55
56 //! 2-months %Bibor index
57 class Bibor2M : public Bibor {
58 public:
59 explicit Bibor2M(const Handle<YieldTermStructure>& h = {})
60 : Bibor(Period(2, Months), h) {}
61 };
62
63 //! 3-months %Bibor index
64 class Bibor3M : public Bibor {
65 public:
66 explicit Bibor3M(const Handle<YieldTermStructure>& h = {})
67 : Bibor(Period(3, Months), h) {}
68 };
69
70 //! 6-months %Bibor index
71 class Bibor6M : public Bibor {
72 public:
73 explicit Bibor6M(const Handle<YieldTermStructure>& h = {})
74 : Bibor(Period(6, Months), h) {}
75 };
76
77 /*! \deprecated If needed, use the Bibor class with an explicit tenor instead.
78 Deprecated in version 1.35.
79 */
80 class [[deprecated("If needed, use the Bibor class with an explicit tenor instead")]] Bibor9M : public Bibor {
81 public:
82 explicit Bibor9M(const Handle<YieldTermStructure>& h = {})
83 : Bibor(Period(9, Months), h) {}
84 };
85
86 //! 1-year %Bibor index
87 class Bibor1Y : public Bibor {
88 public:
89 explicit Bibor1Y(const Handle<YieldTermStructure>& h = {})
90 : Bibor(Period(1, Years), h) {}
91 };
92
93}
94
95#endif
1-month Bibor index
Definition: bibor.hpp:50
Bibor1M(const Handle< YieldTermStructure > &h={})
Definition: bibor.hpp:52
1-year Bibor index
Definition: bibor.hpp:87
Bibor1Y(const Handle< YieldTermStructure > &h={})
Definition: bibor.hpp:89
2-months Bibor index
Definition: bibor.hpp:57
Bibor2M(const Handle< YieldTermStructure > &h={})
Definition: bibor.hpp:59
3-months Bibor index
Definition: bibor.hpp:64
Bibor3M(const Handle< YieldTermStructure > &h={})
Definition: bibor.hpp:66
6-months Bibor index
Definition: bibor.hpp:71
Bibor6M(const Handle< YieldTermStructure > &h={})
Definition: bibor.hpp:73
Bibor9M(const Handle< YieldTermStructure > &h={})
Definition: bibor.hpp:82
Bibor index
Definition: bibor.hpp:34
1-week Bibor index
Definition: bibor.hpp:42
BiborSW(const Handle< YieldTermStructure > &h={})
Definition: bibor.hpp:44
Shared handle to an observable.
Definition: handle.hpp:41
base class for Inter-Bank-Offered-Rate indexes (e.g. Libor, etc.)
Definition: iborindex.hpp:35
base class for Inter-Bank-Offered-Rate indexes
Definition: any.hpp:35