QuantLib_VanillaSwap (3) - Linux Manuals

QuantLib_VanillaSwap: Plain-vanilla swap.

NAME

QuantLib::VanillaSwap - Plain-vanilla swap.

SYNOPSIS


#include <ql/instruments/vanillaswap.hpp>

Inherits QuantLib::Swap.

Classes


class arguments
Arguments for simple swap calculation
class results
Results from simple swap calculation

Public Types


enum Type { Receiver = -1, Payer = 1 }

Public Member Functions


VanillaSwap (Type type, Real nominal, const Schedule &fixedSchedule, Rate fixedRate, const DayCounter &fixedDayCount, const Schedule &floatSchedule, const boost::shared_ptr< IborIndex > &iborIndex, Spread spread, const DayCounter &floatingDayCount, BusinessDayConvention paymentConvention=Following)

Real fixedLegBPS () const

Real fixedLegNPV () const

Rate fairRate () const

Real floatingLegBPS () const

Real floatingLegNPV () const

Spread fairSpread () const

Type type () const

Real nominal () const

const Schedule & fixedSchedule () const

Rate fixedRate () const

const DayCounter & fixedDayCount () const

const Schedule & floatingSchedule () const

const boost::shared_ptr< IborIndex > & iborIndex () const

Spread spread () const

const DayCounter & floatingDayCount () const

BusinessDayConvention paymentConvention () const

const Leg & fixedLeg () const

const Leg & floatingLeg () const

void setupArguments (PricingEngine::arguments *args) const

void fetchResults (const PricingEngine::results *) const

Detailed Description

Plain-vanilla swap.

Warning

if QL_TODAYS_PAYMENTS was defined (in userconfig.hpp or when calling ./configure; it is undefined by default) payments occurring at the settlement date of the swap are included in the NPV, and therefore affect the fair-rate and fair-spread calculation. This might not be what you want.

Tests

*
the correctness of the returned value is tested by checking that the price of a swap paying the fair fixed rate is null.
*
the correctness of the returned value is tested by checking that the price of a swap receiving the fair floating-rate spread is null.
*
the correctness of the returned value is tested by checking that the price of a swap decreases with the paid fixed rate.
*
the correctness of the returned value is tested by checking that the price of a swap increases with the received floating-rate spread.
*
the correctness of the returned value is tested by checking it against a known good value.

Examples:

BermudanSwaption.cpp, and swapvaluation.cpp.

Member Function Documentation

void setupArguments (PricingEngine::arguments *) const [virtual]

When a derived argument structure is defined for an instrument, this method should be overridden to fill it. This is mandatory in case a pricing engine is used.

Reimplemented from Swap.

void fetchResults (const PricingEngine::results * r) const [virtual]

When a derived result structure is defined for an instrument, this method should be overridden to read from it. This is mandatory in case a pricing engine is used.

Reimplemented from Swap.

Author

Generated automatically by Doxygen for QuantLib from the source code.