# GevModelling: Generalized Extreme Value Modelling In fExtremes: Rmetrics - Modelling Extreme Events in Finance

## Description

A collection and description functions to estimate the parameters of the GEV distribution. To model the GEV three types of approaches for parameter estimation are provided: Maximum likelihood estimation, probability weighted moment method, and estimation by the MDA approach. MDA includes functions for the Pickands, Einmal-Decker-deHaan, and Hill estimators together with several plot variants.

The GEV modelling functions are:

 `gevSim` generates data from the GEV distribution, `gumbelSim` generates data from the Gumbel distribution, `gevFit` fits data to the GEV distribution, `gumbelFit` fits data to the Gumbel distribution, `print` print method for a fitted GEV object, `plot` plot method for a fitted GEV object, `summary` summary method for a fitted GEV object, `gevrlevelPlot` k-block return level with confidence intervals.

## Usage

 ``` 1 2 3 4 5 6 7 8 9 10 11 12``` ```gevSim(model = list(xi = -0.25, mu = 0, beta = 1), n = 1000, seed = NULL) gumbelSim(model = list(mu = 0, beta = 1), n = 1000, seed = NULL) gevFit(x, block = 1, type = c("mle", "pwm"), title = NULL, description = NULL, ...) gumbelFit(x, block = 1, type = c("mle", "pwm"), title = NULL, description = NULL, ...) ## S4 method for signature 'fGEVFIT' show(object) ## S3 method for class 'fGEVFIT' plot(x, which = "ask", ...) ## S3 method for class 'fGEVFIT' summary(object, doplot = TRUE, which = "all", ...) ```

## Arguments

 `block` block size. `description` a character string which allows for a brief description. `doplot` a logical. Should the results be plotted? [shaparmPlot] - a vector of logicals of the same lengths as tails defining for wich tail depths plots should be created, by default plots will be generated for a tail depth of 5 percent. By default ```c(FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE)```. `model` [gevSim][gumbelSim] - a list with components `shape`, `location` and `scale` giving the parameters of the GEV distribution. By default the shape parameter has the value -0.25, the location is zero and the scale is one. To fit random deviates from a Gumbel distribution set `shape=0`. `n` [gevSim][gumbelSim] - number of generated data points, an integer value. [rgev] - the number of observations. `object` [summary][grlevelPlot] - a fitted object of class `"gevFit"`. `seed` [gevSim] - an integer value to set the seed for the random number generator. `title` [gevFit] - a character string which allows for a project title. `type` a character string denoting the type of parameter estimation, either by maximum likelihood estimation `"mle"`, the default value, or by the probability weighted moment menthod `"pwm"`. `which` [plot][summary] - a vector of logicals, one for each plot, denoting which plot should be displayed. Alkternatively if `which="ask"` the user will be interactively asked which of the plots should be desplayed. By default `which="all"`. `x` [dgev][devd] - a numeric vector of quantiles. [gevFit] - data vector. In the case of `method="mle"` the interpretation depends on the value of block: if no block size is specified then data are interpreted as block maxima; if block size is set, then data are interpreted as raw data and block maxima are calculated. [hillPlot][shaparmPlot] - the data from which to calculate the shape parameter, a numeric vector. [print][plot] - a fitted object of class `"gevFit"`. `xi, mu, beta` [*gev] - `xi` is the shape parameter, `mu` the location parameter, and `sigma` is the scale parameter. The default values are `xi=1`, `mu=0`, and `beta=1`. Note, if `xi=0` the distribution is of type Gumbel. `...` [gevFit] - control parameters optionally passed to the optimization function. Parameters for the optimization function are passed to components of the `control` argument of `optim`. [hillPlot] - other graphics parameters. [plot][summary] - arguments passed to the plot function.

## Details

Parameter Estimation:

`gevFit` and `gumbelFit` estimate the parameters either by the probability weighted moment method, `method="pwm"` or by maximum log likelihood estimation `method="mle"`. The summary method produces diagnostic plots for fitted GEV or Gumbel models.

Methods:

`print.gev`, `plot.gev` and `summary.gev` are print, plot, and summary methods for a fitted object of class `gev`. Concerning the summary method, the data are converted to unit exponentially distributed residuals under null hypothesis that GEV fits. Two diagnostics for iid exponential data are offered. The plot method provides two different residual plots for assessing the fitted GEV model. Two diagnostics for iid exponential data are offered.

Return Level Plot:

`gevrlevelPlot` calculates and plots the k-block return level and 95% confidence interval based on a GEV model for block maxima, where `k` is specified by the user. The k-block return level is that level exceeded once every `k` blocks, on average. The GEV likelihood is reparameterized in terms of the unknown return level and profile likelihood arguments are used to construct a confidence interval.

Hill Plot:

The function `hillPlot` investigates the shape parameter and plots the Hill estimate of the tail index of heavy-tailed data, or of an associated quantile estimate. This plot is usually calculated from the alpha perspective. For a generalized Pareto analysis of heavy-tailed data using the `gpdFit` function, it helps to plot the Hill estimates for `xi`.

Shape Parameter Plot:

The function `shaparmPlot` investigates the shape parameter and plots for the upper and lower tails the shape parameter as a function of the taildepth. Three approaches are considered, the Pickands estimator, the Hill estimator, and the Decker-Einmal-deHaan estimator.

## Value

`gevSim`
returns a vector of data points from the simulated series.

`gevFit`
returns an object of class `gev` describing the fit.

`print.summary`
prints a report of the parameter fit.

`summary`
performs diagnostic analysis. The method provides two different residual plots for assessing the fitted GEV model.

`gevrlevelPlot`
returns a vector containing the lower 95% bound of the confidence interval, the estimated return level and the upper 95% bound.

`hillPlot`
displays a plot.

`shaparmPlot`
returns a list with one or two entries, depending on the selection of the input variable `both.tails`. The two entries `upper` and `lower` determine the position of the tail. Each of the two variables is again a list with entries `pickands`, `hill`, and `dehaan`. If one of the three methods will be discarded the printout will display zeroes.

## Note

GEV Parameter Estimation:

If method `"mle"` is selected the parameter fitting in `gevFit` is passed to the internal function `gev.mle` or `gumbel.mle` depending on the value of `gumbel`, `FALSE` or `TRUE`. On the other hand, if method `"pwm"` is selected the parameter fitting in `gevFit` is passed to the internal function `gev.pwm` or `gumbel.pwm` again depending on the value of `gumbel`, `FALSE` or `TRUE`.

## Author(s)

Alec Stephenson for R's `evd` and `evir` package, and
Diethelm Wuertz for this R-port.

## References

Coles S. (2001); Introduction to Statistical Modelling of Extreme Values, Springer.

Embrechts, P., Klueppelberg, C., Mikosch, T. (1997); Modelling Extremal Events, Springer.

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18``` ```## gevSim - # Simulate GEV Data, use default length n=1000 x = gevSim(model = list(xi = 0.25, mu = 0 , beta = 1), n = 1000) head(x) ## gumbelSim - # Simulate GEV Data, use default length n=1000 x = gumbelSim(model = list(xi = 0.25, mu = 0 , beta = 1)) ## gevFit - # Fit GEV Data by Probability Weighted Moments: fit = gevFit(x, type = "pwm") print(fit) ## summary - # Summarize Results: par(mfcol = c(2, 2)) summary(fit) ```

fExtremes documentation built on Nov. 18, 2017, 4:10 a.m.