Gsr Class Reference

One factor gsr model, formulation is in forward measure. More...

`#include <ql/models/shortrate/onefactormodels/gsr.hpp>`

Inheritance diagram for Gsr:
[legend]

## Public Member Functions

| Gsr (const Handle< YieldTermStructure > &termStructure, const std::vector< Date > &volstepdates, const std::vector< Real > &volatilities, const Real reversion, const Real T=60.0)
| Gsr (const Handle< YieldTermStructure > &termStructure, const std::vector< Date > &volstepdates, const std::vector< Real > &volatilities, const std::vector< Real > &reversions, const Real T=60.0)
| Gsr (const Handle< YieldTermStructure > &termStructure, const std::vector< Date > &volstepdates, const std::vector< Handle< Quote > > &volatilities, const Handle< Quote > reversion, const Real T=60.0)
| Gsr (const Handle< YieldTermStructure > &termStructure, const std::vector< Date > &volstepdates, const std::vector< Handle< Quote > > &volatilities, const std::vector< Handle< Quote > > &reversions, const Real T=60.0)
const Real | numeraireTime () const
const void | numeraireTime (const Real T)
const Array & | reversion () const
const Array & | volatility () const
Disposable< std::vector< bool > > | FixedReversions ()
Disposable< std::vector< bool > > | FixedVolatilities ()
Disposable< std::vector< bool > > | MoveVolatility (Size i)
Disposable< std::vector< bool > > | MoveReversion (Size i)
void | calibrateVolatilitiesIterative (const std::vector< boost::shared_ptr< CalibrationHelper > > &helpers, OptimizationMethod &method, const EndCriteria &endCriteria, const Constraint &constraint=Constraint(), const std::vector< Real > &weights=std::vector< Real >())
void | calibrateReversionsIterative (const std::vector< boost::shared_ptr< CalibrationHelper > > &helpers, OptimizationMethod &method, const EndCriteria &endCriteria, const Constraint &constraint=Constraint(), const std::vector< Real > &weights=std::vector< Real >())
Public Member Functions inherited from Gaussian1dModel
const boost::shared_ptr< StochasticProcess1D > | stateProcess () const
const Real | numeraire (const Time t, const Real y=0.0, const Handle< YieldTermStructure > &yts=Handle< YieldTermStructure >()) const
const Real | zerobond (const Time T, const Time t=0.0, const Real y=0.0, const Handle< YieldTermStructure > &yts=Handle< YieldTermStructure >()) const
const Real | numeraire (const Date &referenceDate, const Real y=0.0, const Handle< YieldTermStructure > &yts=Handle< YieldTermStructure >()) const
const Real | zerobond (const Date &maturity, const Date &referenceDate=Null< Date >(), const Real y=0.0, const Handle< YieldTermStructure > &yts=Handle< YieldTermStructure >()) const

const Real

zerobondOption (const Option::Type &type, const Date &expiry, const Date &valueDate, const Date &maturity, const Rate strike, const Date &referenceDate=Null< Date >(), const Real y=0.0, const Handle< YieldTermStructure > &yts=Handle< YieldTermStructure >(), const Real yStdDevs=7.0, const Size yGridPoints=64, const bool extrapolatePayoff=true, const bool flatPayoffExtrapolation=false) const

const Real | forwardRate (const Date &fixing, const Date &referenceDate=Null< Date >(), const Real y=0.0, boost::shared_ptr< IborIndex > iborIdx=boost::shared_ptr< IborIndex >()) const
const Real | swapRate (const Date &fixing, const Period &tenor, const Date &referenceDate=Null< Date >(), const Real y=0.0, boost::shared_ptr< SwapIndex > swapIdx=boost::shared_ptr< SwapIndex >()) const
const Real | swapAnnuity (const Date &fixing, const Period &tenor, const Date &referenceDate=Null< Date >(), const Real y=0.0, boost::shared_ptr< SwapIndex > swapIdx=boost::shared_ptr< SwapIndex >()) const
const Disposable< Array > | yGrid (const Real yStdDevs, const int gridPoints, const Real T=1.0, const Real t=0, const Real y=0) const
Public Member Functions inherited from TermStructureConsistentModel
| TermStructureConsistentModel (const Handle< YieldTermStructure > &termStructure)
const Handle< YieldTermStructure > & | termStructure () const
Public Member Functions inherited from Observable
| Observable (const Observable &)
Observable & | operator= (const Observable &)
void | notifyObservers ()
Public Member Functions inherited from LazyObject
void | update ()
void | recalculate ()
void | freeze ()
void | unfreeze ()
Public Member Functions inherited from Observer
| Observer (const Observer &)
Observer & | operator= (const Observer &)
std::pair< std::set< boost::shared_ptr< Observable > >::iterator, bool > | registerWith (const boost::shared_ptr< Observable > &)
void | registerWithObservables (const boost::shared_ptr< Observer > &)
Size | unregisterWith (const boost::shared_ptr< Observable > &)
void | unregisterWithAll ()
Public Member Functions inherited from CalibratedModel
| CalibratedModel (Size nArguments)
virtual void | calibrate (const std::vector< boost::shared_ptr< CalibrationHelper > > &, OptimizationMethod &method, const EndCriteria &endCriteria, const Constraint &constraint=Constraint(), const std::vector< Real > &weights=std::vector< Real >(), const std::vector< bool > &fixParameters=std::vector< bool >())
| Calibrate to a set of market instruments (usually caps/swaptions) More...
Real | value (const Array &params, const std::vector< boost::shared_ptr< CalibrationHelper > > &)
const boost::shared_ptr< Constraint > & | constraint () const
EndCriteria::Type | endCriteria () const
| Returns end criteria result.
Disposable< Array > | params () const
| Returns array of arguments on which calibration is done.
virtual void | setParams (const Array &params)

## Protected Member Functions

const Real | numeraireImpl (const Time t, const Real y, const Handle< YieldTermStructure > &yts) const
const Real | zerobondImpl (const Time T, const Time t, const Real y, const Handle< YieldTermStructure > &yts) const
void | generateArguments ()
void | update ()
void | performCalculations () const
Protected Member Functions inherited from Gaussian1dModel
| Gaussian1dModel (const Handle< YieldTermStructure > &yieldTermStructure)
void | generateArguments ()
boost::shared_ptr< VanillaSwap > | underlyingSwap (const boost::shared_ptr< SwapIndex > &index, const Date &expiry, const Period &tenor) const
Protected Member Functions inherited from LazyObject
virtual void | calculate () const

## Additional Inherited Members

Static Public Member Functions inherited from Gaussian1dModel
static const Real | gaussianPolynomialIntegral (const Real a, const Real b, const Real c, const Real d, const Real e, const Real x0, const Real x1)
static const Real | gaussianShiftedPolynomialIntegral (const Real a, const Real b, const Real c, const Real d, const Real e, const Real h, const Real x0, const Real x1)
Protected Attributes inherited from Gaussian1dModel
boost::shared_ptr< StochasticProcess1D > | stateProcess_
Date | evaluationDate_
bool | enforcesTodaysHistoricFixings_
Protected Attributes inherited from LazyObject
bool | calculated_
bool | frozen_
Protected Attributes inherited from CalibratedModel
std::vector< Parameter > | arguments_
boost::shared_ptr< Constraint > | constraint_
EndCriteria::Type | shortRateEndCriteria_

## Detailed Description

One factor gsr model, formulation is in forward measure.

## Member Function Documentation

void update | ( |  | ) |

protected 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 CalibratedModel.

void performCalculations | ( |  | ) | const

protected virtual

This method must implement any calculations which must be (re)done in order to calculate the desired results.

Reimplemented from Gaussian1dModel.