This function calculates the (modified) profile likelihood based on the \(p^*\) formula. There are two small-sample corrections that use a proxy for \(\ell_{\lambda; \hat{\lambda}}\), which are based on Severini's (1999) empirical covariance and the Fraser and Reid tangent exponential model approximation.
Usage
gpd.pll(
psi,
param = c("scale", "shape", "quant", "VaR", "ES", "Nmean", "Nquant"),
mod = "profile",
mle = NULL,
dat,
m = NULL,
N = NULL,
p = NULL,
q = NULL,
correction = TRUE,
threshold = NULL,
plot = TRUE,
...
)
Arguments
- psi
parameter vector over which to profile (unidimensional)
- param
string indicating the parameter to profile over
- mod
string indicating the model. See Details.
- mle
maximum likelihood estimate in \((\psi, \xi)\) parametrization if \(\psi \neq \xi\) and \((\sigma, \xi)\) otherwise (optional).
- dat
sample vector of excesses, unless
threshold
is provided (in which case user provides original data)- m
number of observations of interest for return levels. Required only for
args
values'VaR'
or'ES'
- N
size of block over which to take maxima. Required only for
args
Nmean
andNquant
.- p
tail probability, equivalent to \(1/m\). Required only for
args
quant
.- q
level of quantile for N-block maxima. Required only for
args
Nquant
.- correction
logical indicating whether to use
spline.corr
to smooth the tem approximation.- threshold
numerical threshold above which to fit the generalized Pareto distribution
- plot
logical; should the profile likelihood be displayed? Default to
TRUE
- ...
additional arguments such as output from call to
Vfun
ifmode='tem'
.
Value
a list with components
mle
: maximum likelihood estimatepsi.max
: maximum profile likelihood estimateparam
: string indicating the parameter to profile overstd.error
: standard error ofpsi.max
psi
: vector of parameter \(psi\) given inpsi
pll
: values of the profile log likelihood atpsi
maxpll
: value of maximum profile log likelihoodfamily
: a string indicating "gpd"threshold
: value of the threshold, by default zero
In addition, if mod
includes tem
normal
:maximum likelihood estimate and standard error of the interest parameter \(psi\)r
:values of likelihood root corresponding to \(\psi\)q
:vector of likelihood modificationsrstar
:modified likelihood root vectorrstar.old
:uncorrected modified likelihood root vectortem.psimax
:maximum of the tangent exponential model likelihood
In addition, if mod
includes modif
tem.mle
: maximum of tangent exponential modified profile log likelihoodtem.profll
: values of the modified profile log likelihood atpsi
tem.maxpll
: value of maximum modified profile log likelihoodempcov.mle
: maximum of Severini's empirical covariance modified profile log likelihoodempcov.profll
: values of the modified profile log likelihood atpsi
empcov.maxpll
: value of maximum modified profile log likelihood
Details
The three mod
available are profile
(the default), tem
, the tangent exponential model (TEM) approximation and
modif
for the penalized profile likelihood based on \(p^*\) approximation proposed by Severini.
For the latter, the penalization is based on the TEM or an empirical covariance adjustment term.
Examples
if (FALSE) {
dat <- rgp(n = 100, scale = 2, shape = 0.3)
gpd.pll(psi = seq(-0.5, 1, by=0.01), param = 'shape', dat = dat)
gpd.pll(psi = seq(0.1, 5, by=0.1), param = 'scale', dat = dat)
gpd.pll(psi = seq(20, 35, by=0.1), param = 'quant', dat = dat, p = 0.01)
gpd.pll(psi = seq(20, 80, by=0.1), param = 'ES', dat = dat, m = 100)
gpd.pll(psi = seq(15, 100, by=1), param = 'Nmean', N = 100, dat = dat)
gpd.pll(psi = seq(15, 90, by=1), param = 'Nquant', N = 100, dat = dat, q = 0.5)
}