28#include <ql/currency.hpp>
29#include <ql/handle.hpp>
30#include <ql/index.hpp>
41 const std::vector<Real>&
weights,
const std::vector<QuantLib::ext::shared_ptr<FxIndex>>&
fxConversion = {});
44 std::string
name()
const override;
47 Real
fixing(
const Date& fixingDate,
bool forecastTodaysFixing =
false)
const override;
51 void update()
override { notifyObservers(); }
54 const std::vector<QuantLib::ext::shared_ptr<QuantLib::Index>>&
indices()
const {
return indices_; }
62 std::vector<std::pair<QuantLib::Date, std::string>>
dividendFixingDates(
const Date& startDate,
const Date& endDate = Date::maxDate());
66 std::vector<QuantLib::ext::shared_ptr<QuantLib::Index>>
indices_;
const std::vector< QuantLib::ext::shared_ptr< QuantLib::Index > > & indices() const
Inspectors.
bool allowsNativeFixings() override
std::vector< QuantLib::ext::shared_ptr< QuantLib::Index > > indices_
std::vector< QuantLib::ext::shared_ptr< FxIndex > > fxConversion_
std::vector< std::pair< QuantLib::Date, std::string > > dividendFixingDates(const Date &startDate, const Date &endDate=Date::maxDate())
void update() override
Observer interface.
Calendar fixingCalendar() const override
const std::vector< QuantLib::ext::shared_ptr< FxIndex > > & fxConversion() const
const std::vector< Real > & weights() const
std::string name() const override
Index interface.
std::vector< Real > weights_
Real dividendsBetweenDates(const Date &startDate, const Date &endDate=Date::maxDate()) const
bool isValidFixingDate(const Date &fixingDate) const override
Real fixing(const Date &fixingDate, bool forecastTodaysFixing=false) const override