Logo
Fully annotated reference manual - version 1.8.12
Loading...
Searching...
No Matches
equitycurve.hpp
Go to the documentation of this file.
1/*
2 Copyright (C) 2016 Quaternion Risk Management Ltd
3 All rights reserved.
4
5 This file is part of ORE, a free-software/open-source library
6 for transparent pricing and risk analysis - http://opensourcerisk.org
7
8 ORE is free software: you can redistribute it and/or modify it
9 under the terms of the Modified BSD License. You should have received a
10 copy of the license along with this program.
11 The license is also available online at <http://opensourcerisk.org>
12
13 This program is distributed on the basis that it will form a useful
14 contribution to risk analytics and model standardisation, but WITHOUT
15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
16 FITNESS FOR A PARTICULAR PURPOSE. See the license for more details.
17*/
18
19/*! \file ored/marketdata/equitycurve.hpp
20 \brief Wrapper class for building Equity curves
21 \ingroup curves
22*/
23
24#pragma once
25
33
34namespace ore {
35namespace data {
38using QuantLib::Date;
39
40//! Wrapper class for building Equity curves (spot quote, yield term structure, risk free IR term structure)
41/*!
42 \ingroup curves
43*/
45public:
46 //! \name Constructors
47 //@{
48 //! Default constructor
50 //! Detailed constructor
52 const map<string, QuantLib::ext::shared_ptr<YieldCurve>>& requiredYieldCurves, const bool buildCalibrationInfo);
53 //@}
54 //! \name Inspectors
55 //@{
56 const EquityCurveSpec& spec() const { return spec_; };
57 QuantLib::ext::shared_ptr<QuantExt::EquityIndex2> equityIndex() const { return equityIndex_; };
58 QuantLib::ext::shared_ptr<YieldCurveCalibrationInfo> calibrationInfo() const { return calibrationInfo_; }
59 //@}
60private:
63 vector<Real> quotes_;
64 vector<Date> terms_;
65 DayCounter dc_;
68 QuantLib::ext::shared_ptr<QuantExt::EquityIndex2> equityIndex_;
69 QuantLib::ext::shared_ptr<YieldCurveCalibrationInfo> calibrationInfo_;
70};
71} // namespace data
72} // namespace ore
Repository for currency dependent market conventions.
Container class for all Curve Configurations.
Type
Supported equity curve types.
Wrapper class for building Equity curves (spot quote, yield term structure, risk free IR term structu...
Definition: equitycurve.hpp:44
QuantLib::ext::shared_ptr< YieldCurveCalibrationInfo > calibrationInfo() const
Definition: equitycurve.hpp:58
const EquityCurveSpec & spec() const
Definition: equitycurve.hpp:56
EquityCurve()
Default constructor.
Definition: equitycurve.hpp:49
EquityCurveConfig::Type curveType_
Definition: equitycurve.hpp:62
YieldCurve::InterpolationVariable dividendInterpVariable_
Definition: equitycurve.hpp:66
vector< Date > terms_
Definition: equitycurve.hpp:64
QuantLib::ext::shared_ptr< QuantExt::EquityIndex2 > equityIndex() const
Definition: equitycurve.hpp:57
YieldCurve::InterpolationMethod dividendInterpMethod_
Definition: equitycurve.hpp:67
vector< Real > quotes_
Definition: equitycurve.hpp:63
EquityCurveSpec spec_
Definition: equitycurve.hpp:61
QuantLib::ext::shared_ptr< YieldCurveCalibrationInfo > calibrationInfo_
Definition: equitycurve.hpp:69
QuantLib::ext::shared_ptr< QuantExt::EquityIndex2 > equityIndex_
Definition: equitycurve.hpp:68
Equity curve description.
Definition: curvespec.hpp:349
Market data loader base class.
Definition: loader.hpp:47
InterpolationVariable
Supported interpolation variables.
Definition: yieldcurve.hpp:64
InterpolationMethod
Supported interpolation methods.
Definition: yieldcurve.hpp:67
Currency and instrument specific conventions/defaults.
Curve configuration repository.
Curve requirements specification.
Market Datum Loader Interface.
@ data
Definition: log.hpp:77
Serializable Credit Default Swap.
Definition: namespaces.docs:23
vector< string > curveConfigs
a container holding information on calibration results during the t0 market build
Wrapper class for QuantLib term structures.