reserving.MackFit
A fitted Mack model of every segment: the chain-ladder fields, plus
Usage
reserving.MackFit()standard errors of each origin’s reserve and of each segment’s total.
Per-origin lists run over the origins of each segment in turn, like the rows of to_frame(). Per-age lists, the tail and the totals’ standard errors need a single-segment fit; for several segments use development_frame(), totals_frame() (the totals’ standard errors and the tail) or segment(...). total_ultimate and total_reserve sum over every segment.
Attributes
| Name | Description |
|---|---|
| cdf | Age-to-ultimate factors, including the tail. |
| chain_ladder | The underlying chain-ladder projection. |
| development | Development ages in months. |
| estimated_ldf | Factors as estimated, as ChainLadderFit.estimated_ldf. |
| index | Label of each segment, as Triangle.index. |
| keys | Names of the triangle’s key columns; empty without keys. |
| latest | Latest observed cumulative value per origin. |
| ldf | Selected age-to-age factors, as ChainLadderFit.ldf. |
| origins | Origin period of each per-origin value. |
| parameter_risk | Parameter (estimation) standard error per origin. |
| process_risk | Process standard error per origin. |
| reserve | Reserve per origin. |
| sigma | Variance parameter of each factor. |
| standard_error |
Mack standard error per origin: sqrt(process**2 + parameter**2).
|
| std_err | Standard error of each factor. |
| tail | Tail factor from the oldest age to ultimate. |
| tail_attachment_age | Age from which ldf holds the tail’s factors, as |
| tail_ldf | Factors past the oldest age, as ChainLadderFit.tail_ldf. |
| tail_sigma | The tail’s sigma used in the process risk: given, or extrapolated |
| tail_std_err | The tail factor’s standard error used in the parameter risk: given, |
| total_cv | Coefficient of variation of the total reserve. |
| total_parameter_risk | Parameter standard error of the total reserve, including the |
| total_process_risk | Process standard error of the total reserve. |
| total_reserve | Total reserve across segments and origins. |
| total_standard_error | Mack standard error of the total reserve. |
| total_ultimate | Total ultimate across segments and origins. |
| ultimate | Projected ultimate per origin. |
cdf
Age-to-ultimate factors, including the tail.
cdf: list[float]
chain_ladder
The underlying chain-ladder projection.
chain_ladder: ChainLadderFit
development
Development ages in months.
development: list[int]
estimated_ldf
Factors as estimated, as ChainLadderFit.estimated_ldf.
estimated_ldf: list[float]
index
Label of each segment, as Triangle.index.
index: list[Any]
keys
Names of the triangle’s key columns; empty without keys.
keys: list[str]
latest
Latest observed cumulative value per origin.
latest: list[float]
ldf
Selected age-to-age factors, as ChainLadderFit.ldf.
ldf: list[float]
origins
Origin period of each per-origin value.
origins: list[str]
parameter_risk
Parameter (estimation) standard error per origin.
parameter_risk: list[float]
process_risk
Process standard error per origin.
process_risk: list[float]
reserve
Reserve per origin.
reserve: list[float]
sigma
Variance parameter of each factor.
sigma: list[float]
standard_error
Mack standard error per origin: sqrt(process**2 + parameter**2).
standard_error: list[float]
std_err
Standard error of each factor.
std_err: list[float]
tail
Tail factor from the oldest age to ultimate.
tail: float
tail_attachment_age
Age from which ldf holds the tail’s factors, as
tail_attachment_age: int
tail_ldf
Factors past the oldest age, as ChainLadderFit.tail_ldf.
tail_ldf: list[float]
tail_sigma
The tail’s sigma used in the process risk: given, or extrapolated
tail_sigma: float
log-linearly; 0 without a tail (a factor of 1).
tail_std_err
The tail factor’s standard error used in the parameter risk: given,
tail_std_err: float
or extrapolated log-linearly; 0 without a tail (a factor of 1).
total_cv
Coefficient of variation of the total reserve.
total_cv: float
total_parameter_risk
Parameter standard error of the total reserve, including the
total_parameter_risk: float
correlation between origins that share estimated factors.
total_process_risk
Process standard error of the total reserve.
total_process_risk: float
total_reserve
Total reserve across segments and origins.
total_reserve: float
total_standard_error
Mack standard error of the total reserve.
total_standard_error: float
total_ultimate
Total ultimate across segments and origins.
total_ultimate: float
ultimate
Projected ultimate per origin.
ultimate: list[float]
Methods
| Name | Description |
|---|---|
| claims_development_result() | Merz and Wüthrich’s (2008) one-year view: the standard error of the |
| development_frame() | One row per segment and age, as ChainLadderFit.development_frame. |
| segment() | The fit of one segment, chosen by key values as |
| to_frame() |
One row per segment and origin: the key columns, origin,
|
| totals_frame() | One row per segment: the key columns, the segment’s total |
claims_development_result()
Merz and Wüthrich’s (2008) one-year view: the standard error of the
Usage
claims_development_result()claims development result of each origin and in total, in the next calendar year and in every later one, as R ChainLadder’s CDR(MackChainLadder(x), dev = "all").
Returns
ClaimsDevelopmentResult
Raises
ValueError-
If the fit has several segments (use
segment(...)), the factors are not volume-weighted, the fit has a tail (a factor other than 1, or one that replaces estimated factors), or the latest values do not lie on one calendar diagonal with one new origin per period.
development_frame()
One row per segment and age, as ChainLadderFit.development_frame.
Usage
development_frame()Needs pandas.
Returns
pandas.DataFrame
segment()
The fit of one segment, chosen by key values as
Usage
segment(**keys)Returns
MackFit
to_frame()
One row per segment and origin: the key columns, origin,
Usage
to_frame()latest, ultimate, reserve, process_risk, parameter_risk and standard_error. Needs pandas.
Returns
pandas.DataFrame
totals_frame()
One row per segment: the key columns, the segment’s total
Usage
totals_frame()latest, ultimate and reserve, and the process_risk, parameter_risk and standard_error of its total reserve. Needs pandas.
Returns
pandas.DataFrame