CLFMdelta {ChainLadder} | R Documentation |
Find "selection consistent" values of delta
Description
This function finds the values of delta, one for each development period, such that the model coefficients resulting from the 'chainladder' function with delta = solution are consistent with an input vector of 'selected' development age-to-age factors.
Usage
CLFMdelta(Triangle, selected, tolerance = .0005, ...)
Arguments
Triangle |
cumulative claims triangle. A (mxn)-matrix |
selected |
a vector of selected age-to-age factors or "link ratios", one for each development period of 'Triangle' |
tolerance |
a 'tolerance' parameters. Default: .0005; for each element of 'selected' a solution 'delta' will be found – if possible – so that the chainladder model indexed by 'delta' results in a multiplicative coefficient within 'tolerance' of the 'selected' factor. |
... |
not in use |
Details
For a given input Triangle and vector of selected factors,
a search is conducted for chainladder models that are "consistent with" the
selected factors.
By "consistent with" is meant that the coefficients of the chainladder
function are equivalent to the selected factors.
Not all vectors of selected factors can be considered consistent with a given
Triangle;
feasibility is subject to restrictions on the 'selected' factors relative to
the input 'Triangle'.
See the References.
The default average produced by the chainladder
function is the
volume weighted average and corresponds to delta = 1
in the call
to that function;
delta = 2
produces the simple average; and
delta = 0
produces the "regression average", i.e.,
the slope of a regression line fit to the data
and running through the origin.
By convention, if the selected
value corresponds to
the volume-weighted average, the simple average, or the regression average,
then the value returned will be 1, 2, and 0, respectively.
Other real-number values for delta
will produce a different average.
The point of this function is to see if there exists a model as determined
by delta whose average is consistent with the value in the
selected
vector.
That is not always possible. See the References.
It can be the case that one or more of the above three "standard averages"
will be quite close to each other
(indistinguishable within tolerance
).
In that case, the value returned will be, in the following priority order
by convention,
1 (volume weighted average),
2 (simple average), or
0 (regression average).
Value
A vector of real numbers, say delta0, such that
coef(chainladder(Triangle, delta = delta0))
= selected
within tolerance
.
A logical
attribute 'foundSolution' indicates if a solution was
found for each element of selected
.
Author(s)
Dan Murphy
References
Bardis, Majidi, Murphy. A Family of Chain-Ladder Factor Models for Selected Link Ratios. Variance. Pending. Variance 6:2, 2012, pp. 143-160.
Examples
x <- RAA[1:9,1]
y <- RAA[1:9,2]
F <- y/x
CLFMdelta(RAA[1:9, 1:2], selected = mean(F)) # value is 2, 'foundSolution' is TRUE
CLFMdelta(RAA[1:9, 1:2], selected = sum(y) / sum(x)) # value is 1, 'foundSolution' is TRUE
selected <- mean(c(mean(F), sum(y) / sum(x))) # an average of averages
CLFMdelta(RAA[1:9, 1:2], selected) # about 1.725
CLFMdelta(RAA[1:9, 1:2], selected = 2) # negative solutions are possible
# Demonstrating an "unreasonable" selected factor.
CLFMdelta(RAA[1:9, 1:2], selected = 1.9) # NA solution, with warning