Lattice Class Template Reference
[Lattice methods]

#include <ql/Lattices/lattice.hpp>

Inheritance diagram for Lattice:

Inheritance graph
[legend]
List of all members.

Detailed Description

template<class Impl>
class QuantLib::Lattice< Impl >

Lattice-method base class.

This class defines a lattice method that is able to rollback (with discount) a discretized asset object. It will usually be based on one or more trees.

Derived classes must implement the following interface:

        public:
          DiscountFactor discount(Size i, Size index) const;
          Size descendant(Size i, Size index, Size branch) const;
          Real probability(Size i, Size index, Size branch) const;
and may implement the following:
        public:
          void stepback(Size i,
                        const Array& values,
                        Array& newValues) const;


Public Member Functions

 Lattice (const TimeGrid &timeGrid, Size n)
const ArraystatePrices (Size i) const
void stepback (Size i, const Array &values, Array &newValues) const
NumericalMethod interface
void initialize (DiscretizedAsset &, Time t) const
 initialize an asset at the given time.
void rollback (DiscretizedAsset &, Time to) const
void partialRollback (DiscretizedAsset &, Time to) const
Real presentValue (DiscretizedAsset &) const
 Computes the present value of an asset using Arrow-Debrew prices.

Protected Member Functions

void computeStatePrices (Size until) const

Protected Attributes

std::vector< ArraystatePrices_


Member Function Documentation

void rollback DiscretizedAsset ,
Time  to
const [virtual]
 

Roll back an asset until the given time, performing any needed adjustment.

Implements NumericalMethod.

void partialRollback DiscretizedAsset ,
Time  to
const [virtual]
 

Roll back an asset until the given time, but do not perform the final adjustment.

Warning:
In version 0.3.7 and earlier, this method was called rollAlmostBack method and performed pre-adjustment. This is no longer true; when migrating your code, you'll have to replace calls such as:
                     method->rollAlmostBack(asset,t);
with the two statements:
                     method->partialRollback(asset,t);
                     asset->preAdjustValues();

Implements NumericalMethod.


QuantLib.org
QuantLib
Hosted by
SourceForge.net Logo
Documentation generated by
doxygen