UNU.RAN object for Variance Gamma distribution

Description

Create UNU.RAN object for a Variance Gamma distribution with shape parameter lambda, shape parameter alpha, asymmetry (shape) parameter beta, and location parameter mu.

[Distribution] – Variance Gamma.

Usage

1
udvg(lambda, alpha, beta, mu, lb=-Inf, ub=Inf)

Arguments

lambda

shape parameter (must be strictly positive).

alpha

shape parameter (must be strictly larger than absolute value of beta).

beta

asymmetry (shape) parameter.

mu

location parameter.

lb

lower bound of (truncated) distribution.

ub

upper bound of (truncated) distribution.

Details

The variance gamma distribution with parameters lambda, alpha, beta, and mu has density

f(x) = kappa * |x-mu|^(lambda-1/2) * exp(beta*(x-mu)) * K_{lambda-1/2}(alpha * |x-mu|)

where the normalization constant is given by

kappa = (alpha^2 - beta^2)^lambda / (sqrt(pi) * (2*alpha)^(lambda-1/2) * Gamma(lambda))

K_(lambda)(t) is the modified Bessel function of the third kind with index lambda. Gamma(t) is the Gamma function.

Notice that alpha > |beta| and lambda > 0.

The domain of the distribution can be truncated to the interval (lb,ub).

Value

An object of class "unuran.cont".

Note

For lambda <= 0.5, the density has a pole at mu.

Author(s)

Josef Leydold and Kemal Dingec unuran@statmath.wu.ac.at.

References

Eberlein, E., von Hammerstein, E. A., 2004. Generalized hyperbolic and inverse Gaussian distributions: limiting cases and approximation of processes. In Seminar on Stochastic Analysis, Random Fields and Applications IV, Progress in Probability 58, R. C. Dalang, M. Dozzi, F. Russo (Eds.), Birkhauser Verlag, p. 221–264.

Madan, D. B., Seneta, E., 1990. The variance gamma (V.G.) model for share market returns. Journal of Business, Vol. 63, p. 511–524.

Raible, S., 2000. L\'evy Processes in Finance: Theory, Numerics, and Empirical Facts. Ph.D. thesis, University of Freiburg.

See Also

unuran.cont.

Examples

1
2
3
4
5
6
## Create distribution object for variance gamma distribution
distr <- udvg(lambda=2.25, alpha=210.5, beta=-5.14, mu=0.00094)
## Generate generator object; use method PINV (inversion)
gen <- pinvd.new(distr)
## Draw a sample of size 100
x <- ur(gen,100)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.