Skip to contents

A curve fitted to the estimated factors and extrapolated, as chainladder-python's TailCurve. Factors above 1.00001 in the fit period are regressed by least squares: log(f - 1) on the 1-based development index k ("exponential") or on log(k) ("inverse_power", a heavier tail). The fitted curve replaces the factors from the attachment age on and runs extrap_periods periods past the oldest age.

Usage

tail_curve(
  curve = c("exponential", "inverse_power"),
  fit_period = NULL,
  extrap_periods = 100,
  attachment_age = NULL
)

Arguments

curve

"exponential" or "inverse_power".

fit_period

The ages in months whose factors enter the fit, from the last age at or before the first (inclusive) to the last age at or before the second (exclusive), as chainladder-python reads them; NA for an open end, NULL fits every factor.

extrap_periods

Number of periods past the oldest age the curve is extrapolated; a whole number.

attachment_age

Age in months the curve attaches at (the first age at or after it), or NULL for the oldest age.

Value

A tail_curve object.

Details

Properties: curve, fit_period (two ages, NA for an open end), extrap_periods and attachment_age (NULL for the oldest age).

Examples

long <- data.frame(year = rep(2018:2021, 4:1),
                   age = c(12, 24, 36, 48, 12, 24, 36, 12, 24, 12),
                   paid = c(100, 150, 165, 170, 110, 170, 180, 120, 175, 130))
tri <- triangle(long, "year", "age", "paid")
chain_ladder(tri, tail = tail_curve())@tail
#> [1] 1.008519
chain_ladder(tri, tail = tail_curve("inverse_power", fit_period = c(12, NA)))@tail
#> [1] 1.044001