Balance Guaranteed Swap. More...
#include <qle/instruments/balanceguaranteedswap.hpp>
Classes | |
class | arguments |
Arguments for Balance Guaranteed Swap More... | |
class | engine |
Base class for Balance Guaranteed Swap engines. More... | |
class | results |
Results for Balance Guaranteed Swap More... | |
Public Member Functions | |
BalanceGuaranteedSwap (const VanillaSwap::Type type, const std::vector< std::vector< Real > > &trancheNominals, const Schedule &nominalSchedule, const Size referencedTranche, const Schedule &fixedSchedule, const std::vector< Real > &fixedRate, const DayCounter &fixedDayCount, const Schedule &floatingSchedule, const QuantLib::ext::shared_ptr< IborIndex > &iborIndex, const std::vector< Real > &gearing, const std::vector< Real > &spread, const std::vector< Real > &cappedRate, const std::vector< Real > &flooredRate, const DayCounter &floatingDayCount, boost::optional< BusinessDayConvention > paymentConvention=boost::none) | |
Inspectors | |
const VanillaSwap::Type | type_ |
const std::vector< std::vector< Real > > | trancheNominals_ |
const Schedule | nominalSchedule_ |
const Size | referencedTranche_ |
const Schedule | fixedSchedule_ |
const std::vector< Real > | fixedRate_ |
const DayCounter | fixedDayCount_ |
const Schedule | floatingSchedule_ |
const QuantLib::ext::shared_ptr< IborIndex > | iborIndex_ |
const std::vector< Real > | gearing_ |
const std::vector< Real > | spread_ |
const std::vector< Real > | cappedRate_ |
const std::vector< Real > | flooredRate_ |
const DayCounter | floatingDayCount_ |
BusinessDayConvention | paymentConvention_ |
VanillaSwap::Type | type () const |
const std::vector< std::vector< Real > > & | trancheNominal () const |
const Schedule & | nominalSchedule () const |
const Size | referencedTranche () const |
const Schedule & | fixedSchedule () const |
const std::vector< Real > & | fixedRate () const |
const DayCounter & | fixedDayCount () const |
const Schedule & | floatingSchedule () const |
const QuantLib::ext::shared_ptr< IborIndex > & | iborIndex () const |
const std::vector< Real > & | gearing () const |
const std::vector< Real > & | spread () const |
const std::vector< Real > & | cappedRate () const |
const std::vector< Real > & | flooredRate () const |
const DayCounter & | floatingDayCount () const |
BusinessDayConvention | paymentConvention () const |
const Leg & | fixedLeg () const |
const Leg & | floatingLeg () const |
Real | trancheNominal (const Size trancheIndex, const Date &d) |
void | setupArguments (QuantLib::PricingEngine::arguments *) const override |
void | setupExpired () const override |
void | fetchResults (const QuantLib::PricingEngine::results *) const override |
Balance Guaranteed Swap.
Notice the comment in the NumericLgmBgsFlexiSwapEngine concerning the start of the prepayments, this means that the tranche notionals for periods with a start date in the past or on the evaluation date should include actual (known) prepayments. For future periods the notionals should correspond to a zero CPR assumption on the other hand.
Definition at line 49 of file balanceguaranteedswap.hpp.
BalanceGuaranteedSwap | ( | const VanillaSwap::Type | type, |
const std::vector< std::vector< Real > > & | trancheNominals, | ||
const Schedule & | nominalSchedule, | ||
const Size | referencedTranche, | ||
const Schedule & | fixedSchedule, | ||
const std::vector< Real > & | fixedRate, | ||
const DayCounter & | fixedDayCount, | ||
const Schedule & | floatingSchedule, | ||
const QuantLib::ext::shared_ptr< IborIndex > & | iborIndex, | ||
const std::vector< Real > & | gearing, | ||
const std::vector< Real > & | spread, | ||
const std::vector< Real > & | cappedRate, | ||
const std::vector< Real > & | flooredRate, | ||
const DayCounter & | floatingDayCount, | ||
boost::optional< BusinessDayConvention > | paymentConvention = boost::none |
||
) |
Definition at line 31 of file balanceguaranteedswap.cpp.
VanillaSwap::Type type | ( | ) | const |
Definition at line 65 of file balanceguaranteedswap.hpp.
const std::vector< std::vector< Real > > & trancheNominal | ( | ) | const |
Definition at line 66 of file balanceguaranteedswap.hpp.
const Schedule & nominalSchedule | ( | ) | const |
Definition at line 67 of file balanceguaranteedswap.hpp.
const Size referencedTranche | ( | ) | const |
Definition at line 68 of file balanceguaranteedswap.hpp.
const Schedule & fixedSchedule | ( | ) | const |
Definition at line 70 of file balanceguaranteedswap.hpp.
const std::vector< Real > & fixedRate | ( | ) | const |
Definition at line 71 of file balanceguaranteedswap.hpp.
const DayCounter & fixedDayCount | ( | ) | const |
Definition at line 72 of file balanceguaranteedswap.hpp.
const Schedule & floatingSchedule | ( | ) | const |
Definition at line 74 of file balanceguaranteedswap.hpp.
const QuantLib::ext::shared_ptr< IborIndex > & iborIndex | ( | ) | const |
Definition at line 75 of file balanceguaranteedswap.hpp.
const std::vector< Real > & gearing | ( | ) | const |
Definition at line 76 of file balanceguaranteedswap.hpp.
const std::vector< Real > & spread | ( | ) | const |
Definition at line 77 of file balanceguaranteedswap.hpp.
const std::vector< Real > & cappedRate | ( | ) | const |
Definition at line 78 of file balanceguaranteedswap.hpp.
const std::vector< Real > & flooredRate | ( | ) | const |
Definition at line 79 of file balanceguaranteedswap.hpp.
const DayCounter & floatingDayCount | ( | ) | const |
Definition at line 80 of file balanceguaranteedswap.hpp.
BusinessDayConvention paymentConvention | ( | ) | const |
Definition at line 82 of file balanceguaranteedswap.hpp.
const Leg & fixedLeg | ( | ) | const |
Definition at line 84 of file balanceguaranteedswap.hpp.
const Leg & floatingLeg | ( | ) | const |
Definition at line 85 of file balanceguaranteedswap.hpp.
Real trancheNominal | ( | const Size | trancheIndex, |
const Date & | d | ||
) |
Definition at line 205 of file balanceguaranteedswap.cpp.
|
overrideprivate |
Definition at line 143 of file balanceguaranteedswap.cpp.
|
overrideprivate |
Definition at line 216 of file balanceguaranteedswap.cpp.
|
overrideprivate |
Definition at line 218 of file balanceguaranteedswap.cpp.
|
private |
Definition at line 91 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 92 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 93 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 94 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 95 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 96 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 97 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 98 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 99 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 100 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 101 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 102 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 103 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 104 of file balanceguaranteedswap.hpp.
|
private |
Definition at line 105 of file balanceguaranteedswap.hpp.