gig-distribution {ghyp} | R Documentation |
Density, distribution function, quantile function, random generation, expected shortfall and expected value and variance for the generalized inverse gaussian distribution.
dgig(x, lambda = 1, chi = 1, psi = 1, logvalue = FALSE) pgig(q, lambda = 1, chi = 1, psi = 1, ...) qgig(p, lambda = 1, chi = 1, psi = 1, method = c("integration", "splines"), spline.points = 200, subdivisions = 200, root.tol = .Machine$double.eps^0.5, rel.tol = root.tol^1.5, abs.tol = rel.tol, ...) rgig(n = 10, lambda = 1, chi = 1, psi = 1) ESgig(alpha, lambda = 1, chi = 1, psi = 1, distr = c("return", "loss"), ...) Egig(lambda, chi, psi, func = c("x", "logx", "1/x", "var"), check.pars = TRUE)
x |
A vector of quantiles. |
q |
A vector of quantiles. |
p |
A vector of probabilities. |
alpha |
A vector of confidence levels. |
n |
Number of observations. |
lambda |
A shape and scale and parameter. |
chi, psi |
Shape and scale parameters. Must be positive. |
logvalue |
If TRUE the logarithm of the density will be returned. |
distr |
Whether the ghyp-object specifies a return or a loss-distribution (see Details). |
subdivisions |
The number of subdivisions passed to integrate when computing
the the distribution function pgig . |
rel.tol |
The relative accuracy requested from integrate . |
abs.tol |
The absolute accuracy requested from integrate . |
method |
Determines which method is used when calculating quantiles. |
spline.points |
The number of support points when computing the quantiles with the method “splines” instead of “integration”. |
root.tol |
The tolerance of uniroot . |
func |
The transformation function when computing the expected value.
x is the expected value (default), log x returns the
expected value of the logarithm of x , 1/x returns the
expected value of the inverse of x and var returns the
variance. |
check.pars |
If TRUE the parameters are checked first. |
... |
Arguments passed form ESgig to qgig . |
qgig
computes the quantiles either by using the
“integration” method where the root of the distribution
function is solved or via “splines” which interpolates the
distribution function and solves it with uniroot
afterwards. The “integration” method is recommended when few
quantiles are required. If more than approximately 20 quantiles are
needed to be calculated the “splines” method becomes faster.
The accuracy can be controlled with an adequate setting of the
parameters rel.tol
, abs.tol
, root.tol
and
spline.points
.
rgig
uses the random number generator from the R package
fBasics.
dgig
gives the density,
pgig
gives the distribution function,
qgig
gives the quantile function,
ESgig
gives the expected shortfall,
rgig
generates random deviates and
Egig
gives the expected value
of either x
, 1/x
, log(x)
or the variance if func
equals var
.
David Luethi
The algorithm for simulating generalized inverse gaussian variates is copied from the R package fBasics from Diethelm Wuertz.
Dagpunar, J.S. (1989). An easily implemented generalised inverse Gaussian generator. Commun. Statist. -Simula., 18, 703–710.
Raible S. (2000). Levy Processes in Finance: Theory, Numerics and Empirical Facts, PhD Thesis, University of Freiburg, Germany, 161 pages.
fit.ghypuv
, fit.ghypmv
, integrate
,
uniroot
, spline
dgig(1:40, lambda = 10, chi = 1, psi = 1) qgig(1e-5, lambda = 10, chi = 1, psi = 1) ESgig(c(0.19,0.3), lambda = 10, chi = 1, psi = 1, distr = "loss") ESgig(alpha=c(0.19,0.3), lambda = 10, chi = 1, psi = 1, distr = "ret") Egig(lambda = 10, chi = 1, psi = 1, func = "x") Egig(lambda = 10, chi = 1, psi = 1, func = "var") Egig(lambda = 10, chi = 1, psi = 1, func = "1/x")