#include <qle/termstructures/creditvolcurve.hpp>
Public Types | |
enum class | Type { Price , Spread } |
Public Member Functions | |
CreditVolCurve (QuantLib::BusinessDayConvention bdc, const QuantLib::DayCounter &dc, const std::vector< QuantLib::Period > &terms, const std::vector< QuantLib::Handle< CreditCurve > > &termCurves, const Type &type) | |
CreditVolCurve (const QuantLib::Natural settlementDays, const QuantLib::Calendar &cal, QuantLib::BusinessDayConvention bdc, const QuantLib::DayCounter &dc, const std::vector< QuantLib::Period > &terms, const std::vector< QuantLib::Handle< CreditCurve > > &termCurves, const Type &type) | |
CreditVolCurve (const QuantLib::Date &referenceDate, const QuantLib::Calendar &cal, QuantLib::BusinessDayConvention bdc, const QuantLib::DayCounter &dc, const std::vector< QuantLib::Period > &terms, const std::vector< QuantLib::Handle< CreditCurve > > &termCurves, const Type &type) | |
QuantLib::Real | volatility (const QuantLib::Date &exerciseDate, const QuantLib::Period &underlyingTerm, const QuantLib::Real strike, const Type &targetType) const |
virtual QuantLib::Real | volatility (const QuantLib::Date &exerciseDate, const QuantLib::Real underlyingLength, const QuantLib::Real strike, const Type &targetType) const =0 |
QuantLib::Real | volatility (const QuantLib::Real exerciseTime, const QuantLib::Real underlyingLength, const QuantLib::Real strike, const Type &targetType) const |
virtual const std::vector< QuantLib::Period > & | terms () const |
virtual const std::vector< QuantLib::Handle< CreditCurve > > & | termCurves () const |
const Type & | type () const |
QuantLib::Real | atmStrike (const QuantLib::Date &expiry, const QuantLib::Period &term) const |
QuantLib::Real | atmStrike (const QuantLib::Date &expiry, const QuantLib::Real underlyingLength) const |
QuantLib::Real | minStrike () const override |
QuantLib::Real | maxStrike () const override |
QuantLib::Date | maxDate () const override |
Protected Member Functions | |
void | init () |
void | update () override |
void | performCalculations () const override |
QuantLib::Real | moneyness (const QuantLib::Real strike, const QuantLib::Real atmStrike) const |
QuantLib::Real | strike (const QuantLib::Real moneyness, const QuantLib::Real atmStrike) const |
Protected Attributes | |
std::vector< QuantLib::Period > | terms_ |
std::vector< QuantLib::Handle< CreditCurve > > | termCurves_ |
Type | type_ |
std::map< std::pair< QuantLib::Date, double >, double > | atmStrikeCache_ |
Definition at line 37 of file creditvolcurve.hpp.
|
strong |
CreditVolCurve | ( | QuantLib::BusinessDayConvention | bdc, |
const QuantLib::DayCounter & | dc, | ||
const std::vector< QuantLib::Period > & | terms, | ||
const std::vector< QuantLib::Handle< CreditCurve > > & | termCurves, | ||
const Type & | type | ||
) |
CreditVolCurve | ( | const QuantLib::Natural | settlementDays, |
const QuantLib::Calendar & | cal, | ||
QuantLib::BusinessDayConvention | bdc, | ||
const QuantLib::DayCounter & | dc, | ||
const std::vector< QuantLib::Period > & | terms, | ||
const std::vector< QuantLib::Handle< CreditCurve > > & | termCurves, | ||
const Type & | type | ||
) |
CreditVolCurve | ( | const QuantLib::Date & | referenceDate, |
const QuantLib::Calendar & | cal, | ||
QuantLib::BusinessDayConvention | bdc, | ||
const QuantLib::DayCounter & | dc, | ||
const std::vector< QuantLib::Period > & | terms, | ||
const std::vector< QuantLib::Handle< CreditCurve > > & | termCurves, | ||
const Type & | type | ||
) |
QuantLib::Real volatility | ( | const QuantLib::Date & | exerciseDate, |
const QuantLib::Period & | underlyingTerm, | ||
const QuantLib::Real | strike, | ||
const Type & | targetType | ||
) | const |
|
pure virtual |
Implemented in InterpolatingCreditVolCurve, ProxyCreditVolCurve, SpreadedCreditVolCurve, and CreditVolCurveWrapper.
QuantLib::Real volatility | ( | const QuantLib::Real | exerciseTime, |
const QuantLib::Real | underlyingLength, | ||
const QuantLib::Real | strike, | ||
const Type & | targetType | ||
) | const |
|
virtual |
Definition at line 92 of file creditvolcurve.cpp.
|
virtual |
Definition at line 94 of file creditvolcurve.cpp.
const CreditVolCurve::Type & type | ( | ) | const |
QuantLib::Real atmStrike | ( | const QuantLib::Date & | expiry, |
const QuantLib::Period & | term | ||
) | const |
QuantLib::Real atmStrike | ( | const QuantLib::Date & | expiry, |
const QuantLib::Real | underlyingLength | ||
) | const |
|
override |
Definition at line 100 of file creditvolcurve.cpp.
|
override |
Definition at line 102 of file creditvolcurve.cpp.
|
override |
Definition at line 98 of file creditvolcurve.cpp.
|
protected |
Definition at line 51 of file creditvolcurve.cpp.
|
overrideprotected |
Definition at line 75 of file creditvolcurve.hpp.
|
overrideprotected |
Definition at line 261 of file creditvolcurve.cpp.
|
protected |
Definition at line 104 of file creditvolcurve.cpp.
|
protected |
Definition at line 116 of file creditvolcurve.cpp.
|
protected |
Definition at line 80 of file creditvolcurve.hpp.
|
protected |
Definition at line 81 of file creditvolcurve.hpp.
|
protected |
Definition at line 82 of file creditvolcurve.hpp.
|
mutableprotected |
Definition at line 84 of file creditvolcurve.hpp.