defaultLegNPV (3) - Linux Manuals

defaultLegNPV: Credit default swap.

NAME

QuantLib::CreditDefaultSwap - Credit default swap.

SYNOPSIS


#include <ql/instruments/creditdefaultswap.hpp>

Inherits QuantLib::Instrument.

Public Member Functions

Constructors


CreditDefaultSwap (Protection::Side side, Real notional, Rate spread, const Schedule &schedule, BusinessDayConvention paymentConvention, const DayCounter &dayCounter, bool settlesAccrual=true, bool paysAtDefaultTime=true, const boost::shared_ptr< Claim > &=boost::shared_ptr< Claim >())

Instrument interface


bool isExpired () const
returns whether the instrument is still tradable.
void setupArguments (PricingEngine::arguments *) const

void fetchResults (const PricingEngine::results *) const

Inspectors


Protection::Side side () const

Real notional () const

Rate spread () const

bool settlesAccrual () const

bool paysAtDefaultTime () const

const Leg & coupons () const

Results


Rate fairSpread () const

Real couponLegBPS () const

Real couponLegNPV () const

Real defaultLegNPV () const

Rate impliedHazardRate (Real targetNPV, const Handle< YieldTermStructure > &discountCurve, const DayCounter &dayCounter, Real recoveryRate=0.4, Real accuracy=1.0e-6) const

Protected Member Functions

Instrument interface


void setupExpired () const

Protected Attributes


Protection::Side side_

Real notional_

Rate spread_

bool settlesAccrual_

bool paysAtDefaultTime_

boost::shared_ptr< Claim > claim_

Leg leg_

Rate fairSpread_

Real couponLegBPS_

Real couponLegNPV_

Real defaultLegNPV_

Detailed Description

Credit default swap.

Note:

This instrument currently assumes that the issuer did not default until today's date.

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-spread calculation. This might not be what you want.

Examples:

CDS.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 Instrument.

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 Instrument.

void setupExpired () const [protected, virtual]

This method must leave the instrument in a consistent state when the expiration condition is met.

Reimplemented from Instrument.

Author

Generated automatically by Doxygen for QuantLib from the source code.