Skip to content

Selected mortality - current lifetable/actuarial class approach does not work  #23

Description

@nth1502

Issue :

In my attempt to regenerate AM92 table (with duration 0, 1, 2+/ultimate) , I reckon that current version will not provide a correct result. I manually crossed-check with IFoA 's Formulae and Tables for Examination.

The reason is obvious : after 2 years, the mortality will eventually becomes "ultimate".
Example :


tp[x] = l_([x]+t)/l_[x]
for t>=2, l_([x]+t) = l_(x+t)

N_[x] = summation(D_y) for y = [x] to infinity
= D_[x] + D_([x] + 1) + D_([x] + 2) + D_([x] + 3) + ...
= v^x*l_[x] + v^(x+1)*l_([x]+1) + v^(x+2)*l_([x]+2) + v^(x+3)l_([x]+3) + ...
= v^x
l_[x] + v^(x+1)*l_([x]+1) + v^(x+2)*l_([x]+2) + v^(x+3)l_([x]+3) + ...
= v^x
l_[x] + v^(x+1)*l_([x]+1) + N_(x+2)


Similarly for exn or any commutation formulas involving summation over an extending period of time. There will be a jump of reference between duration 0, duration 1 and duration2/ultimate.

Hence the current approach of lifetable and actuarialtable class with an input of a single series of lx will not solve the problem. (most of function pxt, qxt exn, axn or Axn now will no longer gives a correct result)

Reasons for possible enhancement:

(1) I have an approach for a single specific case. Example : entry age 45 >>> create a unique vector {q_[45], q_([45]+1), q_47, q_48,.... } >>> create lifetable/acfuarialtable accordingly. However the table is only applicable for entry age 45. Assuming I am trying to valuate 1000 policies. To generate tables for every single entry age is not efficient in my limited opinion.

(2) I believe this enhancement suggestion is important because selected mortality is a part of actuarial student curriculum. To bring the package closer to students like myself, we need to make sure that students can easily apply them to solve their problems at school.

(3) In my own attempting to adjust the current codes, I changed an entire definition of those two classes but I am curently not aware of its overall impact to the packages ( as I am still in the learning process. )

Thank you and I find the package really fascinating.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions