# udvg: UNU.RAN object for Variance Gamma distribution In Runuran: R Interface to the UNU.RAN Random Variate Generators

## 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 [email protected].

## 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.

`unuran.cont`.
 ```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) ```