BootstrapHelper Class Template Reference

Base helper class for bootstrapping. More...

#include <ql/termstructures/bootstraphelper.hpp>

Inheritance diagram for BootstrapHelper:

List of all members.

Public Member Functions

 BootstrapHelper (const Handle< Quote > &quote)
 BootstrapHelper (Real quote)
BootstrapHelper interface
const Handle< Quote > & quote () const
virtual Real impliedQuote () const =0
Real quoteError () const
virtual void setTermStructure (TS *)
 sets the term structure to be used for pricing
virtual Date earliestDate () const
 earliest relevant date
virtual Date latestDate () const
 latest relevant date
Observer interface
virtual void update ()
Visitability
virtual void accept (AcyclicVisitor &)

Protected Attributes

Handle< Quotequote_
TS * termStructure_
Date earliestDate_
Date latestDate_


Detailed Description

template<class TS>
class QuantLib::BootstrapHelper< TS >

Base helper class for bootstrapping.

This class provides an abstraction for the instruments used to bootstrap a term structure.

It is advised that a bootstrap helper for an instrument contains an instance of the actual instrument class to ensure consistancy between the algorithms used during bootstrapping and later instrument pricing. This is not yet fully enforced in the available bootstrap helpers.


Member Function Documentation

void setTermStructure ( TS *  t  )  [virtual]

sets the term structure to be used for pricing

Warning:
Being a pointer and not a shared_ptr, the term structure is not guaranteed to remain allocated for the whole life of the rate helper. It is responsibility of the programmer to ensure that the pointer remains valid. It is advised that this method is called only inside the term structure being bootstrapped, setting the pointer to this, i.e., the term structure itself.

Date earliestDate (  )  const [virtual]

earliest relevant date

The earliest date at which data are needed by the helper in order to provide a quote.

Date latestDate (  )  const [virtual]

latest relevant date

The latest date at which data are needed by the helper in order to provide a quote. It does not necessarily equal the maturity of the underlying instrument.

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.

Implements Observer.

Reimplemented in RelativeDateBootstrapHelper, CdsHelper, RelativeDateBootstrapHelper< QuantLib::YieldTermStructure >, and RelativeDateBootstrapHelper< QuantLib::DefaultProbabilityTermStructure >.