31#include <boost/make_shared.hpp>
57 QuantLib::ext::shared_ptr<QuantLib::PricingEngine>
engineImpl(
const std::string&
id,
66 {
"RiskParticipationAgreement_Vanilla_XCcy"}) {}
69 QuantLib::ext::shared_ptr<QuantLib::PricingEngine>
engineImpl(
const std::string&
id,
80 QuantLib::ext::shared_ptr<QuantExt::LGM>
model(
const string&
id,
const string& key,
const std::vector<Date>& expiries,
81 const Date&
maturity,
const std::vector<Real>& strikes);
89 {
"RiskParticipationAgreement_Vanilla",
"RiskParticipationAgreement_Structured"}) {}
92 QuantLib::ext::shared_ptr<QuantLib::PricingEngine>
engineImpl(
const std::string&
id,
103 QuantLib::ext::shared_ptr<QuantLib::PricingEngine>
engineImpl(
const std::string&
id,
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 set< string > & tradeTypes() const
Return the possible trade types.
const string & model() const
Return the model name.
RPA Black engine builder.
RiskParticipationAgreementBlackEngineBuilder()
QuantLib::ext::shared_ptr< QuantLib::PricingEngine > engineImpl(const std::string &id, RiskParticipationAgreement *rpa) override
std::map< std::string, Handle< Quote > > getFxSpots(RiskParticipationAgreement *rpa)
virtual std::string keyImpl(const std::string &id, RiskParticipationAgreement *rpa) override
std::map< std::string, Handle< YieldTermStructure > > getDiscountCurves(RiskParticipationAgreement *rpa)
RiskParticipationAgreementEngineBuilderBase(const std::string &model, const std::string &engine, const std::set< std::string > &tradeTypes)
RPA Numeric LGM base builder.
RiskParticipationAgreementLGMGridEngineBuilder(const std::set< std::string > &tradeTypes)
RPA Numeric LGM engine builder for swap underlyings.
RiskParticipationAgreementSwapLGMGridEngineBuilder()
QuantLib::ext::shared_ptr< QuantLib::PricingEngine > engineImpl(const std::string &id, RiskParticipationAgreement *rpa) override
RPA Numeric LGM engine builder for tlock underlyings.
RiskParticipationAgreementTLockLGMGridEngineBuilder()
QuantLib::ext::shared_ptr< QuantLib::PricingEngine > engineImpl(const std::string &id, RiskParticipationAgreement *rpa) override
RPA XCcy Black engine builder.
RiskParticipationAgreementXCcyBlackEngineBuilder()
QuantLib::ext::shared_ptr< QuantLib::PricingEngine > engineImpl(const std::string &id, RiskParticipationAgreement *rpa) override
Serializable Credit Default Swap.
risk participation agreement data model and serialization