QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
#include <zabrsmilesection.hpp>
Public Member Functions | |
ZabrSmileSection (Time timeToExpiry, Rate forward, std::vector< Real > zabrParameters, const std::vector< Real > &moneyness=std::vector< Real >(), Size fdRefinement=5) | |
ZabrSmileSection (const Date &d, Rate forward, std::vector< Real > zabrParameters, const DayCounter &dc=Actual365Fixed(), const std::vector< Real > &moneyness=std::vector< Real >(), Size fdRefinement=5) | |
Real | minStrike () const override |
Real | maxStrike () const override |
Real | atmLevel () const override |
Real | optionPrice (Rate strike, Option::Type type=Option::Call, Real discount=1.0) const override |
ext::shared_ptr< ZabrModel > | model () |
![]() | |
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 | |
Volatility | volatilityImpl (Rate strike) const override |
![]() | |
virtual void | initializeExerciseTime () const |
virtual Real | varianceImpl (Rate strike) const |
virtual Volatility | volatilityImpl (Rate strike) const =0 |
Private Attributes | |
ext::shared_ptr< ZabrModel > | model_ |
Evaluation | evaluation_ |
Rate | forward_ |
std::vector< Real > | params_ |
const Size | fdRefinement_ |
std::vector< Real > | strikes_ |
std::vector< Real > | callPrices_ |
ext::shared_ptr< Interpolation > | callPriceFct_ |
Real | a_ |
Real | b_ |
Additional Inherited Members | |
![]() | |
typedef set_type::iterator | iterator |
Definition at line 46 of file zabrsmilesection.hpp.
ZabrSmileSection | ( | const Date & | d, |
Rate | forward, | ||
std::vector< Real > | zabrParameters, | ||
const DayCounter & | dc = Actual365Fixed() , |
||
const std::vector< Real > & | moneyness = std::vector<Real>() , |
||
Size | fdRefinement = 5 |
||
) |
|
overridevirtual |
Implements SmileSection.
Definition at line 60 of file zabrsmilesection.hpp.
|
overridevirtual |
Implements SmileSection.
Definition at line 61 of file zabrsmilesection.hpp.
|
overridevirtual |
Implements SmileSection.
Definition at line 62 of file zabrsmilesection.hpp.
|
overridevirtual |
Reimplemented from SmileSection.
Definition at line 64 of file zabrsmilesection.hpp.
ext::shared_ptr< ZabrModel > model | ( | ) |
Definition at line 68 of file zabrsmilesection.hpp.
|
overrideprotectedvirtual |
Implements SmileSection.
Definition at line 71 of file zabrsmilesection.hpp.
|
private |
Definition at line 76 of file zabrsmilesection.hpp.
|
private |
Definition at line 139 of file zabrsmilesection.hpp.
|
private |
Definition at line 148 of file zabrsmilesection.hpp.
|
private |
Definition at line 154 of file zabrsmilesection.hpp.
|
private |
Definition at line 197 of file zabrsmilesection.hpp.
|
private |
|
private |
Definition at line 206 of file zabrsmilesection.hpp.
|
private |
Definition at line 209 of file zabrsmilesection.hpp.
|
private |
Definition at line 214 of file zabrsmilesection.hpp.
|
private |
|
private |
Definition at line 226 of file zabrsmilesection.hpp.
|
private |
Definition at line 229 of file zabrsmilesection.hpp.
|
private |
Definition at line 256 of file zabrsmilesection.hpp.
|
private |
|
private |
|
private |
Definition at line 278 of file zabrsmilesection.hpp.
|
private |
Definition at line 290 of file zabrsmilesection.hpp.
|
private |
Definition at line 298 of file zabrsmilesection.hpp.
|
private |
|
private |
Definition at line 325 of file zabrsmilesection.hpp.
|
private |
Definition at line 331 of file zabrsmilesection.hpp.
|
private |
Definition at line 105 of file zabrsmilesection.hpp.
|
private |
Definition at line 106 of file zabrsmilesection.hpp.
|
private |
Definition at line 107 of file zabrsmilesection.hpp.
|
private |
Definition at line 108 of file zabrsmilesection.hpp.
|
private |
Definition at line 109 of file zabrsmilesection.hpp.
|
private |
Definition at line 110 of file zabrsmilesection.hpp.
|
private |
Definition at line 110 of file zabrsmilesection.hpp.
|
private |
Definition at line 111 of file zabrsmilesection.hpp.
|
private |
Definition at line 112 of file zabrsmilesection.hpp.
|
private |
Definition at line 112 of file zabrsmilesection.hpp.