| MackChainLadder {ChainLadder} | R Documentation |
Mack-chain-ladder model to forecast IBNR claims based on a cumulative claims triangle.
MackChainLadder(Triangle, weights = 1/Triangle) ## S3 method for class 'MackChainLadder': print(x, ...) ## S3 method for class 'MackChainLadder': plot(x, mfrow=c(3,2), title=NULL, ...) ## S3 method for class 'MackChainLadder': summary(object, ...)
Triangle |
a cumulative claims triangle. A quadratic (nxn)-matrix C_{ik} which is filled for k <=q n+1-i, i=1,...,n |
weights |
weights. Default: 1/Triangle |
x, object |
an object of class "MackChainLadder" |
mfrow |
see par |
title |
see title |
... |
not in use |
Let C_{ik} denote the cumulative loss amounts of origin year i=1,...,n, with losses know for development year k <=q n+1-i. In order to forecast the amounts C_{ik} for k > n+1-i the Mack chain-ladder-model assumes:
E[ frac{C_{i,k+1}}{C_{ik}} | C_{i1},C_{i2},...,C_{ik} ] = f_k
Var( frac{C_{i,k+1}}{C_{ik}} | C_{i1},C_{i2},...,C_{ik} ) = frac{σ_k^2}{C_{ik}}
{ C_{i1},...,C_{in}}, { C_{j1},...,C_{jn}},; are; independent; for; origin; year; i neq j
If these assumptions are hold, the Mack chain-ladder-model gives an unbiased estimator for IBNR (Incurred But Not Reported) claims.
The chain-ladder model can be regarded as weighted linear regression through the
origin for each development year: lm(y ~ x + 0, weights=1/x),
where y is the vector of claims at development year k+1 and x is
the vector of claims at development year k.
A tail factor is not yet implemented.
Triangle |
input triangle of cumulative claims |
FullTriangle |
forecasted full triangle |
Models |
linear regression models for each development year |
f |
chain-ladder ratios |
f.se |
standard error for chain-ladder ratios |
F.se |
standard error for individual age-to-age ratios |
sigma |
chain-ladder ratio variance |
Mack.S.E |
Mack's estimated standard error for the reserves |
Total.Mack.S.E |
Mack's estimated overall standard error for the reserves |
Markus Gesmann markus.gesmann@web.de
Thomas Mack. Distribution-free calculation of the standard error of chain ladder reserve estimates. Astin Bulletin. Vol. 23. No 2. 1993. pp.213:225 http://www.casact.org/library/astin/vol23no2/213.pdf
Thomas Mack. The standard error of chain ladder reserve estimates: Recursive calculation and inclusion of a tail factor. Astin Bulletin. Vol. 29. No 2. 1999. pp.361:366 http://www.casact.org/library/astin/vol29no2/361.pdf
See also MunichChainLadder, residuals.MackChainLadder
data(Mortgage)
Mortgage
MRT <- MackChainLadder(Mortgage)
MRT
plot(MRT) # We observe trends along calendar years.
data(GenIns)
GenIns
GNI <- MackChainLadder(GenIns)
GNI
plot(GNI)
data(RAA)
RAA
MCL <- MackChainLadder(RAA)
MCL
plot(MCL)
# investigate in more detail
MCL[["Models"]][[1]] # Model for first development period
summary( MCL[["Models"]][[1]]) # Look at the model stats
op=par(mfrow=c(2,2)) # plot residuals
plot( MCL[["Models"]][[1]])
par(op)
# let's include an intercept in our model
newModel <- update(MCL[["Models"]][[1]], y ~ x+1,
weights=1/MCL[["Triangle"]][1:9,1],
data=data.frame(x=MCL[["Triangle"]][1:9,1],
y=MCL[["Triangle"]][1:9,2])
)
# view the new model
summary(newModel)
op=par(mfrow=c(2,2))
plot( newModel )
par(op)
# change the model for dev. period one to the newModel
MCL2 <- MCL
MCL2[["Models"]][[1]] <- newModel
predict(MCL2) # predict the full triangle with the new model
#(only the last origin year will be affected)
MCL2[["FullTriangle"]] <- predict(MCL2)
MCL2[["FullTriangle"]]
MCL2 # Std. Errors have not been re-estimated!
# plot the result
plot(MCL2, title="Change MCL Model")