vgMeanVarMode: Moments and Mode of the Variance Gamma Distribution

Variance Gamma Mean, Variance, Skewness, Kurtosis and ModeR 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 c, default is equal to 0.

sigma

The spread parameter \sigma, default is equal to 1, must be positive.

theta

The asymmetry parameter \theta, default is equal to 0.

nu

The shape parameter \nu, default is equal to 1, must be positive.

param

Specifying the parameters as a vector which takes the form c(vgC,sigma,theta,nu).

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")

VarianceGamma documentation built on Nov. 26, 2023, 3:01 p.m.