Simulate Claims

Brian A. Fannin

2022-01-25

Individual claim simulation fits into two basic categories: 1) wait-time and 2) link ratio. An example of the first may be found in Stanard and an example of the second may be found in Guszcza.

Wait-time modelling

Claim simulation occurs once we have a data frame of policies. For each row in this data frame, we will simulate zero or more claims and zero or more claim transactions.

library(imaginator)
set.seed(12345)
tbl_policy <- policies_simulate(2, 2001:2005)

We’ll begin with non-stochastic wait times and claim frequencies.

tbl_claim_transaction <- claims_by_wait_time(
  tbl_policy,
  claim_frequency = 2,
  payment_frequency = 3,
  occurrence_wait = 10,
  report_wait = 5,
  pay_wait = 5,
  pay_severity = 50)

Here we have assumed that each policy will generate 2 claims and each claim will produce 3 payment. Because we have 10 policies, this means we have 60 claim payments. Here they are for the first policy:

claim_id occurrence_date report_date payment_date payment_amount
1 2001-06-02 2001-06-07 2001-06-12 50
1 2001-06-02 2001-06-07 2001-06-17 50
1 2001-06-02 2001-06-07 2001-06-22 50
2 2001-06-02 2001-06-07 2001-06-12 50
2 2001-06-02 2001-06-07 2001-06-17 50
2 2001-06-02 2001-06-07 2001-06-22 50

Let’s do that again with some random amounts. We’ll keep the claim frequency fixed so that we can compare to the output above.

library(distributions3)
tbl_claim_transaction <- claims_by_wait_time(
  tbl_policy,
  claim_frequency = 2,
  payment_frequency = Poisson(2),
  occurrence_wait = Poisson(10),
  report_wait = Poisson(5),
  pay_wait = Poisson(5),
  pay_severity = LogNormal(log(50), 0.5 * log(50)))
claim_id occurrence_date report_date payment_date payment_amount
1 2001-05-27 2001-06-03 2001-06-07 8.660829
1 2001-05-27 2001-06-03 2001-06-13 273.995097
1 2001-05-27 2001-06-03 2001-06-23 134.503747
1 2001-05-27 2001-06-03 2001-06-29 95.663423
2 2001-06-03 2001-06-06 2001-06-11 1503.396967
2 2001-06-03 2001-06-06 2001-06-19 49.134663

Note that the transaction data is denormalized. The policy and claim information fields are repeated.