24#ifndef quantlib_svi_interpolated_smile_section_hpp
25#define quantlib_svi_interpolated_smile_section_hpp
42 const Date& optionDate,
44 const std::vector<Rate>& strikes,
45 bool hasFloatingStrikes,
58 bool vegaWeighted =
true,
59 ext::shared_ptr<EndCriteria>
endCriteria = ext::shared_ptr<EndCriteria>(),
60 ext::shared_ptr<OptimizationMethod> method = ext::shared_ptr<OptimizationMethod>(),
64 const Date& optionDate,
66 const std::vector<Rate>& strikes,
67 bool hasFloatingStrikes,
69 const std::vector<Volatility>& vols,
80 bool vegaWeighted =
true,
81 ext::shared_ptr<EndCriteria>
endCriteria = ext::shared_ptr<EndCriteria>(),
82 ext::shared_ptr<OptimizationMethod> method = ext::shared_ptr<OptimizationMethod>(),
125 mutable std::vector<Volatility>
vols_;
132 const ext::shared_ptr<OptimizationMethod>
method_;
Actual/365 (Fixed) day counter.
Actual/365 (Fixed) day count convention.
Shared handle to an observable.
Framework for calculation on demand and result caching.
virtual void calculate() const
interest rate volatility smile section
Real atmLevel() const override
const Handle< Quote > forward_
Market data.
void performCalculations() const override
ext::shared_ptr< SviInterpolation > sviInterpolation_
const ext::shared_ptr< EndCriteria > endCriteria_
Real minStrike() const override
EndCriteria::Type endCriteria() const
void createInterpolation() const
Creates the mutable SviInterpolation.
std::vector< Rate > actualStrikes_
Only strikes corresponding to valid market data.
const ext::shared_ptr< OptimizationMethod > method_
Real varianceImpl(Rate strike) const override
std::vector< Volatility > vols_
bool isAFixed_
Svi interpolation settings.
std::vector< Rate > strikes_
const Handle< Quote > atmVolatility_
Real maxStrike() const override
std::vector< Handle< Quote > > volHandles_
Volatility volatilityImpl(Rate strike) const override
Real Volatility
volatility
Globally accessible relinkable pointer.
framework for calculation on demand and result caching
Smile section base class.
Svi interpolation interpolation between discrete points.