Learn R Programming

ChainLadder (version 0.1.4-2)

ClarkLDF: Clark LDF method

Description

Analyze loss triangle using Clark's LDF (loss development factor) method.

Usage

ClarkLDF(Triangle, cumulative = TRUE, maxage = Inf, 
        adol = TRUE, adol.age = NULL, origin.width = NULL,
        G = "loglogistic")

Arguments

Triangle
A loss triangle in the form of a matrix. The number of columns must be at least four; the number of rows may be as few as 1. The column names of the matrix should be able to be interpreted as the "age" of the losses in that column. The row names of t
cumulative
If TRUE (the default), values in Triangle are inception to date. If FALSE, Triangle holds incremental losses.
maxage
The "ultimate" age to which losses should be projected.
adol
If TRUE (the default), the growth function should be applied to the length of time from the average date of loss ("adol") of losses in the origin year. If FALSE, the growth function should be applied to the length of time sin
adol.age
Only pertinent if adol is TRUE. The age of the average date of losses within an origin period in the same units as the "ages" of the Triangle matrix. If NULL (the default) it will be assumed to be hal
origin.width
Only pertinent if adol is TRUE. The width of an origin period in the same units as the "ages" of the Triangle matrix. If NULL (the default) it will be assumed to be the mean difference in the "ages"
G
A character scalar identifying the "growth function." The two growth functions defined at this time are "loglogistic" (the default) and "weibull".

Value

  • A list of class "clark" with the following components:
  • method"LDF"
  • growthFunctionname of the growth function
  • Table65the table of losses, standard errors and CVs as shown on p. 65 of the paper
  • Table64the table of ages, growth function values, LDFs, truncated LDFs, "ultimate" losses, and "reserves" as shown on p. 64 of the paper
  • parthe estimated parameters
  • sigma2the sigma-squared "scale parameter"
  • LDFthe "to-ultimate" loss development factor (sometimes called the "cumulative development factor") as defined in Clark's paper
  • dRthe gradient of the reserves function evaluated at the parameter solution point
  • originrownames(Triangle) from the "long format" of Triangle
  • agecolnames(Triangle) from the "long format" of Triangle
  • fittedthe expected values (the "mu's") of the incremental losses
  • residualsthe difference between the actual and fitted values
  • stdresidthe standardized residuals = residuals/sqrt(sigma2*fitted) (referred to as "normalized residuals" in the paper; see p. 62)
  • FIthe "Fisher Information" matrix as defined in Clark's paper (i.e., without the sigma^2 value)
  • valuethe value of the loglikelihood function at the solution
  • countsthe number of calls to the loglikelihood function and its gradient function to achieve numerical convergence

Details

Clark's "LDF method" assumes that the incremental losses across development periods in a loss triangle are independent. He assumes that the expected value of an incremental loss is equal to the theoretical expected ultimate loss (U) (by origin year) times the change in the theoretical underlying growth function over the development period. Clark models the growth function, also called the percent of ultimate, by either the loglogistic function (a.k.a., "the inverse power curve") or the weibull function. Clark completes his incremental loss model by wrapping the expected values within an overdispersed poisson (ODP) process where the "scale factor" sigma^2 is assumed to be a known constant for all development periods. The parameters of Clark's "LDF method" are therefore: U, and omega and theta (the parameters of the loglogistic and weibull growth functions). Finally, Clark uses maximum likelihood to parameterize his model, uses the ODP process to estimate process risk, and uses the Cramer-Rao theorem and the "delta method" to estimate parameter risk. Clark recommends inspecting the residuals to help assess the reasonableness of the model relative to the actual data (see plot.clark below).

References

Clark, David R., "LDF Curve-Fitting and Stochastic Reserving: A Maximum Likelihood Approach", Casualty Actuarial Society Forum, Fall, 2003 http://www.casact.org/pubs/forum/03fforum/03ff041.pdf

See Also

ClarkCapeCod

Examples

Run this code
X <- GenIns
ClarkLDF(X, maxage=20)

# Clark's "LDF method" also works with triangles that have  
# more development periods than origin periods
ClarkLDF(qincurred, G="loglogistic")

# Method also works for a "triangle" with only one row:
# 1st row of GenIns; need "drop=FALSE" to avoid becoming a vector.
ClarkLDF(GenIns[1, , drop=FALSE], maxage=20)

# The age of the first evaluation may be prior to the end of the origin period.
# Here the ages are in units of "months" and the first evaluation 
# is at the end of the third quarter.
X <- GenIns
colnames(X) <- 12 * as.numeric(colnames(X)) - 3
# The indicated liability increases from 1st example above, 
# but not significantly.
ClarkLDF(X, maxage=240)
# When maxage is infinite, the phase shift has a more noticeable impact:
# a 4-5% increase of the overall CV.
x <- ClarkLDF(GenIns, maxage=Inf)
y <- ClarkLDF(X, maxage=Inf)
# Percent change in the bottom line CV:
(tail(y$Table65$TotalCV, 1) - tail(x$Table65$TotalCV, 1)) / tail(x$Table65$TotalCV, 1)

Run the code above in your browser using DataLab