BlackVarianceSurface Class Reference

#include <ql/Volatilities/blackvariancesurface.hpp>

Inheritance diagram for BlackVarianceSurface:

Inheritance graph
[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< double > &strikes, const Matrix &blackVolMatrix, Extrapolation lowerExtrapolation=InterpolatorDefaultExtrapolation, Extrapolation upperExtrapolation=InterpolatorDefaultExtrapolation, const DayCounter &dayCounter=Actual365())
BlackVolTermStructure interface
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

Modifiers
template<class Traits> void setInterpolation ()
Observer interface
void update ()
Visitability
virtual void accept (AcyclicVisitor &)

Protected Member Functions

virtual double blackVarianceImpl (Time t, double strike, bool extrapolate=false) const
 implements the actual Black variance calculation in derived classes


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.


QuantLib.org
QuantLib
Hosted by
SourceForge.net Logo
Documentation generated by
doxygen