22 lines
515 B
C++
22 lines
515 B
C++
|
|
/**
|
||
|
|
* @file FlatVolatilitySurface.hpp
|
||
|
|
* @brief Constant implied volatility surface.
|
||
|
|
*/
|
||
|
|
#ifndef QUANTENGINE_FLATVOLATILITYSURFACE_HPP
|
||
|
|
#define QUANTENGINE_FLATVOLATILITYSURFACE_HPP
|
||
|
|
#include "VolatilitySurface.hpp"
|
||
|
|
|
||
|
|
/**
|
||
|
|
* @brief @f$\sigma(K,T)\equiv\sigma_0@f$.
|
||
|
|
*/
|
||
|
|
class FlatVolatilitySurface : public VolatilitySurface {
|
||
|
|
public:
|
||
|
|
explicit FlatVolatilitySurface(double sigma = 0.2) : sigma_(sigma) {}
|
||
|
|
|
||
|
|
double sigma(double K, double T) const override {return sigma_;}
|
||
|
|
|
||
|
|
private:
|
||
|
|
double sigma_;
|
||
|
|
};
|
||
|
|
#endif
|