Learn R Programming

VaRES (version 1.0.2)

quad: Quadratic distribution

Description

Computes the pdf, cdf, value at risk and expected shortfall for the quadratic distribution given by $$\begin{array}{ll} &\displaystyle f(x) = \alpha (x - \beta)^2, \\ &\displaystyle F(x) = \frac {\alpha}{3} \left[ (x - \beta)^3 + (\beta - a)^3 \right], \\ &\displaystyle {\rm VaR}_p (X) = \beta + \left[ \frac {3 p}{\alpha} - (\beta - a)^3 \right]^{1/3}, \\ &\displaystyle {\rm ES}_p (X) = \beta + \frac {\alpha}{4 p} \left\{ \left[ \frac {3 p}{\alpha} - (\beta - a)^3 \right]^{4/3} - (\beta - a)^4 \right\} \end{array}$$ for \(a \leq x \leq b\), \(0 < p < 1\), \(-\infty < a < \infty\) , the first location parameter, and \(-\infty < a < b < \infty\), the second location parameter, where \(\alpha = \frac {12}{(b - a)^3}\) and \(\beta = \frac {a + b}{2}\).

Usage

dquad(x, a=0, b=1, log=FALSE)
pquad(x, a=0, b=1, log.p=FALSE, lower.tail=TRUE)
varquad(p, a=0, b=1, log.p=FALSE, lower.tail=TRUE)
esquad(p, a=0, b=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

a

the value of the first location parameter, can take any real value, the default is zero

b

the value of the second location parameter, can take any real value but must be greater than a, 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)
dquad(x)
pquad(x)
varquad(x)
esquad(x)

Run the code above in your browser using DataLab