QuantLib: Gaussian1dFloatFloatSwaptionEngine Class Reference

A free/open-source library for quantitative finance Reference manual - version 1.20

Public Types | Public Member Functions | Protected Member Functions | List of all members
Gaussian1dFloatFloatSwaptionEngine Class Reference
Pricing engines » Swaption engines

One factor model float float swaption engine. More...

`#include <ql/pricingengines/swaption/gaussian1dfloatfloatswaptionengine.hpp>`

Inheritance diagram for Gaussian1dFloatFloatSwaptionEngine:
[legend]

## Public Types
enum | Probabilities { None, Naive, Digital }
Public Types inherited from Observer
typedef boost::unordered_set< ext::shared_ptr< Observable > > | set_type
typedef set_type::iterator | iterator

## Public Member Functions
| Gaussian1dFloatFloatSwaptionEngine (const ext::shared_ptr< Gaussian1dModel > &model, const int integrationPoints=64, const Real stddevs=7.0, const bool extrapolatePayoff=true, const bool flatPayoffExtrapolation=false, const Handle< Quote > &oas=Handle< Quote >(), const Handle< YieldTermStructure > &discountCurve=Handle< YieldTermStructure >(), const bool includeTodaysExercise=false, const Probabilities probabilities=None)
| Gaussian1dFloatFloatSwaptionEngine (const Handle< Gaussian1dModel > &model, const int integrationPoints=64, const Real stddevs=7.0, const bool extrapolatePayoff=true, const bool flatPayoffExtrapolation=false, const Handle< Quote > &oas=Handle< Quote >(), const Handle< YieldTermStructure > &discountCurve=Handle< YieldTermStructure >(), const bool includeTodaysExercise=false, const Probabilities probabilities=None)
void | calculate () const
Handle< YieldTermStructure > | discountingCurve () const
Public Member Functions inherited from GenericModelEngine< Gaussian1dModel, FloatFloatSwaption::arguments, FloatFloatSwaption::results >
| GenericModelEngine (const Handle< Gaussian1dModel > &model=Handle< Gaussian1dModel >())
| GenericModelEngine (const ext::shared_ptr< Gaussian1dModel > &model)
Public Member Functions inherited from GenericEngine< FloatFloatSwaption::arguments, FloatFloatSwaption::results >
PricingEngine::arguments * | getArguments () const
const PricingEngine::results * | getResults () const
void | reset ()
void | update ()
Public Member Functions inherited from PricingEngine
virtual arguments * | getArguments () const =0
virtual const results * | getResults () const =0
Public Member Functions inherited from Observable
| Observable (const Observable &)
Observable & | operator= (const Observable &)
void | notifyObservers ()
Public Member Functions inherited from Observer
| Observer (const Observer &)
Observer & | operator= (const Observer &)
std::pair< iterator, bool > | registerWith (const ext::shared_ptr< Observable > &)
void | registerWithObservables (const ext::shared_ptr< Observer > &)
Size | unregisterWith (const ext::shared_ptr< Observable > &)
void | unregisterWithAll ()
virtual void | deepUpdate ()

## Protected Member Functions
Real | underlyingNpv (const Date &expiry, Real y) const
VanillaSwap::Type | underlyingType () const
const Date | underlyingLastDate () const
const Disposable< Array > | initialGuess (const Date &expiry) const

## Additional Inherited Members
Protected Attributes inherited from GenericModelEngine< Gaussian1dModel, FloatFloatSwaption::arguments, FloatFloatSwaption::results >
Handle< Gaussian1dModel > | model_
Protected Attributes inherited from GenericEngine< FloatFloatSwaption::arguments, FloatFloatSwaption::results >
FloatFloatSwaption::arguments | arguments_
FloatFloatSwaption::results | results_

## Detailed Description

One factor model float float swaption engine.

All float coupons with fixing date greater or equal the respective option expiry are considered part of the exercise into right. Note that this is different from the usual accrual start date greater or equal exercise date if the fixing lag is strictly greater than the exercise lag (which should be a rare case). For the redepmtion flows the criterion is that the associated start date of the redemption flow (i.e. the start date of the regular coupon period with same payment date as the redemption flow) is greater or equal the exercise date.

The addtional result underlyingValue is the npv of the underlying (as seen from "today") including all fixings greater (or greater equal depending on includeTodaysExercise) today.

Examples
  Gaussian1dModels.cpp.