|
QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
|
SABR volatility (smile) surface. More...
#include <ql/experimental/volatility/sabrvolsurface.hpp>
Public Member Functions | |
| SabrVolSurface (const ext::shared_ptr< InterestRateIndex > &, Handle< BlackAtmVolCurve >, const std::vector< Period > &optionTenors, std::vector< Spread > atmRateSpreads, std::vector< std::vector< Handle< Quote > > > volSpreads) | |
TermStructure interface | |
| DayCounter | dayCounter () const override |
| the day counter used for date/time conversion | |
| Date | maxDate () const override |
| the latest date for which the curve can return values | |
| Time | maxTime () const override |
| the latest time for which the curve can return values | |
| const Date & | referenceDate () const override |
| the date at which discount = 1.0 and/or variance = 0.0 | |
| Calendar | calendar () const override |
| the calendar used for reference and/or option date calculation | |
| Natural | settlementDays () const override |
| the settlementDays used for reference date calculation | |
VolatilityTermStructure interface | |
| Real | minStrike () const override |
| the minimum strike for which the term structure can return vols | |
| Real | maxStrike () const override |
| the maximum strike for which the term structure can return vols | |
| const Handle< BlackAtmVolCurve > & | atmCurve () const |
BlackVolSurface interface | |
| ext::shared_ptr< SmileSection > | smileSectionImpl (Time) const override |
| Public Member Functions inherited from InterestRateVolSurface | |
| InterestRateVolSurface (ext::shared_ptr< InterestRateIndex >, BusinessDayConvention bdc=Following, const DayCounter &dc=DayCounter()) | |
| InterestRateVolSurface (ext::shared_ptr< InterestRateIndex >, const Date &referenceDate, const Calendar &cal=Calendar(), BusinessDayConvention bdc=Following, const DayCounter &dc=DayCounter()) | |
| initialize with a fixed reference date | |
| InterestRateVolSurface (ext::shared_ptr< InterestRateIndex >, Natural settlementDays, const Calendar &, BusinessDayConvention bdc=Following, const DayCounter &dc=DayCounter()) | |
| calculate the reference date based on the global evaluation date | |
| Date | optionDateFromTenor (const Period &) const |
| period/date conversion | |
| const ext::shared_ptr< InterestRateIndex > & | index () const |
| Public Member Functions inherited from BlackVolSurface | |
| BlackVolSurface (BusinessDayConvention bdc=Following, const DayCounter &dc=DayCounter()) | |
| default constructor | |
| BlackVolSurface (const Date &referenceDate, const Calendar &cal=Calendar(), BusinessDayConvention bdc=Following, const DayCounter &dc=DayCounter()) | |
| initialize with a fixed reference date | |
| BlackVolSurface (Natural settlementDays, const Calendar &, BusinessDayConvention bdc=Following, const DayCounter &dc=DayCounter()) | |
| calculate the reference date based on the global evaluation date | |
| ext::shared_ptr< SmileSection > | smileSection (const Period &, bool extrapolate) const |
| returns the smile for a given option tenor | |
| ext::shared_ptr< SmileSection > | smileSection (const Date &, bool extrapolate) const |
| returns the smile for a given option date | |
| ext::shared_ptr< SmileSection > | smileSection (Time, bool extrapolate) const |
| returns the smile for a given option time | |
| Public Member Functions inherited from BlackAtmVolCurve | |
| BlackAtmVolCurve (BusinessDayConvention bdc=Following, const DayCounter &dc=DayCounter()) | |
| default constructor | |
| BlackAtmVolCurve (const Date &referenceDate, const Calendar &cal=Calendar(), BusinessDayConvention bdc=Following, const DayCounter &dc=DayCounter()) | |
| initialize with a fixed reference date | |
| BlackAtmVolCurve (Natural settlementDays, const Calendar &, BusinessDayConvention bdc=Following, const DayCounter &dc=DayCounter()) | |
| calculate the reference date based on the global evaluation date | |
| Volatility | atmVol (const Period &optionTenor, bool extrapolate=false) const |
| spot at-the-money volatility | |
| Volatility | atmVol (const Date &maturity, bool extrapolate=false) const |
| spot at-the-money volatility | |
| Volatility | atmVol (Time maturity, bool extrapolate=false) const |
| spot at-the-money volatility | |
| Real | atmVariance (const Period &optionTenor, bool extrapolate=false) const |
| spot at-the-money variance | |
| Real | atmVariance (const Date &maturity, bool extrapolate=false) const |
| spot at-the-money variance | |
| Real | atmVariance (Time maturity, bool extrapolate=false) const |
| spot at-the-money variance | |
| VolatilityTermStructure (BusinessDayConvention bdc, const DayCounter &dc=DayCounter()) | |
| VolatilityTermStructure (const Date &referenceDate, const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=DayCounter()) | |
| initialize with a fixed reference date | |
| VolatilityTermStructure (Natural settlementDays, const Calendar &cal, BusinessDayConvention bdc, const DayCounter &dc=DayCounter()) | |
| calculate the reference date based on the global evaluation date | |
| virtual BusinessDayConvention | businessDayConvention () const |
| the business day convention used in tenor to date conversion | |
| Date | optionDateFromTenor (const Period &) const |
| period/date conversion | |
| Public Member Functions inherited from TermStructure | |
| TermStructure (DayCounter dc=DayCounter()) | |
| default constructor | |
| TermStructure (const Date &referenceDate, Calendar calendar=Calendar(), DayCounter dc=DayCounter()) | |
| initialize with a fixed reference date | |
| TermStructure (Natural settlementDays, Calendar, DayCounter dc=DayCounter()) | |
| calculate the reference date based on the global evaluation date | |
| Time | timeFromReference (const Date &date) const |
| date/time conversion | |
| void | update () override |
| 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 () |
| Public Member Functions inherited from Observable | |
| Observable (const Observable &) | |
| Observable & | operator= (const Observable &) |
| Observable (Observable &&)=delete | |
| Observable & | operator= (Observable &&)=delete |
| void | notifyObservers () |
| Public Member Functions inherited from Extrapolator | |
| void | enableExtrapolation (bool b=true) |
| enable extrapolation in subsequent calls | |
| void | disableExtrapolation (bool b=true) |
| disable extrapolation in subsequent calls | |
| bool | allowsExtrapolation () const |
| tells whether extrapolation is enabled | |
LazyObject interface | |
| void | performCalculations () const |
| void | update () override |
Visitability | |
| void | accept (AcyclicVisitor &) override |
| std::vector< Volatility > | volatilitySpreads (const Period &) const |
| std::vector< Volatility > | volatilitySpreads (const Date &) const |
| std::array< Real, 4 > | sabrGuesses (const Date &) const |
Additional Inherited Members | |
| Public Types inherited from Observer | |
| typedef set_type::iterator | iterator |
| Protected Member Functions inherited from BlackVolSurface | |
| Real | atmVarianceImpl (Time t) const override |
| spot at-the-money variance calculation | |
| Volatility | atmVolImpl (Time t) const override |
| spot at-the-money volatility calculation | |
| Protected Member Functions inherited from BlackAtmVolCurve | |
| void | checkStrike (Rate strike, bool extrapolate) const |
| strike-range check | |
| void | checkRange (const Date &d, bool extrapolate) const |
| date-range check | |
| void | checkRange (Time t, bool extrapolate) const |
| time-range check | |
| ext::shared_ptr< InterestRateIndex > | index_ |
| bool | moving_ = false |
| bool | updated_ = true |
| Calendar | calendar_ |
SABR volatility (smile) surface.
blah blah
|
overridevirtual |
the day counter used for date/time conversion
Reimplemented from TermStructure.
|
overridevirtual |
the latest date for which the curve can return values
Implements TermStructure.
|
overridevirtual |
the latest time for which the curve can return values
Reimplemented from TermStructure.
|
overridevirtual |
the date at which discount = 1.0 and/or variance = 0.0
Reimplemented from TermStructure.
|
overridevirtual |
the calendar used for reference and/or option date calculation
Reimplemented from TermStructure.
|
overridevirtual |
the settlementDays used for reference date calculation
Reimplemented from TermStructure.
|
overridevirtual |
the minimum strike for which the term structure can return vols
Implements VolatilityTermStructure.
|
overridevirtual |
the maximum strike for which the term structure can return vols
Implements VolatilityTermStructure.
|
overridevirtual |
Reimplemented from InterestRateVolSurface.
|
overridevirtual |
Implements BlackVolSurface.
|
overrideprotectedvirtual |
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.
Implements Observer.