irCurveEstimator.hpp
Go to the documentation of this file.
1 #ifndef JULIAN_IRESTIMATOR_HPP
2 #define JULIAN_IRESTIMATOR_HPP
3 
7 
8 namespace julian {
9 namespace ir {
10 
23  class Estimator {
24  public:
27  Estimator(){};
28 
33  virtual void calculate(const std::vector<SmartPointer<BuildingBlock> >& instruments, const CurveSettings& settings,
34  SmartPointer<ir::Curve>& discounting_curve, SmartPointer<ir::Curve>& projection_curve) = 0;
35 
40  virtual std::vector<double> getDF() const = 0;
41 
46  virtual std::vector<Date> getDates() const = 0;
47 
51  virtual std::string info() const = 0;
52 
56  virtual Estimator* clone() const = 0;
57 
61  virtual ~Estimator(){};
62  };
63 
64 } // namespace ir
65 } // namespace juliant
66 #endif
File containing definition of interest rates curve building block.
virtual ~Estimator()
destructor
Definition: irCurveEstimator.hpp:61
virtual std::vector< Date > getDates() const =0
returns dates
virtual std::vector< double > getDF() const =0
returns DFs
virtual void calculate(const std::vector< SmartPointer< BuildingBlock > > &instruments, const CurveSettings &settings, SmartPointer< ir::Curve > &discounting_curve, SmartPointer< ir::Curve > &projection_curve)=0
estimates the curve
Definition: cadHoliday.cpp:3
Class defines the interface of algorithms that perform estimation of interest rate curve (see Interpo...
Definition: irCurveEstimator.hpp:23
Template of deep-coping smart pointer.
Definition: smartPointer.hpp:14
Structure holding settings of ir::InterpolatedCurve.
Definition: curveSettings.hpp:26
File contains definition of structure holding settings of ir::InterpolatedCurve.
virtual std::string info() const =0
returns name of estimator
File contains interface of interest rate curves.
Estimator()
default constructor
Definition: irCurveEstimator.hpp:27
virtual Estimator * clone() const =0
virtual copy constructor