HestonNandiGarchFit {fOptions} | R Documentation |
A collection and description of functions to model
the GARCH(1,1) price paths which underly Heston and
Nandi's option pricing model.
The functions are:
hngarchSim | Simulates a Heston-Nandi Garch(1,1) process, |
hngarchFit | MLE for a Heston Nandi Garch(1,1) model, |
hngarchStats | True moments of the log-Return distribution, |
print.hngarch | Print method, |
summary.hngarch | Diagnostic summary. |
hngarchSim(model, n, innov, n.start, start.innov, rand.gen, ...) hngarchFit(x, model = list(lambda = -0.5, omega = var(x), alpha = 0.1 * var(x), beta = 0.1, gamma = 0, rf = 0), symmetric = TRUE, trace = FALSE, title = NULL, description = NULL, ...) hngarchStats(model) ## S3 method for class 'hngarch': print(x, ...) ## S3 method for class 'hngarch': summary(object, ...)
description |
a brief description of the porject of type character. |
innov |
[hngarchSim] - is a univariate time series or vector of innovations to produce the series. If not provided, innov will be generated using
the random number generator specified by rand.gen .
Missing values are not allowed. By default the normal
random number generator will be used.
|
model |
a list of GARCH model parameters with the following entries:
lambda ,
omega , the constant coefficient of the variance equation,
alpha the autoregressive coefficient,
beta the variance coefficient,
gamma the asymmetry coefficient,
and rf , the risk free rate, numeric values.
|
n |
[hngarchSim] - is the length of the series to be simulated. The default value is 1000. |
n.start |
[hngarchSim] - gives the number of start-up values to be discarded. The default value is 100. |
object |
[summary] - a fitted HN-GARCH(1,1) time series object of class "hngarch"
as returned from the function hngarchFit .
|
rand.gen |
[hngarchSim] - is the function which is called to generate the innovations. Usually, rand.gen will be a random number generator.
Additional arguments required by the random number generator
rand.gen , usually the location, scale and/or shape
parameter of the underlying distribution function, have to be
passed through the dots argument.
|
start.innov |
[hngarchSim] - is a univariate time series or vector of innovations to be used as start up values. Missing values are not allowed. |
symmetric |
[hngarchFit] - a logical, if TRUE a symmetric model is estimated, otherwise the parameters are estimated for an asymmetric HN Garch(1,1) model. |
title |
a character string which allows for a project title. |
trace |
[hngarchFit] - a logical value. Should the optimizarion be traced? If trace=FALSE , no tracing is done of the
iteration path.
|
x |
[hngarchFit] - an univariate vector or time series. [print] - a fitted HN-GARCH(1,1) time series object of class "hngarch"
as returned from the function hngarchFit .
|
... |
additional arguments to be passed. |
Path Simulation:
The function hngarchSim
simulates a Heston-Nandi Garch(1,1)
process with structure parameters specified through the list
model(lambda, omega, alpha, beta, gamma, rf)
.
Parameter Estimation:
The function hngarchFit
estimates by the maximum log-likelihood
approach the parameters either for a symmetric or an asymmetric
Heston-Nandi Garch(1,1) model from the log returns x
of a
financial time series. For optimization R's optim
function is
used. Additional optimization parameters may be passed throught the
...
argument.
Diagnostic Analysis:
The function summary.hngarch
performs a diagnostic analysis
and recalculates conditional variances and innovations from the time
series.
Calculation of Moments:
The function hngarchStats
calculates the first four true
moments of the unconditional log return distribution for a stationary
Heston-Nandi Garch(1,1) process with standard normally distributed
innovations. In addition the persistence and the expectation values
of sigma to the power 2, 4, 6, and 8 can be accessed.
hngarchSim
returns numeric vector with the simulated time
series points neglecting those from the first start.innov
innovations.
hngarchFit
returns list with two entries: The estimated model parmeters
model
, where model
is a list of the parameters
itself, and llh
the value of the log likelihood.
hngarchStats
returns a list with the following components:
persistence
, the value of the persistence,
meansigma2
, meansigma4
, meansigma6
, meansigma8
,
the expectation value of sigma to the power of 2, 4, 6, and 8,
mean
, variance
, skewness
, kurtosis
,
the mean, variance, skewness and kurtosis of the log returns.
summary.hngarch
returns list with the following elements: h
,
a numeric vector with the conditional variances, z
, a numeric
vector with the innovations.
Diethelm Wuertz for the Rmetrics R-port.
Heston S.L., Nandi S. (1997); A Closed-Form GARCH Option Pricing Model, Federal Reserve Bank of Atlanta.
## SOURCE("fOptions.4A-HestonNandiGarchFit") ## Not run: ## hngarchSim - # Simulate a Heston Nandi Garch(1,1) Process: # Symmetric Model - Parameters: model = list(lambda = 4, omega = 8e-5, alpha = 6e-5, beta = 0.7, gamma = 0, rf = 0) ts = hngarchSim(model = model, n = 500, n.start = 100) par(mfrow = c(2, 1), cex = 0.75) ts.plot(ts, col = "steelblue", main = "HN Garch Symmetric Model") grid() ## hngarchFit - # HN-GARCH log likelihood Parameter Estimation: # To speed up, we start with the simulated model ... mle = hngarchFit(model = model, x = ts, symmetric = TRUE) mle ## summary.hngarch - # HN-GARCH Diagnostic Analysis: par(mfrow = c(3, 1), cex = 0.75) summary(mle) ## hngarchStats - # HN-GARCH Moments: hngarchStats(mle$model) ## End(Not run)