31#include <ql/instruments/bond.hpp>
49 const std::string& issuerId =
"",
const bool settlesAccrual =
true,
51 const boost::optional<ore::data::OptionData>& optionData = boost::none)
60 const std::string& issuerId =
"",
const bool settlesAccrual =
true,
82 void build(
const QuantLib::ext::shared_ptr<ore::data::EngineFactory>&)
override;
87 void buildWithSwapUnderlying(
const QuantLib::ext::shared_ptr<ore::data::EngineFactory>& engineFactory);
88 void buildWithTlockUnderlying(
const QuantLib::ext::shared_ptr<ore::data::EngineFactory>& engineFactory);
const Real fixedRecoveryRate_
const std::vector< Leg > & underlying() const
Real participationRate() const
const std::vector< Leg > underlying_
const std::vector< Leg > protectionFee_
const Date protectionStart_
const Real participationRate_
const bool settlesAccrual_
bool settlesAccrual() const
const Date protectionEnd_
Real fixedRecoveryRate() const
const std::vector< Leg > & protectionFee() const
const Date & protectionEnd() const
const Date & protectionStart() const
Serializable object holding generic trade data, reporting dimensions.
const boost::optional< ore::data::OptionData > & optionData() const
std::vector< ore::data::LegData > underlying_
std::vector< ore::data::LegData > protectionFee_
const std::string & issuerId() const
boost::optional< ore::data::OptionData > optionData_
Real participationRate() const
const std::vector< ore::data::LegData > & protectionFee() const
RiskParticipationAgreement()
const std::vector< ore::data::LegData > & underlying() const
std::string creditCurveId_
const std::string & creditCurveId() const
const ore::data::TreasuryLockData & tlockData() const
RiskParticipationAgreement(const ore::data::Envelope &env, const ore::data::TreasuryLockData &tlockData, const std::vector< ore::data::LegData > &protectionFee, const Real participationRate, const Date &protectionStart, const Date &protectionEnd, const std::string &creditCurveId, const std::string &issuerId="", const bool settlesAccrual=true, const Real fixedRecoveryRate=Null< Real >())
RiskParticipationAgreement(const ore::data::Envelope &env, const std::vector< ore::data::LegData > &underlying, const std::vector< ore::data::LegData > &protectionFee, const Real participationRate, const Date &protectionStart, const Date &protectionEnd, const std::string &creditCurveId, const std::string &issuerId="", const bool settlesAccrual=true, const Real fixedRecoveryRate=Null< Real >(), const boost::optional< ore::data::OptionData > &optionData=boost::none)
Leg-based constructur, i.e. with Swap underyling.
bool settlesAccrual() const
Real fixedRecoveryRate() const
ore::data::TreasuryLockData tlockData_
const Date & protectionEnd() const
const Date & protectionStart() const
Small XML Document wrapper class.
leg data model and serialization
Serializable Credit Default Swap.
trade option data model and serialization
A class to hold Treasury-Lock data.
base trade data model and serialization