QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
overnightindexfutureratehelper.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 Roy Zywina
5 Copyright (C) 2019 Eisuke Tani
6
7 This file is part of QuantLib, a free-software/open-source library
8 for financial quantitative analysts and developers - http://quantlib.org/
9
10 QuantLib is free software: you can redistribute it and/or modify it
11 under the terms of the QuantLib license. You should have received a
12 copy of the license along with this program; if not, please email
13 <quantlib-dev@lists.sf.net>. The license is also available online at
14 <http://quantlib.org/license.shtml>.
15
16 This program is distributed in the hope that it will be useful, but WITHOUT
17 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18 FOR A PARTICULAR PURPOSE. See the license for more details.
19*/
20
21/*! \file overnightindexfutureratehelper.hpp
22 \brief Overnight Index Future bootstrap helper
23*/
24
25#ifndef quantlib_overnightindexfutureratehelper_hpp
26#define quantlib_overnightindexfutureratehelper_hpp
27
30
31namespace QuantLib {
32
33 //! RateHelper for bootstrapping over overnight compounding futures
35 public:
37 // first day of reference period
38 const Date& valueDate,
39 // delivery date
40 const Date& maturityDate,
41 const ext::shared_ptr<OvernightIndex>& overnightIndex,
44
45 //! \name RateHelper interface
46 //@{
47 Real impliedQuote() const override;
49 //@}
50 //! \name Visitability
51 //@{
52 void accept(AcyclicVisitor&) override;
53 //@}
55 private:
56 ext::shared_ptr<OvernightIndexFuture> future_;
58 };
59
60 //! RateHelper for bootstrapping over CME SOFR futures
61 /*! It compounds overnight SOFR rates from the third Wednesday
62 of the reference month/year (inclusive) to the third Wednesday
63 of the month one Month/Quarter later (exclusive).
64
65 It requires the index history to be populated when the
66 reference period starts in the past.
67 */
69 public:
71 Month referenceMonth,
72 Year referenceYear,
73 Frequency referenceFreq,
75
77 Month referenceMonth,
78 Year referenceYear,
79 Frequency referenceFreq,
81 };
82
83}
84
85#endif
degenerate base class for the Acyclic Visitor pattern
Definition: visitor.hpp:33
Base helper class for bootstrapping.
virtual Date maturityDate() const
instrument's maturity date
Concrete date class.
Definition: date.hpp:125
Shared handle to an observable.
Definition: handle.hpp:41
RateHelper for bootstrapping over overnight compounding futures.
void setTermStructure(YieldTermStructure *) override
RelinkableHandle< YieldTermStructure > termStructureHandle_
ext::shared_ptr< OvernightIndexFuture > future_
Relinkable handle to an observable.
Definition: handle.hpp:117
RateHelper for bootstrapping over CME SOFR futures.
Interest-rate term structure.
Frequency
Frequency of events.
Definition: frequency.hpp:37
Integer Year
Year number.
Definition: date.hpp:87
Month
Month names.
Definition: date.hpp:57
QL_REAL Real
real number
Definition: types.hpp:50
Definition: any.hpp:35
Overnight Index Future.
deposit, FRA, futures, and various swap rate helpers