#include <qle/instruments/riskparticipationagreement_tlock.hpp>
Inheritance diagram for RiskParticipationAgreementTLock:
Collaboration diagram for RiskParticipationAgreementTLock: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.
Here is the call graph for this function:
|
override |
| const QuantLib::ext::shared_ptr< QuantLib::Bond > & bond | ( | ) | const |
Inspectors.
Definition at line 56 of file riskparticipationagreement_tlock.hpp.
Here is the caller graph for this function:| 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.
Here is the caller graph for this function:| const Date & terminationDate | ( | ) | const |
Definition at line 60 of file riskparticipationagreement_tlock.hpp.
Here is the caller graph for this function:| 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.
Here is the caller graph for this function:| 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.