28#include <ql/handle.hpp>
29#include <ql/instrument.hpp>
30#include <ql/quote.hpp>
31#include <ql/settings.hpp>
32#include <ql/time/date.hpp>
33#include <ql/types.hpp>
41using QuantLib::Handle;
44using QuantLib::Settings;
55 const std::vector<Handle<Quote>>& fxRates = {},
const Date& valuationDate = Date());
57 void initialise(
const std::vector<QuantLib::Date>& dates)
override;
58 void reset()
override;
59 QuantLib::Real
NPV()
const override;
66 std::vector<QuantLib::ext::shared_ptr<InstrumentWrapper>>
wrappers_;
Composite Instrument Wrapper.
bool isOption() override
is it an Option?
QuantLib::Real NPV() const override
Return the NPV of this instrument.
std::map< std::string, boost::any > additionalResults_
const std::map< std::string, boost::any > & additionalResults() const override
Return the additional results of this instrument.
void updateQlInstruments() override
call update on enclosed instrument(s)
std::vector< QuantLib::Handle< Quote > > fxRates_
void initialise(const std::vector< QuantLib::Date > &dates) override
Initialise with the given date grid.
std::vector< QuantLib::ext::shared_ptr< InstrumentWrapper > > wrappers_
void reset() override
reset is called every time a new path is about to be priced.
Base class for wrapper of QL instrument, used to store "state" of trade under each scenario.
Serializable Credit Default Swap.