Concept

Stochastic Reserving: Mack, ODP, and Bootstrap

Deterministic chain ladder gives a point estimate of unpaid claims. Mack's method adds a distribution-free standard error decomposed into process and parameter variance. The over-dispersed Poisson GLM recasts the same triangle as a likelihood model whose MLE reproduces the chain-ladder ultimate, and the residual bootstrap on the GLM gives a full predictive distribution for the reserve. Together they are the standard stochastic-reserving toolkit on ASTAM, GI-301, CFE-101, and CERA.

Page Contract
Role
Concept
Level
Advanced
Time
Reference
Freshness
Stable
Search Intent
stochastic reserving Mack ODP bootstrap

Plain-English Definition

Deterministic chain ladder produces a single best estimate of unpaid claims. It does not say how wrong that estimate could be. Stochastic reserving turns the same loss triangle into a distribution by adding either an explicit error model (Mack 1993), a likelihood model (over-dispersed Poisson GLM), or a resampling-based predictive distribution (bootstrap of the GLM).

The three methods complement each other. Mack is distribution-free and gives an analytic standard error from a short list of assumptions. The ODP GLM matches the chain-ladder point estimate but exposes the model as a parametric likelihood that can be fit with standard regression machinery. Bootstrap then resamples GLM residuals to produce a predictive distribution for the reserve that includes process error in the unobserved cells.

Regulators and rating agencies now expect a stated reserve range or distribution, not just a midpoint. Mack supplies the mean and standard error per accident year and in total. ODP-bootstrap supplies quantiles for risk-margin and capital work. The two are usually reported together because each guards against weaknesses in the other.

Loss-Triangle Notation

Index accident year by i = 1, ..., I and development year by k = 1, ..., I. The cumulative paid or incurred claim at development year k for accident year i is C_{i,k}, observed for i + k - 1 ≤ I. The unobserved cells with i + k - 1 > I are what reserving must project.

The age-to-age development factor f_k is the ratio of cumulative claims at maturity k+1 to maturity k. The chain-ladder estimator weights this ratio by the prior cumulative claim across the accident years for which both cells are observed.

The per-link variance parameter sigma_k^2 enters Mack's model as a positive constant tying conditional variance to the prior cumulative cell. It is estimated from squared deviations of the per-row link ratios from the pooled estimate.

Cumulative-claim notation
Ci,k for accident year i, development year k,i+k1IC_{i,k} \text{ for accident year } i, \text{ development year } k, \quad i+k-1 \le I
Chain-ladder development factor
f^k=i=1IkCi,k+1i=1IkCi,k\widehat f_k = \frac{\sum_{i=1}^{I-k} C_{i,k+1}}{\sum_{i=1}^{I-k} C_{i,k}}
Reserve and ultimate
R^i=C^i,ICi,Ii+1,C^i,I=Ci,Ii+1j=Ii+1I1f^j\widehat R_i = \widehat C_{i,I} - C_{i,I-i+1}, \quad \widehat C_{i,I} = C_{i,I-i+1} \prod_{j=I-i+1}^{I-1} \widehat f_j

Mack's Three Assumptions

Mack (1993) showed that the chain-ladder factors are the best linear estimators of the conditional mean of the next-development cell under three explicit assumptions, with no distributional specification beyond the first two moments.

Assumption M1 (mean linearity): the conditional expectation of C_{i,k+1} given the past history of accident year i scales linearly with C_{i,k}, with proportionality constant f_k common across accident years.

Assumption M2 (conditional variance proportional to the prior cumulative): the conditional variance of C_{i,k+1} given history scales with C_{i,k}, with proportionality constant sigma_k^2 common across accident years.

Assumption M3 (independence across accident years): different accident years are independent. Calendar-year inflation shocks and aggregated catastrophe years violate M3 and are a common cause of model misfit on real triangles.

M1 mean assumption
E[Ci,k+1Ci,1,,Ci,k]=fkCi,kE[C_{i,k+1} \mid C_{i,1}, \dots, C_{i,k}] = f_k\, C_{i,k}
M2 variance assumption
Var(Ci,k+1Ci,1,,Ci,k)=σk2Ci,k\operatorname{Var}(C_{i,k+1} \mid C_{i,1}, \dots, C_{i,k}) = \sigma_k^2\, C_{i,k}
Per-link variance estimator
σ^k2=1Ik1i=1IkCi,k(Ci,k+1Ci,kf^k)2\widehat\sigma_k^2 = \frac{1}{I-k-1} \sum_{i=1}^{I-k} C_{i,k}\Bigl(\frac{C_{i,k+1}}{C_{i,k}} - \widehat f_k\Bigr)^2

Mack's Standard Error for the Reserve

Mack's main result decomposes the conditional mean squared error of the reserve estimator into process variance (irreducible randomness in unobserved cells) and parameter variance (uncertainty in the estimated f_k and sigma_k^2). The two pieces add because they capture independent sources of error.

For accident year i, the conditional MSE has a closed form in the development factors and per-link variances. Aggregating across accident years requires covariance terms because the same f_k estimates feed every projection, so the total reserve MSE is not simply the sum of per-year MSEs.

The formula is purely arithmetic once the triangle and the sigma_k^2 estimates are in hand. There is no Newton step, no MCMC, and no random draws. That makes Mack the cheapest stochastic-reserving tool to run and the easiest to audit, which is why regulators continue to use it as a baseline check.

Mack MSE for accident year i
MSE(R^i)=C^i,I2k=Ii+1I1σ^k2/f^k21(1C^i,k+1j=1IkCj,k)\operatorname{MSE}(\widehat R_i) = \widehat C_{i,I}^{\,2} \sum_{k=I-i+1}^{I-1} \frac{\widehat\sigma_k^2/\widehat f_k^{\,2}}{1} \Bigl(\frac{1}{\widehat C_{i,k}} + \frac{1}{\sum_{j=1}^{I-k} C_{j,k}}\Bigr)
Total reserve MSE
MSE(R^)=i=2IMSE(R^i)+2i<iC^i,IC^i,Ik=Ii+1I1σ^k2/f^k2j=1IkCj,k\operatorname{MSE}(\widehat R) = \sum_{i=2}^{I} \operatorname{MSE}(\widehat R_i) + 2 \sum_{i<i'} \widehat C_{i,I} \widehat C_{i',I} \sum_{k=I-i+1}^{I-1} \frac{\widehat\sigma_k^2/\widehat f_k^{\,2}}{\sum_{j=1}^{I-k} C_{j,k}}
Standard error of the reserve
SE(R^)=MSE(R^)\operatorname{SE}(\widehat R) = \sqrt{\operatorname{MSE}(\widehat R)}

The Over-Dispersed Poisson GLM

The over-dispersed Poisson (ODP) GLM is the parametric counterpart to the chain ladder. Let X_{i,k} be the incremental claim from development year k-1 to k for accident year i. Assume X_{i,k} has mean a_i b_k and variance phi a_i b_k, where phi is an over-dispersion parameter.

The multiplicative mean structure is exactly what the chain ladder estimates implicitly. The added piece is the variance proportional to the mean, which gives a likelihood and therefore a basis for confidence intervals, Wald tests, and bootstrap. ODP differs from a Poisson GLM only by the inclusion of phi; phi > 1 is the usual case for property-casualty triangles.

Estimation uses iteratively reweighted least squares with a log link and Poisson likelihood, treated under quasi-likelihood so phi is estimated from the Pearson chi-square statistic after the fit. England and Verrall (2002) showed that the ODP MLE for a_i b_k reproduces the chain-ladder ultimate, which is why the same point estimate emerges from both methods.

ODP incremental claim model
Xi,kODP,E[Xi,k]=aibk,Var(Xi,k)=ϕaibkX_{i,k} \sim \operatorname{ODP}, \quad E[X_{i,k}] = a_i b_k, \quad \operatorname{Var}(X_{i,k}) = \phi\, a_i b_k
GLM mean (log link)
logE[Xi,k]=αi+βk,αi=logai,  βk=logbk\log E[X_{i,k}] = \alpha_i + \beta_k, \quad \alpha_i = \log a_i, \; \beta_k = \log b_k
Dispersion estimate
ϕ^=1npi,k(Xi,kμ^i,k)2μ^i,k\widehat\phi = \frac{1}{n - p} \sum_{i,k} \frac{(X_{i,k} - \widehat\mu_{i,k})^2}{\widehat\mu_{i,k}}

Bootstrap Distribution for Reserve Uncertainty

The ODP GLM gives a point estimate for the reserve and a parametric standard error from the Fisher information, but those errors do not include process variance in the unobserved cells. Bootstrap closes the gap by generating B pseudo-triangles, refitting on each, projecting the reserve, and reporting the empirical distribution.

The standard recipe (England and Verrall 2002) is the residual bootstrap. Compute Pearson residuals at the fitted means. For each bootstrap replicate, resample residuals with replacement across all observed cells, reattach them to the fitted mean to form a pseudo-triangle, and refit the GLM. The refitted a_i and b_k feed a forward projection.

Process error is added in the projection step by drawing each unobserved cell from an ODP with mean equal to the bootstrap-refit a_i^* b_k^*, not from the deterministic projection. The result is a predictive distribution for the reserve that captures both parameter uncertainty (refit variation) and process uncertainty (per-cell randomness). Common reporting points are the mean, standard error, 75th, 95th, and 99.5th percentiles for risk-margin and Solvency II work.

Pearson residual
ri,k=Xi,kμ^i,kϕ^μ^i,kr_{i,k} = \frac{X_{i,k} - \widehat\mu_{i,k}}{\sqrt{\widehat\phi\, \widehat\mu_{i,k}}}
Bootstrap pseudo-cell
Xi,k=μ^i,k+ri,kϕ^μ^i,k,ri,k resampled with replacementX_{i,k}^{*} = \widehat\mu_{i,k} + r_{i,k}^{*} \sqrt{\widehat\phi\, \widehat\mu_{i,k}}, \quad r_{i,k}^{*} \text{ resampled with replacement}
Process error on unobserved cells
Yi,kODP(μ^i,k,ϕ^) for i+k1>IY_{i,k}^{*} \sim \operatorname{ODP}(\widehat\mu_{i,k}^{\,*}, \widehat\phi^{\,*}) \text{ for } i+k-1 > I

Worked Example: Three-Year Triangle, Mack Standard Error

Consider a cumulative paid-claim triangle with three accident years and three development years (figures in thousands of dollars). Observed cells: row 1 reads (1000, 1500, 1650); row 2 reads (1100, 1700) with the third cell unobserved; row 3 reads (1200) with the second and third cells unobserved.

Compute the development factors. f_1_hat = (1500 + 1700) / (1000 + 1100) = 3200 / 2100 = 1.5238. f_2_hat = 1650 / 1500 = 1.1000. The reserve uses these factors to project the missing cells.

Compute the ultimates. Row 1 is fully developed: U_1 = 1650. Row 2 projects one step: U_2 = 1700 × 1.1000 = 1870. Row 3 projects two steps: U_3 = 1200 × 1.5238 × 1.1000 = 2011.4. Reserves are R_2 = 170 and R_3 = 811.4, for a total deterministic reserve of 981.4.

Per-link variance for f_1 uses the two row contributions with the I - k - 1 = 1 divisor: sigma_1^2_hat = 1000 × (1.5 - 1.5238)^2 + 1100 × (1.5455 - 1.5238)^2 ≈ 0.567 + 0.518 = 1.085. Per-link variance for f_2 has only one observed link, so Mack's recursion caps it: sigma_2^2_hat = min(sigma_1^4 / sigma_1^2, sigma_1^2) = sigma_1^2 = 1.085 in this degenerate case.

Substituting into the per-year MSE formula gives MSE(R_2) ≈ 1870^2 × (1.085 / 1.1^2) × (1/1700 + 1/1500) ≈ 4.41 × 10^3, so SE(R_2) ≈ 66. The total reserve standard error after including covariance across years lands near 85 to 100 for this triangle, depending on the sigma_2^2 floor chosen.

Worked Example: ODP Bootstrap Quantiles on the Same Triangle

Fit the ODP GLM with log link to the incremental claims X_{1,1} = 1000, X_{1,2} = 500, X_{1,3} = 150, X_{2,1} = 1100, X_{2,2} = 600, X_{3,1} = 1200. The MLE for a_i b_k reproduces the chain-ladder ultimates from the previous example: 1650, 1870, 2011.

Compute Pearson residuals at the fitted means. Estimate phi from the Pearson chi-square statistic divided by residual degrees of freedom. With n = 6 observed cells and p = 5 free mean parameters (after identification), the residual df is 1, which makes phi noisy on a triangle this small; real reserving uses 10x10 triangles where phi stabilizes.

Run B = 10000 bootstrap replicates. In each replicate, resample the six Pearson residuals with replacement, reform a pseudo-triangle, refit a_i and b_k, project the upper triangle deterministically, then sample each unobserved cell from an ODP with the refit mean to include process error. Sum the unobserved cells to a bootstrap reserve.

A typical run on this triangle gives a bootstrap mean reserve near 980, bootstrap standard error near 95, 75th percentile near 1040, 95th percentile near 1140, and 99.5th percentile near 1230. The exact numbers depend on the bootstrap seed and the phi treatment.

Compare to Mack. The bootstrap mean tracks the deterministic point estimate. The bootstrap standard error is consistently larger than Mack's because the bootstrap includes process error in the unobserved cells while Mack reports the conditional MSE of the estimator only. Both numbers belong in a reserving report.

Worked Example: Identifying Calendar-Year Violations

Suppose row 3 reads (1200, 2000) instead of (1200, ?). The implied row-3 link is 2000 / 1200 = 1.667, far above the pooled f_1_hat of 1.524. A residual plot of standardized Pearson residuals against calendar year then shows a positive trend in the most recent diagonal.

Two responses are common. Mack's M3 assumption fails, so the reserve must be re-estimated under a model that allows calendar-year inflation. A calendar-year (or accident-year-by-development-year interaction) covariate can be added inside the ODP GLM as an additional linear-predictor term, with significance tested by the residual deviance.

If the calendar-year effect is real and accepted, the bootstrap should resample residuals within calendar-year strata, not across all cells, so the inflation pattern is preserved. Resampling across cells when calendar-year inflation is present produces too-tight bootstrap intervals and understates capital.

When to Use Each Method

Mack is the right default for a regulatory or audit context where the methodology must be transparent and the inputs auditable. It needs only the triangle, the development factors, and the per-link variances. There is no software dependency and no random draws.

ODP GLM is the right tool when the reserving question wants a likelihood-based confidence interval, a hypothesis test on a model assumption, or a setting in which extra covariates (calendar-year inflation, loss-type mix) belong in the linear predictor. The GLM framework gives a clean way to add and test those covariates.

Bootstrap is the right tool when the report needs a distribution rather than a midpoint and a standard error. Quantile-based risk margins under IFRS 17, Solvency II SCR allocation, and economic-capital allocation all require a predictive distribution.

Use more than one in serious work. A Mack-only report can understate tail uncertainty. An ODP-bootstrap-only report can hide an assumption violation that Mack residual plots would have surfaced. The two views catch different failure modes.

Common Misconceptions

Mack's standard error is the conditional MSE of the estimator given the observed triangle. It is not the same as the marginal variance of the reserve over all future outcomes; the latter must include process variance in the unobserved cells, which Mack's analytic formula does not deliver.

ODP is not Poisson. Poisson regression with phi = 1 dramatically understates dispersion for almost all property-casualty triangles, and the resulting parametric confidence intervals are too narrow. The phi estimate from the Pearson chi-square is the whole point of the over-dispersion correction.

Bootstrap with process error and bootstrap without process error give different distributions. Reporting the wrong one is a common error in capital work, because process error widens the upper tail substantially when the triangle is small.

Residuals on the chain-ladder fit are not white noise in general. Calendar-year trends, large-loss contamination, and reporting-lag changes all show up as patterns in the residuals. A bootstrap that resamples across all cells ignores those patterns at its own risk.

Sigma_k^2 estimation breaks down for the final development link, where only one or zero links are observable. Mack proposes a recursion that caps the final variance at the prior link's variance; ignoring this gives infinite or zero variance and breaks the formula.

Cross-Exam Map

Stochastic reserving crosses the CAS and SOA exam systems and continues into multiple FSA tracks. Recognizing which exam emphasizes which piece saves study time.

  • ASTAM (SOA Spring 2026 onward): Mack standard error, ODP bootstrap, ratemaking-consistent reserve modeling, IFRS 17 risk-margin context.
  • GI-301 (SOA FSA General Insurance track 301): full ODP and bootstrap workflow as part of reserving-pricing integration, plus the connection to Solvency II SCR allocation.
  • CFE-101 (SOA FSA Corporate Finance and ERM track 101): reserve uncertainty as one input to economic-capital and own-risk-and-solvency-assessment exercises.
  • CERA: reserve uncertainty inside the ORSA framework, with the same Mack and bootstrap outputs feeding the qualitative narrative on model risk.
  • CAS Exam 5 and Exam 6 (US and Canada): chain ladder, Bornhuetter-Ferguson, Cape Cod, and exposure-based methods deterministically; Mack and bootstrap appear in advanced CAS practice but not always on the core reserving syllabus.

Textbook Citations and Further Reading

Mack 1993: Thomas Mack, Distribution-Free Calculation of the Standard Error of Chain Ladder Reserve Estimates, ASTIN Bulletin 23(2), pp. 213-225. The original paper, freely available from the IAA ASTIN section archive. The first six pages give the full set of assumptions and the closed-form standard error.

England and Verrall 2002: Peter England and Richard Verrall, Stochastic Claims Reserving in General Insurance, British Actuarial Journal 8(3), pp. 443-518. The canonical reference on ODP GLM and bootstrap. Sections 2 through 5 cover the GLM equivalence and the residual-bootstrap algorithm in detail.

Wuthrich and Merz 2008: Mario Wuthrich and Michael Merz, Stochastic Claims Reserving Methods in Insurance, Wiley. Chapters 3 (Mack) and 7 (bootstrap) are the modern textbook treatment, with worked examples on real triangles.

Klugman, Panjer, and Willmot 2019: Loss Models: From Data to Decisions, 5th edition, Wiley. Chapter 17 covers the chain ladder and the connection to stochastic reserving on the SOA ASTAM syllabus.

References And Official Sources