25#ifndef quantlib_black_variance_surface_hpp
26#define quantlib_black_variance_surface_hpp
53 const std::vector<Date>& dates,
54 std::vector<Real> strikes,
55 const Matrix& blackVolMatrix,
71 template <
class Interpolator>
Actual/365 (Fixed) day counter.
Black volatility term structure base classes.
degenerate base class for the Acyclic Visitor pattern
Black volatility surface modelled as variance surface.
Extrapolation upperExtrapolation_
std::vector< Real > strikes_
Real minStrike() const override
the minimum strike for which the term structure can return vols
std::vector< Time > times_
void accept(AcyclicVisitor &) override
@ InterpolatorDefaultExtrapolation
DayCounter dayCounter() const override
the day counter used for date/time conversion
void setInterpolation(const Interpolator &i=Interpolator())
Date maxDate() const override
the latest date for which the curve can return values
Interpolation2D varianceSurface_
Real blackVarianceImpl(Time t, Real strike) const override
Black variance calculation.
Real maxStrike() const override
the maximum strike for which the term structure can return vols
Extrapolation lowerExtrapolation_
Black variance term structure.
void accept(AcyclicVisitor &) override
base class for 2-D interpolations.
Matrix used in linear algebra.
virtual const Date & referenceDate() const
the date at which discount = 1.0 and/or variance = 0.0
Visitor for a specific class
virtual void visit(T &)=0
Real Time
continuous quantity with 1-year units
abstract base classes for 2-D interpolations
matrix used in linear algebra.
ext::shared_ptr< BlackVolTermStructure > v