QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
GARCH volatility model. More...
#include <garch.hpp>
Public Types | |
enum | Mode { MomentMatchingGuess , GammaGuess , BestOfTwo , DoubleOptimization } |
typedef TimeSeries< Volatility > | time_series |
typedef time_series::const_iterator | const_iterator |
![]() | |
typedef TimeSeries< Volatility > | time_series |
Public Member Functions | |
Constructors | |
Garch11 (Real a, Real b, Real vl) | |
Garch11 (const time_series &qs, Mode mode=BestOfTwo) | |
Inspectors | |
Real | alpha () const |
Real | beta () const |
Real | omega () const |
Real | ltVol () const |
Real | logLikelihood () const |
Mode | mode () const |
VolatilityCompositor interface | |
time_series | calculate (const time_series "eSeries) override |
void | calibrate (const time_series "eSeries) override |
![]() | |
virtual | ~VolatilityCompositor ()=default |
virtual time_series | calculate (const time_series &volatilitySeries)=0 |
virtual void | calibrate (const time_series &volatilitySeries)=0 |
Public Attributes | |
QL_DEPRECATED_DISABLE_WARNING typedef time_series::const_value_iterator | const_value_iterator |
Additional interface | |
Real | alpha_ |
Real | beta_ |
Real | gamma_ |
Real | vl_ |
Real | logLikelihood_ |
Mode | mode_ |
void | calibrate (const time_series "eSeries, OptimizationMethod &method, const EndCriteria &endCriteria) |
void | calibrate (const time_series "eSeries, OptimizationMethod &method, const EndCriteria &endCriteria, const Array &initialGuess) |
template<typename ForwardIterator > | |
void | calibrate (ForwardIterator begin, ForwardIterator end) |
template<typename ForwardIterator > | |
void | calibrate (ForwardIterator begin, ForwardIterator end, OptimizationMethod &method, EndCriteria endCriteria) |
template<typename ForwardIterator > | |
void | calibrate (ForwardIterator begin, ForwardIterator end, OptimizationMethod &method, EndCriteria endCriteria, const Array &initialGuess) |
Real | forecast (Real r, Real sigma2) const |
static time_series | calculate (const time_series "eSeries, Real alpha, Real beta, Real omega) |
template<typename InputIterator > | |
static Real | to_r2 (InputIterator begin, InputIterator end, std::vector< Volatility > &r2) |
static ext::shared_ptr< Problem > | calibrate_r2 (Mode mode, const std::vector< Volatility > &r2, Real mean_r2, Real &alpha, Real &beta, Real &omega) |
static ext::shared_ptr< Problem > | calibrate_r2 (Mode mode, const std::vector< Volatility > &r2, Real mean_r2, OptimizationMethod &method, const EndCriteria &endCriteria, Real &alpha, Real &beta, Real &omega) |
static ext::shared_ptr< Problem > | calibrate_r2 (const std::vector< Volatility > &r2, Real mean_r2, OptimizationMethod &method, const EndCriteria &endCriteria, const Array &initialGuess, Real &alpha, Real &beta, Real &omega) |
static ext::shared_ptr< Problem > | calibrate_r2 (const std::vector< Volatility > &r2, OptimizationMethod &method, const EndCriteria &endCriteria, const Array &initialGuess, Real &alpha, Real &beta, Real &omega) |
static ext::shared_ptr< Problem > | calibrate_r2 (const std::vector< Volatility > &r2, Real mean_r2, OptimizationMethod &method, Constraint &constraints, const EndCriteria &endCriteria, const Array &initialGuess, Real &alpha, Real &beta, Real &omega) |
static ext::shared_ptr< Problem > | calibrate_r2 (const std::vector< Volatility > &r2, OptimizationMethod &method, Constraint &constraints, const EndCriteria &endCriteria, const Array &initialGuess, Real &alpha, Real &beta, Real &omega) |
template<class InputIterator > | |
static Real | costFunction (InputIterator begin, InputIterator end, Real alpha, Real beta, Real omega) |
template<class InputIterator > | |
Real | costFunction (InputIterator begin, InputIterator end) const |
GARCH volatility model.
Volatilities are assumed to be expressed on an annual basis.
typedef TimeSeries<Volatility> time_series |
enum Mode |
Garch11 | ( | const time_series & | qs, |
Mode | mode = BestOfTwo |
||
) |
Real alpha | ( | ) | const |
Real beta | ( | ) | const |
Real omega | ( | ) | const |
|
overridevirtual |
Implements VolatilityCompositor.
Definition at line 95 of file garch.hpp.
|
overridevirtual |
Implements VolatilityCompositor.
Definition at line 98 of file garch.hpp.
|
static |
void calibrate | ( | const time_series & | quoteSeries, |
OptimizationMethod & | method, | ||
const EndCriteria & | endCriteria | ||
) |
void calibrate | ( | const time_series & | quoteSeries, |
OptimizationMethod & | method, | ||
const EndCriteria & | endCriteria, | ||
const Array & | initialGuess | ||
) |
void calibrate | ( | ForwardIterator | begin, |
ForwardIterator | end | ||
) |
void calibrate | ( | ForwardIterator | begin, |
ForwardIterator | end, | ||
OptimizationMethod & | method, | ||
EndCriteria | endCriteria | ||
) |
void calibrate | ( | ForwardIterator | begin, |
ForwardIterator | end, | ||
OptimizationMethod & | method, | ||
EndCriteria | endCriteria, | ||
const Array & | initialGuess | ||
) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
private |
QL_DEPRECATED_DISABLE_WARNING typedef time_series::const_value_iterator const_value_iterator |