Sep 26, 2021

Component Analysis #3 - Mortality

“….One need hardly be reminded that a consumer who makes plans for the future must in one way or another take account of the fact that he does not know how long he will live…” - Menahem Yaari 1965

Up until maybe 5 or 10 years ago, most papers I've read in RetFin did not take random lifetime seriously (might be wrong, just an amateur observation) which is not a great place to start a conversation with people that don't live exactly 30 years after a retirement, the start date of which is itself uncertain for some. 

In chapter 8 of Moshe Milevsky's Retirement Recipes in R (RinR), he gives a slick tool, divorced from formal "life tables" and based on "the Gompertz Law of Mortality," that can model conditional - and continuous - survival probabilities (CSP) with some nice malleable parameters. Probably won't land a rocket on Mars but very effective for RetFin models. 

I'll leave you to read the background and derivations on all this and educate yourself on hazard rates and cohort vs life etc etc. I'm just drawing out one thing that I've found useful "in practice" in the past.

The form in the book in R is more or less like the following which can be constructed in Excel as well:

x            <-60                       # I often use "60" as a proxy for early
periods  <-50                         # long enough for a 50yo?
t             <-1:periods
m           <-85.5                     #90 for a healthier person?
b            <-10.5                     #9
TPXG    <-function(x,t,m,b){exp(exp((x-m)/b)*(1-exp(t/b)))}
TPXG.v <-TPXG(x,t,m,b)

x - is the age to which the modeled person has survived, say 60
t - is the number of periods is how many years out from 60
m - is the modal value of the distribution in years
b - is the dispersion in years
TPXG is the function
TPXG.v is the vector of probabilities from age 60 to 110

The output is like this, read left to right and then down

[1] 9.859178e-01 9.706574e-01 9.541448e-01 9.363064e-01 9.170706e-01
[6] 8.963688e-01 8.741377e-01 8.503216e-01 8.248743e-01 7.977630e-01
[11] 7.689706e-01 7.385000e-01 7.063772e-01 6.726560e-01 6.374214e-01
[16] 6.007939e-01 5.629325e-01 5.240376e-01 4.843526e-01 4.441641e-01
[21] 4.038001e-01 3.636261e-01 3.240381e-01 2.854533e-01 2.482976e-01
[26] 2.129896e-01 1.799236e-01 1.494503e-01 1.218576e-01 9.735339e-02
[31] 7.605138e-02 5.796252e-02 4.299329e-02 3.095208e-02 2.156350e-02
[36] 1.448985e-02 9.357435e-03 5.784610e-03 3.408157e-03 1.904618e-03
[41] 1.004258e-03 4.967159e-04 2.289926e-04 9.770864e-05 3.828996e-05
[46] 1.366420e-05 4.399154e-06 1.264653e-06 3.209793e-07 7.103630e-08

The CSP plot is like this (mistakenly run for a 65yo, the rest are for 60)
Figure 1

Transformed into a PDF (PMF the way I coded it?), it might look like this for the given parameters 
Figure 2

Now if we re-parameterize to m = 90 and b = 9 (blue) it shifts the mass right. These parameters in this illustration are arbitrary but they could be fit to things like a SS table or a SOA annuitant table or they could represent different hypothetical expectations about health (worse or better).  

Figure 3


Why bother? Probably "d"

Given some spending stream or other flow, there are a couple ways, maybe more, to deal with the problem of random lifetime in a model along with some other considerations to think about: 

a. Use a fixed horizon but stretch it out over a long time to some superannuated state that is "long enough" like to 95 or 100 or 105. Sometimes this is not helpful since it can be too conservative in some ways not described here.

b. In simulation, one could do a random draw on the number of periods to use. This could, if lazy, be a uniform draw. It could be normal, but why? Probably better to match the draw to an actuarial table. But then one has to run it quite a few times to get the life draw ensemble to approach a reasonable CLT conclusion.

c. One could download a SS life table or a SOA IAM annuitant table and transform the info into a CSP vector but I have found this cumbersome when I am moving quickly and can't find the tables or forget how to transform them. Tables get out of date too and adding the overlay for changes in survival expectations since the last publish date is tricky.

d. One could use the function above (figure1) to weight something. In consumption utility we can use it to weight discounted consumption utility. In calculating a life probability of ruin, it can be used to weight the probability of a portfolio lasting t years in which case we have probably satisfied the Kolmogorov PDE for Life Probability of Ruin. In casual, quick-hit calcs it can be used to weight cash flows like SS. Whatever. I have found this function to be useful and it makes the financial econ lit easier to read. This particular form is also malleable to hypotheticals that both do and do not exist in reality while helping us address the epigraph above in a rigorous, adaptable way.

e. Other? idk










1 comment:

  1. Apologies for being somewhat off topic, but a few weeks back you mentioned reading that a high percentage of folks were not able to choose when they "pull the plug". I came across this collection of curated stats (which includes the following "50% of retirees retired earlier than they would have liked") a couple of days ago and thought it may interest you:
    https://www.theretirementmanifesto.com/some-fascinating-retirement-statistics/

    ReplyDelete