Swap Class Reference
[Financial instruments]
#include <ql/Instruments/swap.hpp>
Inheritance diagram for Swap:

Detailed Description
Interest rate swap.The cash flows belonging to the first leg are paid; the ones belonging to the second leg are received.
Public Member Functions | |
| Swap (const Handle< YieldTermStructure > &termStructure, const Leg &firstLeg, const Leg &secondLeg) | |
| Swap (const Handle< YieldTermStructure > &termStructure, const std::vector< Leg > &legs, const std::vector< bool > &payer) | |
Instrument interface | |
| bool | isExpired () const |
| returns whether the instrument is still tradable. | |
Additional interface | |
| Date | startDate () const |
| Date | maturity () const |
| Real | legBPS (Size j) const |
| Real | legNPV (Size j) const |
| const Leg & | leg (Size j) const |
Protected Member Functions | |
| void | setupExpired () const |
| void | performCalculations () const |
Protected Attributes | |
| Handle< YieldTermStructure > | termStructure_ |
| std::vector< Leg > | legs_ |
| std::vector< Real > | payer_ |
| std::vector< Real > | legNPV_ |
| std::vector< Real > | legBPS_ |
Constructor & Destructor Documentation
| Swap | ( | const Handle< YieldTermStructure > & | termStructure, | |
| const Leg & | firstLeg, | |||
| const Leg & | secondLeg | |||
| ) |
The cash flows belonging to the first leg are paid; the ones belonging to the second leg are received.
| Swap | ( | const Handle< YieldTermStructure > & | termStructure, | |
| const std::vector< Leg > & | legs, | |||
| const std::vector< bool > & | payer | |||
| ) |
Multi leg constructor.
Member Function Documentation
| void setupExpired | ( | ) | const [protected, virtual] |
This method must leave the instrument in a consistent state when the expiration condition is met.
Reimplemented from Instrument.
| void performCalculations | ( | ) | const [protected, virtual] |
In case a pricing engine is not used, this method must be overridden to perform the actual calculations and set any needed results. In case a pricing engine is used, the default implementation can be used.
Reimplemented from Instrument.