ChainLadder 0.1.8 released

Over the weekend we released version 0.1.8 of the ChainLadder package for claims reserving on CRAN.

What is claims reserving?

The insurance industry, unlike other industries, does not sell products as such but promises. An insurance policy is a promise by the insurer to the policyholder to pay for future claims for an upfront received premium.

As a result insurers don’t know the upfront cost for their service, but rely on historical data analysis and judgement to predict a sustainable price for their offering. In General Insurance (or Non-Life Insurance, e.g. motor, property and casualty insurance) most policies run for a period of 12 months. However, the claims payment process can take years or even decades. Therefore often not even the delivery date of their product is known to insurers. The money set aside for those future claims payments are called reserves.

Over the years several methods and models have been developed to estimate both the level and variability of reserves for insurance claims, see [1] or [2] for an overview.

In practice the Mack chain-ladder and bootstrap chain-ladder models are used by many actuaries along with stress testing / scenario analysis and expert judgement to estimate ranges of reasonable outcomes, see the surveys of UK actuaries in 2002 [3], and across the Lloyd’s market in 2012 [4].

The ChainLadder package provides various statistical methods and models which are typically used for the estimation of outstanding claims reserves in general insurance. You can get a very brief overview on the package and reserving from my R in Finance lightning talk:

The package vignette [5] gives more details about the various models and methods implemented.

More context and theory is given in the chapter Claims reserving and IBNR of [6], including the log-linear model of [7] and [8] I discussed earlier on my blog.

Claims reserving is an active field of research as can be seen by the programme of the R in Insurance conference.


Version 0.1.8 fixes:
  • BootChainLadder produced warnings for triangles that had static developments when the argument process.distr was set to “od.pois”
  • didn’t work for a data.frame with less than three rows
  • Arguments xlab and ylab were not passed through in plot.triangle when lattice=TRUE


[1] Schmidt, K. D. A bibliography on loss reserving. 2013.

[2] P.D.England and R.J.Verrall. Stochastic claims reserving in general insurance. British Actuarial Journal, 8:443–544, 2002.

[3] Graham Lyons, Will Forster, Paul Kedney, Ryan Warren, and Helen Wilkinson. Claims Reserving Working Party paper. Institute of Actuaries, October 2002.

[4] Orr, J. GIROC Reserving Research Workstream. Institute of Actuaries, London. 2012.

[5] Markus Gesmann, Daniel Murphy, Wayne Zhang (2014). ChainLadder: Statistical methods for the calculation of outstanding claims reserves in general insurance. R package version 0.1.8. 2014.

[6] Markus Gesmann. Claim Reserving and IBNR in Computational Actuarial Science with R. Edited by Arthur Charpentier. Chapman & Hall/CRC. The R Series. 2014.

[7] Stavros Christofides. Regression models based on log-incremental payments. Claims Reserving Manual. Volume 2 D5. September 1997

[8] Glen Barnett and Ben Zehnwirth. Best estimates for reserves. Proceedings of the CAS, LXXXVII(167), November 2000.


For attribution, please cite this work as:

Markus Gesmann (Aug 26, 2014) ChainLadder 0.1.8 released. Retrieved from

BibTeX citation:

@misc{ 2014-chainladder-0.1.8-released,
 author = { Markus Gesmann },
 title = { ChainLadder 0.1.8 released },
 url = { },
 year = { 2014 }
 updated = { Aug 26, 2014 }