Learn R Programming

VaRES (version 1.0.2)

halfT: Half Student's t distribution

Description

Computes the pdf, cdf, value at risk and expected shortfall for the half Student's \(t\) distribution given by $$\begin{array}{ll} &\displaystyle f (x) = \frac {2 \Gamma \left( \frac {n + 1}{2} \right)}{\sqrt{n \pi} \Gamma \left( \frac {n}{2} \right)} \left( 1 + \frac {x^2}{n} \right)^{-\frac {n + 1}{2}}, \\ &\displaystyle F (x) = I_{\frac {x^2}{x^2 + n}} \left( \frac {1}{2}, \frac {n}{2} \right), \\ &\displaystyle {\rm VaR}_p (X) = \sqrt{\frac {n I_p^{-1} \left( \frac {1}{2}, \frac {n}{2} \right)} {1 - I_p^{-1} \left( \frac {1}{2}, \frac {n}{2} \right)}}, \\ &\displaystyle {\rm ES}_p (X) = \frac {\sqrt{n}}{p} \int_0^p \sqrt{\frac {I_v^{-1} \left( \frac {1}{2}, \frac {n}{2} \right)} {1 - I_v^{-1} \left( \frac {1}{2}, \frac {n}{2} \right)}} dv \end{array}$$ for \(-\infty < x < \infty\), \(0 < p < 1\), and \(n > 0\), the degree of freedom parameter.

Usage

dhalfT(x, n=1, log=FALSE)
phalfT(x, n=1, log.p=FALSE, lower.tail=TRUE)
varhalfT(p, n=1, log.p=FALSE, lower.tail=TRUE)
eshalfT(p, n=1)

Value

An object of the same length as x, giving the pdf or cdf values computed at x or an object of the same length as p, giving the values at risk or expected shortfall computed at p.

Arguments

x

scaler or vector of values at which the pdf or cdf needs to be computed

p

scaler or vector of values at which the value at risk or expected shortfall needs to be computed

n

the value of the degree of freedom parameter, must be positive, the default is 1

log

if TRUE then log(pdf) are returned

log.p

if TRUE then log(cdf) are returned and quantiles are computed for exp(p)

lower.tail

if FALSE then 1-cdf are returned and quantiles are computed for 1-p

Author

Saralees Nadarajah

References

Stephen Chan, Saralees Nadarajah & Emmanuel Afuecheta (2016). An R Package for Value at Risk and Expected Shortfall, Communications in Statistics - Simulation and Computation, 45:9, 3416-3434, tools:::Rd_expr_doi("10.1080/03610918.2014.944658")

Examples

Run this code
x=runif(10,min=0,max=1)
dhalfT(x)
phalfT(x)
varhalfT(x)
eshalfT(x)

Run the code above in your browser using DataLab