24#ifndef quantlib_tenoroptionletvts_hpp
25#define quantlib_tenoroptionletvts_hpp
87 ext::shared_ptr<Interpolation>
beta_;
91 ext::shared_ptr<Interpolation>
beta)
94 Real rhoInf = (*rhoInf_)(start1);
96 Real rho = rhoInf + (1.0 - rhoInf) * exp(-
beta * fabs(start2 - start1));
103 ext::shared_ptr<IborIndex> baseIndex,
104 ext::shared_ptr<IborIndex> targIndex,
105 ext::shared_ptr<CorrelationStructure> correlation);
Shared handle to an observable.
Optionlet (caplet/floorlet) volatility structure.
ext::shared_ptr< SmileSection > smileSection(const Period &optionTenor, bool extr=false) const
returns the smile for a given option tenor
interest rate volatility smile section
virtual ~CorrelationStructure()=default
virtual Real operator()(const Time &start1, const Time &start2) const =0
Real atmLevel() const override
Real minStrike() const override
ext::shared_ptr< CorrelationStructure > correlation_
std::vector< ext::shared_ptr< SmileSection > > baseSmileSection_
Volatility volatilityImpl(Rate strike) const override
std::vector< Real > fraRateBase_
std::vector< Time > startTimeBase_
Real maxStrike() const override
TwoParameterCorrelation(ext::shared_ptr< Interpolation > rhoInf, ext::shared_ptr< Interpolation > beta)
Real operator()(const Time &start1, const Time &start2) const override
ext::shared_ptr< Interpolation > rhoInf_
ext::shared_ptr< Interpolation > beta_
Rate maxStrike() const override
the maximum strike for which the term structure can return vols
Rate minStrike() const override
the minimum strike for which the term structure can return vols
ext::shared_ptr< SmileSection > smileSectionImpl(Time optionTime) const override
implements the actual smile calculation in derived classes
Volatility volatilityImpl(Time optionTime, Rate strike) const override
implements the actual volatility calculation in derived classes
ext::shared_ptr< CorrelationStructure > correlation_
VolatilityType volatilityType() const override
ext::shared_ptr< IborIndex > targIndex_
Date maxDate() const override
the latest date for which the curve can return values
Handle< OptionletVolatilityStructure > baseVTS_
ext::shared_ptr< IborIndex > baseIndex_
Real Time
continuous quantity with 1-year units
Real Volatility
volatility
base class for Inter-Bank-Offered-Rate indexes
base class for 1-D interpolations
TenorOptionletVTS::CorrelationStructure TenorOptionletVTSCorrelationStructure
optionlet (caplet/floorlet) volatility structure
Smile section base class.