clmplus {clmplus}R Documentation

Fit chain-ladder+ to reverse time triangles.

Description

Generic method to fit the chain ladder +.

Usage

clmplus(
  RtTriangle,
  hazard.model = NULL,
  xc = NULL,
  iter.max = 10000,
  tolerance.max = 1e-06,
  link = c("log", "logit"),
  staticAgeFun = TRUE,
  periodAgeFun = "NP",
  cohortAgeFun = NULL,
  constFun = function(ax, bx, kt, b0x, gc, wxt, ages) list(ax = ax, bx = bx, kt = kt, b0x
    = b0x, gc = gc),
  gk.fc.model = "a",
  ckj.fc.model = "a",
  gk.order = c(1, 1, 0),
  ckj.order = c(0, 1, 0),
  ...
)

Arguments

RtTriangle

RtTriangle object to be fitted.

hazard.model

hazard model supported from our package, must be provided as a string. The model can be choosen from:

  • 'a': Age model, this is equivalent to the Mack chain-ladder.

  • 'ac': Age and cohort effects.

  • 'ap': Age and cohort effects.

  • 'apc': Age cohort and period effects.

  • 'lc': Lee-Carter parameters: age and age-period interaction effects.

  • 'cbd': Cairns-Blake-Dowd mortality model (CBD).

  • 'm6': CBD with cohorts.

  • 'm7': CBD m7 extension.

  • 'm8': CBD m7 extension.

xc

xc constant parameter to be set for the m8 model. Default to NULL.

iter.max

maximum number of iterations for the Newton-Rhapson algorithm. It will be ignored for other fitting procedures.

tolerance.max

maximum tolerance of parameters difference for convergence for the Newton-Rhapson algorithm implementation.Ignored for other fitting procedures.

link

defines the link function and random component associated with the mortality model. "log" would assume that deaths follow a Poisson distribution and use a log link while "logit" would assume that deaths follow a Binomial distribution and a logit link. To be disregarded unless the practitioner specifies his own hazard model in StMoMo.

staticAgeFun

logical value indicating if a static age function \alpha_x is to be included. To be disregarded unless the practitioner specifies his own hazard model in StMoMo.

periodAgeFun

a list of length N with the definitions of the period age modulating parameters \beta_x^{(i)}. Each entry can take values: "NP" for non-parametric age terms, "1" for \beta_x^{(i)}=1 or a predefined parametric function of age (see details). Set this to NULL if there are no period terms in the model. To be disregarded unless the practitioner specifies his own hazard model in StMoMo.

cohortAgeFun

defines the cohort age modulating parameter \beta_x^{(0)}. It can take values: "NP" for non-parametric age terms, "1" for \beta_x^{(0)}=1, a predefined parametric function of age (see details) or NULL if there is no cohort effect. To be disregarded unless the practitioner specifies his own hazard model in StMoMo.

constFun

function defining the identifiability constraints of the model. It must be a function of the form constFun <- function(ax, bx, kt, b0x, gc, wxt, ages) taking a set of fitted model parameters and returning a list list(ax = ax, bx = bx, kt = kt, b0x = b0x, gc = gc) of the model parameters with the identifiability constraints applied. If omitted no identifiability constraints are applied to the model. To be disregarded unless the practitioner specifies his own hazard model in StMoMo.

gk.fc.model

model to forecast the cohort component for the last accident period. It can be either arima ('a') or linear model ('l'). Disregarded for models that do not have a cohort effect.

ckj.fc.model

model to forecast the calendar period effect. It can be either arima ('a') or linear model ('l'). Disregarded for models that do not have a period effect.

gk.order

order of the arima model with drift for the accident year effect extrapolation. Default to (1,1,0).

ckj.order

order of the arima model with drift for the calendar year effect extrapolation. Default to (0,1,0).

...

parameters to be passed to clmplus.

Value

No return value, called to pass method clmplus.

References

Hiabu, Munir. “On the relationship between classical chain ladder and granular reserving.” Scandinavian Actuarial Journal 2017 (2017): 708 - 729.

Examples

data(sifa.mtpl)
sifa.mtpl.rtt <- RtTriangle(cumulative.payments.triangle=sifa.mtpl)
hz.chl=clmplus(sifa.mtpl.rtt, 'a')


[Package clmplus version 0.1.0 Index]