Pareto_ML_Estimator_Alpha function

Maximum Likelihood Estimation of the Alpha of a Pareto distribution

Maximum Likelihood Estimation of the Alpha of a Pareto distribution

Calculates the maximum likelihood estimator for the parameter alpha of a Pareto distribution with a known threshold and (if applicable) a known truncation

Pareto_ML_Estimator_Alpha( losses, t, truncation = NULL, reporting_thresholds = NULL, is.censored = NULL, weights = NULL, alpha_min = 0.001, alpha_max = 10 )

Arguments

  • losses: Numeric vector. Losses that are used for the ML estimation.
  • t: Numeric. Threshold of the Pareto distribution.
  • truncation: Numeric. If truncation is not NULL, then the Pareto distribution is truncated at truncation.
  • reporting_thresholds: Numeric vector. Allows to enter loss specific reporting thresholds. If NULL then all reporting thresholds are assumed to be less than or equal to t.
  • is.censored: Logical vector. TRUE indicates that a loss has been censored by the policy limit. The assumption is that the uncensored losses are Pareto distributed with the alpha we are looking for. is.censored = NULL means that no losses are censored.
  • weights: Numeric vector. Weights for the losses. For instance weights[i] = 2 and weights[j] = 1 for j != i has the same effect as adding another loss of size loss[i].
  • alpha_min: Numeric. Lower bound for alpha (only used in truncated case).
  • alpha_max: Numeric. Upper bound for alpha (only used in truncated case).

Returns

Maximum likelihood estimator for the parameter alpha of a Pareto distribution with threshold t given the observations losses

Examples

losses <- rPareto(100, 1000, 2) Pareto_ML_Estimator_Alpha(losses, 1000) losses <- rPareto(100, 1000, 2, truncation = 2000) Pareto_ML_Estimator_Alpha(losses, 1000) Pareto_ML_Estimator_Alpha(losses, 1000, truncation = 2000) t <- 100 alpha <- 2 losses <- rPareto(10000, t, alpha) reporting_thresholds <- rPareto(10000, t, 5) index <- losses > reporting_thresholds losses <- losses[index] reporting_thresholds <- reporting_thresholds[index] Pareto_ML_Estimator_Alpha(losses, t) Pareto_ML_Estimator_Alpha(losses, t, reporting_thresholds = reporting_thresholds) losses <- rPareto(10, 1000, 2) w <- rep(1, 10) w[1] <- 3 losses2 <- c(losses, losses[1], losses[1]) Pareto_ML_Estimator_Alpha(losses, 1000, weights = w) Pareto_ML_Estimator_Alpha(losses2, 1000)