BlackVarianceSurface Class Reference#include <ql/Volatilities/blackvariancesurface.hpp>
Inheritance diagram for BlackVarianceSurface:
[legend]List of all members.
Detailed Description
Black volatility surface modelled as variance surface.
This class calculates time/strike dependent Black volatilities using as input a matrix of Black volatilities observed in the market.
The calculation is performed interpolating on the variance surface. Bilinear interpolation is used as default; this can be changed by the setInterpolation() method.
- Todo:
- check time extrapolation
|
Public Types |
enum | Extrapolation { ConstantExtrapolation,
InterpolatorDefaultExtrapolation
} |
Public Member Functions |
| BlackVarianceSurface (const Date &referenceDate, const std::vector< Date > &dates, const std::vector< Real > &strikes, const Matrix &blackVolMatrix, Extrapolation lowerExtrapolation=InterpolatorDefaultExtrapolation, Extrapolation upperExtrapolation=InterpolatorDefaultExtrapolation, const DayCounter &dayCounter=Actual365()) |
|
Date | referenceDate () const |
| returns the reference date for which t=0
|
DayCounter | dayCounter () const |
| returns the day counter
|
Date | maxDate () const |
| the latest date for which the term structure can return vols
|
Real | minStrike () const |
| the minimum strike for which the term structure can return vols
|
Real | maxStrike () const |
| the maximum strike for which the term structure can return vols
|
|
template<class Traits> void | setInterpolation () |
|
void | update () |
|
virtual void | accept (AcyclicVisitor &) |
Protected Member Functions |
virtual Real | blackVarianceImpl (Time t, Real strike) const |
| Black variance calculation.
|
Member Function Documentation
void update |
( |
|
) |
[virtual] |
|
|
This method must be implemented in derived classes. An instance of Observer does not call this method directly: instead, it will be called by the observables the instance registered with when they need to notify any changes.
Implements Observer. |
|