QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
Loading...
Searching...
No Matches
SviSmileSection Class Reference

Stochastic Volatility Inspired Smile Section. More...

#include <ql/experimental/volatility/svismilesection.hpp>

Inheritance diagram for SviSmileSection:

Constructors

 SviSmileSection (Time timeToExpiry, Rate forward, std::vector< Real > sviParameters)
 SviSmileSection (const Date &d, Rate forward, std::vector< Real > sviParameters, const DayCounter &dc=Actual365Fixed())
Real minStrike () const override
Real maxStrike () const override
Real atmLevel () const override
Volatility volatilityImpl (Rate strike) const override

Additional Inherited Members

Public Types inherited from Observer
typedef set_type::iterator iterator
Public Member Functions inherited from SmileSection
 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)
void update () override
Real variance (Rate strike) const
Volatility volatility (Rate strike) const
virtual const DateexerciseDate () const
virtual VolatilityType volatilityType () const
virtual Rate shift () const
virtual const DatereferenceDate () const
virtual Time exerciseTime () const
virtual const DayCounterdayCounter () 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
Public Member Functions inherited from Observable
 Observable (const Observable &)
Observableoperator= (const Observable &)
 Observable (Observable &&)=delete
Observableoperator= (Observable &&)=delete
void notifyObservers ()
Public Member Functions inherited from Observer
 Observer (const Observer &)
Observeroperator= (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 inherited from SmileSection
virtual void initializeExerciseTime () const
virtual Real varianceImpl (Rate strike) const

Detailed Description

Stochastic Volatility Inspired Smile Section.

Tests
the correctness of the result is tested by checking it against known good values.

Constructor & Destructor Documentation

◆ SviSmileSection() [1/2]

SviSmileSection ( Time timeToExpiry,
Rate forward,
std::vector< Real > sviParameters )
Parameters
timeToExpiryTime to expiry
forwardForward price corresponding to the expiry date
sviParametersExpects SVI parameters as a vector composed of a, b, sigma, rho, m

◆ SviSmileSection() [2/2]

SviSmileSection ( const Date & d,
Rate forward,
std::vector< Real > sviParameters,
const DayCounter & dc = Actual365Fixed() )
Parameters
dDate of expiry
forwardForward price corresponding to the expiry date
sviParametersExpects SVI parameters as a vector composed of a, b, sigma, rho, m
dcDay count method used to compute the time to expiry

Member Function Documentation

◆ minStrike()

Real minStrike ( ) const
overridevirtual

Implements SmileSection.

◆ maxStrike()

Real maxStrike ( ) const
overridevirtual

Implements SmileSection.

◆ atmLevel()

Real atmLevel ( ) const
overridevirtual

Implements SmileSection.

◆ volatilityImpl()

Volatility volatilityImpl ( Rate strike) const
overrideprotectedvirtual

Implements SmileSection.