#include <qle/instruments/riskparticipationagreement_tlock.hpp>
Classes | |
class | arguments |
class | engine |
class | results |
Public Member Functions | |
RiskParticipationAgreementTLock (const QuantLib::ext::shared_ptr< QuantLib::Bond > &bond, Real bondNotional, bool payer, Real referenceRate, const DayCounter &dayCounter, const Date &terminationDate, const Date &paymentDate, const std::vector< Leg > &protectionFee, const bool protectionFeePayer, const std::vector< std::string > &protectionFeeCcys, const Real participationRate, const Date &protectionStart, const Date &protectionEnd, const bool settlesAccrual, const Real fixedRecoveryRate=Null< Real >()) | |
bool | isExpired () const override |
Instrument interface. More... | |
const QuantLib::ext::shared_ptr< QuantLib::Bond > & | bond () const |
Inspectors. More... | |
bool | payer () |
Real | referenceRate () const |
const DayCounter & | dayCounter () const |
const Date & | terminationDate () const |
const Date & | paymentDate () const |
const std::vector< Leg > & | protectionFee () const |
bool | protectionFeePayer () const |
const std::vector< std::string > & | protectionFeeCcys () const |
Real | participationRate () const |
const Date & | protectionStart () const |
const Date & | protectionEnd () const |
bool | settlesAccrual () const |
Real | fixedRecoveryRate () const |
const Date & | maturity () const |
Private Member Functions | |
void | setupArguments (QuantLib::PricingEngine::arguments *) const override |
void | setupExpired () const override |
void | fetchResults (const QuantLib::PricingEngine::results *) const override |
Private Attributes | |
QuantLib::ext::shared_ptr< QuantLib::Bond > | bond_ |
Real | bondNotional_ |
bool | payer_ |
Real | referenceRate_ |
DayCounter | dayCounter_ |
Date | terminationDate_ |
Date | paymentDate_ |
std::vector< Leg > | protectionFee_ |
bool | protectionFeePayer_ |
std::vector< std::string > | protectionFeeCcys_ |
Real | participationRate_ |
Date | protectionStart_ |
Date | protectionEnd_ |
bool | settlesAccrual_ |
Real | fixedRecoveryRate_ |
Date | maturity_ |
Definition at line 36 of file riskparticipationagreement_tlock.hpp.
RiskParticipationAgreementTLock | ( | const QuantLib::ext::shared_ptr< QuantLib::Bond > & | bond, |
Real | bondNotional, | ||
bool | payer, | ||
Real | referenceRate, | ||
const DayCounter & | dayCounter, | ||
const Date & | terminationDate, | ||
const Date & | paymentDate, | ||
const std::vector< Leg > & | protectionFee, | ||
const bool | protectionFeePayer, | ||
const std::vector< std::string > & | protectionFeeCcys, | ||
const Real | participationRate, | ||
const Date & | protectionStart, | ||
const Date & | protectionEnd, | ||
const bool | settlesAccrual, | ||
const Real | fixedRecoveryRate = Null<Real>() |
||
) |
The bond must be a fixed rate bond, i.e. it may only contain FixedCoupons. The udnerlying payout is (referenceRate - bond yield) * DV01 if payer = false, otherwise multiplied by -1. As in the swap RPA, protectionFeepayer = true means protection is received, protection fee is paid.
Definition at line 27 of file riskparticipationagreement_tlock.cpp.
|
override |
const QuantLib::ext::shared_ptr< QuantLib::Bond > & bond | ( | ) | const |
Inspectors.
Definition at line 56 of file riskparticipationagreement_tlock.hpp.
bool payer | ( | ) |
Definition at line 57 of file riskparticipationagreement_tlock.hpp.
Real referenceRate | ( | ) | const |
Definition at line 58 of file riskparticipationagreement_tlock.hpp.
const DayCounter & dayCounter | ( | ) | const |
Definition at line 59 of file riskparticipationagreement_tlock.hpp.
const Date & terminationDate | ( | ) | const |
Definition at line 60 of file riskparticipationagreement_tlock.hpp.
const Date & paymentDate | ( | ) | const |
Definition at line 61 of file riskparticipationagreement_tlock.hpp.
const std::vector< Leg > & protectionFee | ( | ) | const |
Definition at line 63 of file riskparticipationagreement_tlock.hpp.
bool protectionFeePayer | ( | ) | const |
Definition at line 64 of file riskparticipationagreement_tlock.hpp.
const std::vector< std::string > & protectionFeeCcys | ( | ) | const |
Definition at line 65 of file riskparticipationagreement_tlock.hpp.
Real participationRate | ( | ) | const |
Definition at line 66 of file riskparticipationagreement_tlock.hpp.
const Date & protectionStart | ( | ) | const |
Definition at line 67 of file riskparticipationagreement_tlock.hpp.
const Date & protectionEnd | ( | ) | const |
Definition at line 68 of file riskparticipationagreement_tlock.hpp.
bool settlesAccrual | ( | ) | const |
Definition at line 69 of file riskparticipationagreement_tlock.hpp.
Real fixedRecoveryRate | ( | ) | const |
Definition at line 70 of file riskparticipationagreement_tlock.hpp.
const Date & maturity | ( | ) | const |
Definition at line 73 of file riskparticipationagreement_tlock.hpp.
|
overrideprivate |
Definition at line 79 of file riskparticipationagreement_tlock.cpp.
|
overrideprivate |
Definition at line 77 of file riskparticipationagreement_tlock.cpp.
|
overrideprivate |
Definition at line 101 of file riskparticipationagreement_tlock.cpp.
|
private |
Definition at line 81 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 82 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 83 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 84 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 85 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 86 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 87 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 90 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 91 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 92 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 93 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 94 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 94 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 95 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 96 of file riskparticipationagreement_tlock.hpp.
|
private |
Definition at line 98 of file riskparticipationagreement_tlock.hpp.