QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
#include <gaussian1dsmilesection.hpp>
Public Member Functions | |
Gaussian1dSmileSection (const Date &fixingDate, ext::shared_ptr< SwapIndex > swapIndex, const ext::shared_ptr< Gaussian1dModel > &model, const DayCounter &dc, const ext::shared_ptr< Gaussian1dSwaptionEngine > &swaptionEngine=ext::shared_ptr< Gaussian1dSwaptionEngine >()) | |
Gaussian1dSmileSection (const Date &fixingDate, ext::shared_ptr< IborIndex > swapIndex, const ext::shared_ptr< Gaussian1dModel > &model, const DayCounter &dc, const ext::shared_ptr< Gaussian1dCapFloorEngine > &capEngine=ext::shared_ptr< Gaussian1dCapFloorEngine >()) | |
Real | minStrike () const override |
Real | maxStrike () const override |
Real | atmLevel () const override |
Real | optionPrice (Rate strike, Option::Type=Option::Call, Real discount=1.0) const override |
![]() | |
SmileSection (const Date &d, DayCounter dc=DayCounter(), const Date &referenceDate=Date(), VolatilityType type=ShiftedLognormal, Rate shift=0.0) | |
SmileSection (Time exerciseTime, DayCounter dc=DayCounter(), VolatilityType type=ShiftedLognormal, Rate shift=0.0) | |
SmileSection ()=default | |
~SmileSection () override=default | |
void | update () override |
virtual Real | minStrike () const =0 |
virtual Real | maxStrike () const =0 |
Real | variance (Rate strike) const |
Volatility | volatility (Rate strike) const |
virtual Real | atmLevel () const =0 |
virtual const Date & | exerciseDate () const |
virtual VolatilityType | volatilityType () const |
virtual Rate | shift () const |
virtual const Date & | referenceDate () const |
virtual Time | exerciseTime () const |
virtual const DayCounter & | dayCounter () const |
virtual Real | optionPrice (Rate strike, Option::Type type=Option::Call, Real discount=1.0) const |
virtual Real | digitalOptionPrice (Rate strike, Option::Type type=Option::Call, Real discount=1.0, Real gap=1.0e-5) const |
virtual Real | vega (Rate strike, Real discount=1.0) const |
virtual Real | density (Rate strike, Real discount=1.0, Real gap=1.0E-4) const |
Volatility | volatility (Rate strike, VolatilityType type, Real shift=0.0) const |
![]() | |
Observable () | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
Observable (Observable &&)=delete | |
Observable & | operator= (Observable &&)=delete |
virtual | ~Observable ()=default |
void | notifyObservers () |
![]() | |
Observer ()=default | |
Observer (const Observer &) | |
Observer & | operator= (const Observer &) |
virtual | ~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 | update ()=0 |
virtual void | deepUpdate () |
Protected Member Functions | |
Real | volatilityImpl (Rate strike) const override |
![]() | |
virtual void | initializeExerciseTime () const |
virtual Real | varianceImpl (Rate strike) const |
virtual Volatility | volatilityImpl (Rate strike) const =0 |
Private Attributes | |
Real | atm_ |
Real | annuity_ |
Date | fixingDate_ |
ext::shared_ptr< SwapIndex > | swapIndex_ |
ext::shared_ptr< IborIndex > | iborIndex_ |
ext::shared_ptr< Gaussian1dModel > | model_ |
ext::shared_ptr< PricingEngine > | engine_ |
Additional Inherited Members | |
![]() | |
typedef set_type::iterator | iterator |
smile section based on a gaussian 1d model instance if curves are attached to the swap or ibor index, these are used to adjust the model's yield term structure, if not the model's yield term structure is used directly
Definition at line 41 of file gaussian1dsmilesection.hpp.
Gaussian1dSmileSection | ( | const Date & | fixingDate, |
ext::shared_ptr< SwapIndex > | swapIndex, | ||
const ext::shared_ptr< Gaussian1dModel > & | model, | ||
const DayCounter & | dc, | ||
const ext::shared_ptr< Gaussian1dSwaptionEngine > & | swaptionEngine = ext::shared_ptr<Gaussian1dSwaptionEngine>() |
||
) |
Definition at line 30 of file gaussian1dsmilesection.cpp.
Gaussian1dSmileSection | ( | const Date & | fixingDate, |
ext::shared_ptr< IborIndex > | swapIndex, | ||
const ext::shared_ptr< Gaussian1dModel > & | model, | ||
const DayCounter & | dc, | ||
const ext::shared_ptr< Gaussian1dCapFloorEngine > & | capEngine = ext::shared_ptr<Gaussian1dCapFloorEngine>() |
||
) |
|
overridevirtual |
Implements SmileSection.
Definition at line 58 of file gaussian1dsmilesection.hpp.
|
overridevirtual |
Implements SmileSection.
Definition at line 59 of file gaussian1dsmilesection.hpp.
|
overridevirtual |
Implements SmileSection.
Definition at line 73 of file gaussian1dsmilesection.cpp.
|
overridevirtual |
Reimplemented from SmileSection.
Definition at line 75 of file gaussian1dsmilesection.cpp.
Implements SmileSection.
Definition at line 97 of file gaussian1dsmilesection.cpp.
|
private |
Definition at line 68 of file gaussian1dsmilesection.hpp.
|
private |
Definition at line 68 of file gaussian1dsmilesection.hpp.
|
private |
Definition at line 69 of file gaussian1dsmilesection.hpp.
|
private |
Definition at line 70 of file gaussian1dsmilesection.hpp.
|
private |
Definition at line 71 of file gaussian1dsmilesection.hpp.
|
private |
Definition at line 72 of file gaussian1dsmilesection.hpp.
|
private |
Definition at line 73 of file gaussian1dsmilesection.hpp.