32#include <boost/make_shared.hpp>
41 const std::vector<QuantLib::Date>&, const QuantLib::Date&,
42 const std::vector<QuantLib::Real>&> {
48 virtual std::string
keyImpl(
const std::string&
id,
const std::string& id2,
const std::string& key,
49 const std::vector<QuantLib::Date>& dates,
const QuantLib::Date&
maturity,
50 const std::vector<QuantLib::Real>& strikes)
override {
62 virtual QuantLib::ext::shared_ptr<QuantLib::PricingEngine>
engineImpl(
const std::string&
id,
const std::string& id2,
63 const std::string& key,
64 const std::vector<QuantLib::Date>& dates,
66 const std::vector<QuantLib::Real>& strikes)
override;
76 QuantLib::ext::shared_ptr<QuantExt::LGM>
model(
const std::string&
id,
const std::string& key,
77 const std::vector<QuantLib::Date>& dates,
const QuantLib::Date&
maturity,
78 const std::vector<QuantLib::Real>& strikes);
93 virtual QuantLib::ext::shared_ptr<QuantLib::PricingEngine>
engineImpl(
const std::string&
id,
const std::string& id2,
94 const std::string& key,
95 const std::vector<QuantLib::Date>& dates,
97 const std::vector<QuantLib::Real>& strikes)
override;
Abstract template engine builder class.
Abstract template EngineBuilder class that can cache engines and coupon pricers.
const string & engine() const
Return the engine name.
const string & model() const
Return the model name.
Flexi Swap / BGS Discounting Engine Builder.
virtual QuantLib::ext::shared_ptr< QuantLib::PricingEngine > engineImpl(const std::string &id, const std::string &id2, const std::string &key, const std::vector< QuantLib::Date > &dates, const QuantLib::Date &maturity, const std::vector< QuantLib::Real > &strikes) override
FlexiSwapBGSDiscountingEngineBuilderBase(const std::string &tradeType)
Flexi Swap / BGS Engine Builder Base Class (id2 is used for BGS only)
FlexiSwapBGSEngineBuilderBase(const std::string &tradeType, const std::string &model, const std::string &engine)
virtual std::string keyImpl(const std::string &id, const std::string &id2, const std::string &key, const std::vector< QuantLib::Date > &dates, const QuantLib::Date &maturity, const std::vector< QuantLib::Real > &strikes) override
Flexi Swap / BGS Numeric LGM Grid Engine Builder Base Class.
FlexiSwapBGSLGMGridEngineBuilderBase(const std::string &tradeType, const std::string &model)
Flexi Swap Discounting Engine Builder.
FlexiSwapDiscountingEngineBuilder()
Flexi Swap LGM Grid Engine Builder.
virtual QuantLib::ext::shared_ptr< QuantLib::PricingEngine > engineImpl(const std::string &id, const std::string &id2, const std::string &key, const std::vector< QuantLib::Date > &dates, const QuantLib::Date &maturity, const std::vector< QuantLib::Real > &strikes) override
FlexiSwapLGMGridEngineBuilder()
Classes and functions for log message handling.
Serializable Credit Default Swap.