QuantLib_PiecewiseDefaultCurve

Langue: en

Autres versions - même langue

Version: 382464 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

QuantLib::PiecewiseDefaultCurve -

Piecewise default-probability term structure.

SYNOPSIS


#include <ql/termstructures/credit/piecewisedefaultcurve.hpp>

Inherits Traits::template curve::type< Interpolator >, and QuantLib::LazyObject.

Public Types


typedef Traits traits_type

typedef Interpolator interpolator_type

Public Member Functions

Constructors

 


PiecewiseDefaultCurve (const Date &referenceDate, const std::vector< boost::shared_ptr< typename Traits::helper > > &instruments, const DayCounter &dayCounter, const std::vector< Handle< Quote > > &jumps=std::vector< Handle< Quote > >(), const std::vector< Date > &jumpDates=std::vector< Date >(), Real accuracy=1.0e-12, const Interpolator &i=Interpolator())

PiecewiseDefaultCurve (const Date &referenceDate, const std::vector< boost::shared_ptr< typename Traits::helper > > &instruments, const DayCounter &dayCounter, Real accuracy, const Interpolator &i=Interpolator())

PiecewiseDefaultCurve (const Date &referenceDate, const std::vector< boost::shared_ptr< typename Traits::helper > > &instruments, const DayCounter &dayCounter, const Interpolator &i)

PiecewiseDefaultCurve (Natural settlementDays, const Calendar &calendar, const std::vector< boost::shared_ptr< typename Traits::helper > > &instruments, const DayCounter &dayCounter, const std::vector< Handle< Quote > > &jumps=std::vector< Handle< Quote > >(), const std::vector< Date > &jumpDates=std::vector< Date >(), Real accuracy=1.0e-12, const Interpolator &i=Interpolator())

PiecewiseDefaultCurve (Natural settlementDays, const Calendar &calendar, const std::vector< boost::shared_ptr< typename Traits::helper > > &instruments, const DayCounter &dayCounter, Real accuracy, const Interpolator &i=Interpolator())

PiecewiseDefaultCurve (Natural settlementDays, const Calendar &calendar, const std::vector< boost::shared_ptr< typename Traits::helper > > &instruments, const DayCounter &dayCounter, const Interpolator &i)

TermStructure interface

 


Date maxDate () const

base_curve interface

 


const std::vector< Time > & times () const

const std::vector< Date > & dates () const

const std::vector< Real > & data () const

std::vector< std::pair< Date, Real > > nodes () const

Observer interface

 


void update ()

Friends


class Bootstrap< this_curve >

class BootstrapError< this_curve >

Detailed Description

template<class Traits, class Interpolator, template< class > class Bootstrap = IterativeBootstrap> class QuantLib::PiecewiseDefaultCurve< Traits, Interpolator, Bootstrap >

Piecewise default-probability term structure.

This term structure is bootstrapped on a number of credit instruments which are passed as a vector of handles to DefaultProbabilityHelper instances. Their maturities mark the boundaries of the interpolated segments.

Each segment is determined sequentially starting from the earliest period to the latest and is chosen so that the instrument whose maturity marks the end of such segment is correctly repriced on the curve.

Warning

The bootstrapping algorithm will raise an exception if any two instruments have the same maturity date.

Examples:

CDS.cpp.

Member Function Documentation

void update () [virtual]This method must be implemented in derived classes. An instance of Observer does not call this method directly: instead, it will be called by the observables the instance registered with when they need to notify any changes.

Reimplemented from LazyObject.

Author

Generated automatically by Doxygen for QuantLib from the source code.