Fit_PML_Curve: Fits a Collective Model to a PML Curve

View source: R/Functions.R

Fit_PML_CurveR Documentation

Fits a Collective Model to a PML Curve

Description

Fits a PPP_Model that matches the values of a PML curve

Usage

Fit_PML_Curve(
  return_periods,
  amounts,
  tail_alpha = 2,
  truncation = NULL,
  truncation_type = "lp",
  dispersion = 1
)

Arguments

return_periods

Numeric vector. Vector containing the return periods of the PML curve.

amounts

Numeric vector. Vector containing the loss amounts corresponding to the return periods.

tail_alpha

Numerical. Pareto alpha that is used above the highest amount of the PML curve.

truncation

Numeric. If truncation is not NULL and truncation > max(t), then the distribution is truncated at truncation.

truncation_type

Character. If truncation_type = "wd" then the whole distribution is truncated. If truncation_type = "lp" then a truncated Pareto is used for the last piece.

dispersion

Numerical. Dispersion of the claim count distribution in the resulting PPP_Model.

Value

A PPP_Model object that contains the information about a collective model with a Panjer distributed claim count and a Piecewise Pareto distributed severity. The object contains the following elements:

  • FQ Numerical. Frequency in excess of the lowest threshold of the piecewise Pareto distribution

  • t Numeric vector. Vector containing the thresholds for the piecewise Pareto distribution

  • alpha Numeric vector. Vector containing the Pareto alphas of the piecewise Pareto distribution

  • truncation Numerical. If truncation is not NULL and truncation > max(t), then the distribution is truncated at truncation.

  • truncation_type Character. If truncation_type = "wd" then the whole distribution is truncated. If truncation_type = "lp" then a truncated Pareto is used for the last piece.

  • dispersion Numerical. Dispersion of the Panjer distribution (i.e. variance to mean ratio).

  • Status Numerical indicator: 0 = success, 1 = some information has been ignored, 2 = no solution found

  • Comment Character. Information on whether the fit was successful

Examples

return_periods <- c(1, 5, 10, 20, 50, 100)
amounts <- c(1000, 4000, 7000, 10000, 13000, 14000)

fit <- Fit_PML_Curve(return_periods, amounts)
1 / Excess_Frequency(fit, amounts)

fit <- Fit_PML_Curve(return_periods, amounts, tail_alpha = 1.5,
                     truncation = 20000, truncation_type = "wd")
1 / Excess_Frequency(fit, amounts)


Pareto documentation built on April 18, 2023, 9:10 a.m.