Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
nth1502 opened this issue Apr 3, 2018 · 1 comment

Comments

@nth1502
Copy link

nth1502 commented Apr 3, 2018

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.

@spedygiorgio
Copy link
Owner

Hi, thanks for your email. When developing the package I decided not to develop specific classes to handle selected mortality sicnce I felt it were too much specific. In realty I suppose that giving a specific life table to a policyholder would suffice to handle this. I believe it could be a nice enhancement, but for the mid future, not for the near one. Should to wish to contribute with your code with a pull request for handling selected life table we could evaluate your contribution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants