Learn R Programming

GeneralizedHyperbolic (version 0.8-4)

ghypMom: Calculate Moments of the Generalized Hyperbolic Distribution

Description

Function to calculate raw moments, mu moments, central moments and moments about any other given location for the generalized hyperbolic distribution.

Usage

ghypMom(order, mu = 0, delta = 1, alpha = 1, beta = 0, lambda = 1,
        param = c(mu, delta, alpha, beta, lambda),
        momType = c("raw", "central", "mu"), about = 0)

Arguments

order

Numeric. The order of the moment to be calculated. Not permitted to be a vector. Must be a positive whole number except for moments about zero.

mu

\(\mu\) is the location parameter. By default this is set to 0.

delta

\(\delta\) is the scale parameter of the distribution. A default value of 1 has been set.

alpha

\(\alpha\) is the tail parameter, with a default value of 1.

beta

\(\beta\) is the skewness parameter, by default this is 0.

lambda

\(\lambda\) is the shape parameter and dictates the shape that the distribution shall take. Default value is 1.

param

Numeric. The parameter vector specifying the generalized hyperbolic distribution. Of the form c(mu, delta, alpha, beta, lambda) (see dghyp).

momType

Common types of moments to be calculated, default is "raw". See Details.

about

Numeric. The point around which the moment is to be calculated.

Value

The moment specified.

Details

Checking whether order is a whole number is carried out using the function is.wholenumber.

momType can be either "raw" (moments about zero), "mu" (moments about mu), or "central" (moments about mean). If one of these moment types is specified, then there is no need to specify the about value. For moments about any other location, the about value must be specified. In the case that both momType and about are specified and contradicting, the function will always calculate the moments based on about rather than momType.

To calculate moments of the generalized hyperbolic distribution, the function firstly calculates mu moments by formula defined below and then transforms mu moments to central moments or raw moments or moments about any other locations as required by calling momChangeAbout.

The mu moments are obtained from the recursion formula given in Scott, W<U+32D3AF7B>Wuertz

References

Scott, D. J., W<U+32D3AF7B>Wuertz Moments of the generalized hyperbolic distribution. Comp. Statistics., 26, 459--476.

See Also

ghypChangePars and from package DistributionUtils: logHist, is.wholenumber, momChangeAbout, and momIntegrated.

Further, ghypMean, ghypVar, ghypSkew, ghypKurt.

Examples

Run this code
# NOT RUN {
param <- c(1, 2, 2, 1, 2)
mu <- param[1]
### mu moments
m1 <- ghypMean(param = param)
m1 - mu
ghypMom(1, param = param, momType = "mu")

## Comparison, using momIntegrated from pkg 'DistributionUtils':
momIntegrated <- DistributionUtils :: momIntegrated

momIntegrated("ghyp", order = 1, param = param, about = mu)
ghypMom(2, param = param, momType = "mu")
momIntegrated("ghyp", order = 2, param = param, about = mu)
ghypMom(10, param = param, momType = "mu")
momIntegrated("ghyp", order = 10, param = param, about = mu)

### raw moments
ghypMean(param = param)
ghypMom(1, param = param, momType = "raw")
momIntegrated("ghyp", order = 1, param = param, about = 0)
ghypMom(2, param = param, momType = "raw")
momIntegrated("ghyp", order = 2, param = param, about = 0)
ghypMom(10, param = param, momType = "raw")
momIntegrated("ghyp", order = 10, param = param, about = 0)

### central moments
ghypMom(1, param = param, momType = "central")
momIntegrated("ghyp", order = 1, param = param, about = m1)
ghypVar(param = param)
ghypMom(2, param = param, momType = "central")
momIntegrated("ghyp", order = 2, param = param, about = m1)
ghypMom(10, param = param, momType = "central")
momIntegrated("ghyp", order = 10, param = param, about = m1)
# }

Run the code above in your browser using DataLab