25#ifndef quantlib_fixed_local_vol_surface_hpp
26#define quantlib_fixed_local_vol_surface_hpp
28#include <ql/math/matrix.hpp>
29#include <ql/math/interpolation.hpp>
30#include <ql/math/interpolations/linearinterpolation.hpp>
32#include <ql/termstructures/volatility/equityfx/localvoltermstructure.hpp>
41 const std::vector<Date>& dates,
42 const std::vector<Real>& strikes,
43 ext::shared_ptr<Matrix> localVolMatrix,
49 const std::vector<Time>& times,
50 const std::vector<Real>& strikes,
51 ext::shared_ptr<Matrix> localVolMatrix,
57 const std::vector<Time>& times,
58 const std::vector<ext::shared_ptr<std::vector<Real> > >& strikes,
59 ext::shared_ptr<Matrix> localVolMatrix,
70 template <
class Interpolator>
86 const std::vector<ext::shared_ptr<std::vector<Real> > >
strikes_;
Extrapolation upperExtrapolation_
std::vector< Interpolation > localVolInterpol_
Real minStrike() const override
the minimum strike for which the term structure can return vols
std::vector< Time > times_
Volatility localVolImpl(Time t, Real strike) const override
local vol calculation
const std::vector< ext::shared_ptr< std::vector< Real > > > strikes_
@ InterpolatorDefaultExtrapolation
const ext::shared_ptr< Matrix > localVolMatrix_
void setInterpolation(const Interpolator &i=Interpolator())
Date maxDate() const override
the latest date for which the curve can return values
Real maxStrike() const override
the maximum strike for which the term structure can return vols
Time maxTime() const override
the latest time for which the curve can return values
Extrapolation lowerExtrapolation_
virtual const Date & referenceDate() const
the date at which discount = 1.0 and/or variance = 0.0
virtual DayCounter dayCounter() const
the day counter used for date/time conversion
Real Time
continuous quantity with 1-year units
Real Volatility
volatility
std::size_t Size
size of a container