33 std::vector<Real> sviParams,
42 "svi expects 5 parameters (a,b,sigma,rho,m) but ("
43 <<
params_.size() <<
") given");
53 return std::sqrt(std::max(0.0, totalVariance /
exerciseTime()));
interest rate volatility smile section
virtual Time exerciseTime() const
SviSmileSection(Time timeToExpiry, Rate forward, std::vector< Real > sviParameters)
std::vector< Real > params_
Volatility volatilityImpl(Rate strike) const override
#define QL_REQUIRE(condition, message)
throw an error if the given pre-condition is not verified
Real Time
continuous quantity with 1-year units
Real Volatility
volatility
void checkSviParameters(const Real a, const Real b, const Real sigma, const Real rho, const Real m, const Time tte)
Real sviTotalVariance(const Real a, const Real b, const Real sigma, const Real rho, const Real m, const Real k)
Svi interpolation interpolation between discrete points.