Variance Gamma Mean, Variance, Skewness, Kurtosis and Mode {VarianceGamma} | R Documentation |
Moments and Mode of the Variance Gamma Distribution
Description
Functions to calculate the mean, variance, skewness, kurtosis and mode of a specific variance gamma distribution.
Usage
vgMean(vgC = 0, sigma = 1, theta = 0, nu = 1, param = c(vgC,sigma,theta,nu))
vgVar(vgC = 0, sigma = 1, theta = 0, nu = 1, param = c(vgC,sigma,theta,nu))
vgSkew(vgC = 0, sigma = 1, theta = 0, nu = 1, param = c(vgC,sigma,theta,nu))
vgKurt(vgC = 0, sigma = 1, theta = 0, nu = 1, param = c(vgC,sigma,theta,nu))
vgMode(vgC = 0, sigma = 1, theta = 0, nu = 1, param = c(vgC,sigma,theta,nu))
Arguments
vgC |
The location parameter |
sigma |
The spread parameter |
theta |
The asymmetry parameter |
nu |
The shape parameter |
param |
Specifying the parameters as a vector which takes the form
|
Value
vgMean
gives the mean of the variance gamma distribution,
vgVar
the variance, vgSkew
the skewness, vgKurt
the
kurtosis, and vgMode
the mode.
The formulae used for the mean and variance are as given in
Seneta (2004).
If \nu
is greater than or equal to 2, the mode is equal to the value
of the parameter c
. Otherwise, it is found by a numerical
optimisation using optim
.
The parameterisation of the variance gamma distribution used
for these functions is the (c,\sigma,\theta,\nu)
one. See vgChangePars
to transfer between parameterisations.
Author(s)
David Scott d.scott@auckland.ac.nz, Christine Yang Dong c.dong@auckland.ac.nz
References
Seneta, E. (2004). Fitting the variance-gamma model to financial data. J. Appl. Prob., 41A:177–187. Kotz, S, Kozubowski, T. J., and Podgórski, K. (2001). The Laplace Distribution and Generalizations. Birkhauser, Boston, 349 p.
See Also
dvg
, vgChangePars
,vgCalcRange
,
besselK
.
Examples
param <- c(2,2,2,0.5)
vgMean(param = param)
## Or to specify parameter values individually, use:
vgMean (2,2,2,0.5)
vgVar(param = param)
vgSkew(param = param)
vgKurt(param = param)
vgMode(param = param)
maxDens <- dvg(vgMode(param = param), param = param)
vgRange <- vgCalcRange(param = param, tol = 10^(-2)*maxDens)
curve(dvg(x, param = param), vgRange[1], vgRange[2])
abline(v = vgMode(param = param), col = "blue")
abline(v = vgMean(param = param), col = "red")