1 Purpose

The purpose of this project is to outline a method to develop projections of best estimate and stressed mortality rates using R, the Lee-Carter mortality model, the ‘demography’ package, and data available through the Human Mortality Database.

Risk managers and actuaries are often faced with developing projections of best estimate mortality rates and understanding the impact of the uncertainty around these projections on financials. Best estimates are often based on the specific underwriting characteristics of a product or block of business. It makes sense to tailor best estimates to fit the specific nature of the portfolio lives. However, when it comes to developing stresses in order to study their impacts, it is handy to view larger (years and lives) and publicly available datasets. This is true in terms of transparency and oddly enough to remove the idiosyncrasies of specific blocks. This latter point is important when combining many blocks of business across many business units where consistency is desired. It is also true in terms of working with regulators and ratings agencies where industry standards have developed along the lines of 99.5th percentile confidence intervals (analytical Value-at-Risk (VaR)) where longer time horizons and population data can allow for good fits and statistical measures of uncertainty.

This analysis justifies usage of +20% / -20% stresses to mortality rates for purposes of risk management where analytical VaR is desired at the 99.5th percentile. These stresses should be interpreted as an immediate and permanent stress to mortality rates. The results do not differ too much from published industry standards such as Solvency II Standard Formula stresses of +15% / -20% which presumably are developed from a similar process but applied to European mortality data.

2 Load data

The ‘demography’ package includes the ’hmd.mx" function which can be used to load data directly from the Human Mortality Database. The function imports data into an object that is readily used by other functions of the ‘demography’ package.

3 Lee-Carter Model

The Lee-Carter model is a popular model for fitting and forecasting mortality rates and life expectancy. Wikipedia has a nice description of the Lee-Carter model. The snippet below is taken from this source:

The Lee–Carter model is a numerical algorithm used in mortality forecasting and life expectancy forecasting. The input to the model is a matrix of age specific mortality rates ordered monotonically by time, usually with ages in columns and years in rows. The output is another forecasted matrix of mortality rates.

The model uses the singular value decomposition (SVD) to find a univariate time series vector “kt” that captures 80–90% of the mortality trend (here the subscript “t” refers to time), a vector “bx” that describes the amount of mortality change at a given age for a unit of yearly total mortality change (here the subscript “x” refers to age), and a scaling constant (referred to here as s1 but unnamed in the literature). Surprisingly, kt is usually linear, implying that gains to life expectancy are fairly constant year after year in most populations. Before being input to the SVD, age specific mortality rates are transformed into “ax,t”, by taking their logarithms, and then centering them by subtracting their age-specific means (calculated over time). (The subscript “x,t” refers to the fact that ax,t spans both age and time.) Many researchers adjust the kt vector by fitting it to empirical life expectancies for each year, using the ax and bx just generated with the SVD; when adjusted using this approach, changes to kt are usually small.

To forecast mortality, the above kt (either adjusted or not) is projected into the future using ARIMA time series methods, the corresponding future ax,t+n is recovered by multiplying kt+n by bx and the appropriate diagonal element of S (when [U S V] = svd(mort)), and the actual mortality rates are recovered by taking exponentials of this vector. Because of the linearity of kt, it is generally modeled as a random walk with trend. Life expectancy and other life table measures can be calculated from this forecasted matrix after adding back the means and taking exponentials to yield regular mortality rates.

The Lee-Carter model is applied and fit using the ‘lca’ function of the ‘demography’ package. This function provides users with the parameters of the fit. In this analysis the fit is performed on the combined mortality experience of males and females.

3.1 Lee-Carter Fit Parameters

The graphs below show the fit of the a, b, and k parameters of the Lee-Carter mortality model including a forecast of the k parameter and confidence interval.

3.2 Assessment of the Fit

The table below demonstrates that the portion of variation explained is quite high.

## Lee-Carter analysis
## 
## Call: lca(data = us.mort, series = names(us.mort$rate[match(series,  
##  
## Call:     names(us.mort$rate))])) 
## 
## Adjustment method: dt
## Region: USA
## Years in fit: 1933 - 2013
## Ages in fit: 0 - 100 
## 
## Percentage variation explained: 96.2%
## 
## ERROR MEASURES BASED ON MORTALITY RATES
## 
## Averages across ages:
##       ME      MSE      MPE     MAPE 
## -0.00001  0.00005  0.00748  0.06899 
## 
## Averages across years:
##       IE      ISE      IPE     IAPE 
## -0.00030  0.00385  0.74971  6.85369 
## 
## 
## ERROR MEASURES BASED ON LOG MORTALITY RATES
## 
## Averages across ages:
##       ME      MSE      MPE     MAPE 
##  0.00286  0.00920 -0.00013  0.01647 
## 
## Averages across years:
##       IE      ISE      IPE     IAPE 
##  0.28607  0.91203 -0.01808  1.59479

Table: Details of the Lee-Carter fit

3.3 Projected Life-Tables

The ‘demography’ package also supplies the ability to forecast mortality rates using the ‘forecast’ function. This function allows for selection of future time horizon over which to project as well as the confidence interval. Setting the ‘level’ to 99 equates to producing the 99.5th percentile confidence interval. The projection horizon is set to 60 years but shorter or longer horizons can be selected.

The forecast is developed below and select projected life-tables are shown.

## Period lifetable for USA : total 
## 
## Year: 2015 
##        mx     qx     lx     dx      Lx      Tx      ex
## 40 0.0014 0.0014 1.0000 0.0014  0.9993 53.3445 53.3445
## 50 0.0035 0.0035 0.9986 0.0035  0.9968 52.3452 52.4202
## 60 0.0085 0.0085 0.9951 0.0084  0.9909 51.3484 51.6025
## 70 0.0196 1.0000 0.9867 0.9867 50.3575 50.3575 51.0388
## 
## Year: 2025 
##        mx     qx     lx     dx      Lx      Tx      ex
## 40 0.0012 0.0012 1.0000 0.0012  0.9994 60.2868 60.2868
## 50 0.0030 0.0030 0.9988 0.0030  0.9973 59.2874 59.3594
## 60 0.0074 0.0074 0.9958 0.0074  0.9921 58.2901 58.5370
## 70 0.0173 1.0000 0.9884 0.9884 57.2980 57.2980 57.9698
## 
## Year: 2035 
##        mx     qx     lx     dx      Lx      Tx      ex
## 40 0.0010 0.0010 1.0000 0.0010  0.9995 68.1699 68.1699
## 50 0.0026 0.0026 0.9990 0.0026  0.9977 67.1704 67.2397
## 60 0.0065 0.0065 0.9964 0.0064  0.9932 66.1727 66.4128
## 70 0.0152 1.0000 0.9899 0.9899 65.1796 65.1796 65.8419
## 
## Year: 2045 
##        mx     qx     lx     dx      Lx      Tx      ex
## 40 0.0009 0.0009 1.0000 0.0009  0.9996 77.1217 77.1217
## 50 0.0022 0.0022 0.9991 0.0022  0.9980 76.1222 76.1888
## 60 0.0057 0.0057 0.9969 0.0056  0.9941 75.1241 75.3575
## 70 0.0134 1.0000 0.9913 0.9913 74.1301 74.1301 74.7831

4 Graphs

The graphs below show the historic and projected mortality rates along with their confidence intervals for select ages.

5 Stress Development

5.1 Vector Stress by Age

The upper and lower boundaries of the projection confidence intervals can be divided by the corresponding best estimate mortality rate to develop the level of stress associated with the 99.5th percentile confidence interval. This produces a ‘shock-up’ and ‘shock-down’ for each age and year into the future. A sample of the results of this approach is shown in the table below for select ages and projection years.

Stresses as measured through comparison of projection with confidence intervals
Age Year BE Upper Lower ShockUp ShockDown
40 2015 0.0014 0.0016 0.0013 1.0872 0.9198
40 2025 0.0012 0.0015 0.0010 1.2423 0.8049
40 2035 0.0010 0.0014 0.0008 1.3625 0.7339
40 2045 0.0009 0.0013 0.0006 1.4784 0.6764
50 2015 0.0035 0.0038 0.0032 1.0802 0.9258
50 2025 0.0030 0.0037 0.0025 1.2215 0.8186
50 2035 0.0026 0.0034 0.0019 1.3302 0.7518
50 2045 0.0022 0.0032 0.0016 1.4341 0.6973
60 2015 0.0085 0.0091 0.0079 1.0712 0.9335
60 2025 0.0074 0.0089 0.0062 1.1955 0.8365
60 2035 0.0065 0.0084 0.0050 1.2899 0.7752
60 2045 0.0057 0.0078 0.0041 1.3795 0.7249
70 2015 0.0196 0.0209 0.0184 1.0671 0.9372
70 2025 0.0173 0.0204 0.0146 1.1834 0.8450
70 2035 0.0152 0.0193 0.0119 1.2713 0.7866
70 2045 0.0134 0.0181 0.0099 1.3544 0.7383

5.2 Single Stress by Age

In many applications a single scalar stress per age (or a single scalar stress for all dimensions) is desired. This can be accomplished through the methods described below.

5.2.1 Life Expectancy

The best estimate projection of mortality as well as the upper and lower 99.5th percentile confidence intervals can be expressed in terms of a life-expectancy. Life-expectancy is calculated and shown for select ages using these three projections. Please note that although sample projection years have been shown throughout, the life-expectancy is calculated along all years of the projection (and for all ages).

Life expectancy along best estimate, upper, and lower paths for select ages
Age BE ShockUp ShockDown
40 43.56 41.01 45.87
45 38.39 36.11 40.49
50 33.36 31.37 35.23
55 28.51 26.82 30.13
60 23.92 22.51 25.28
65 19.62 18.49 20.72
70 15.63 14.77 16.47

5.2.2 Solve for Single Factor

Now that life-expectancy has be developed, it is possible to find a single factor, for each age, to apply to the best estimate projected mortality rates that produces the same life-expectancy as the upper and lower confidence internal paths. This single factor collapses the vector produced above into one easy to express factor for each age.

Single stress for each age
Age ShockUp ShockDown
40 1.30 0.78
45 1.27 0.80
50 1.24 0.82
55 1.21 0.83
60 1.18 0.85
65 1.15 0.87
70 1.13 0.89

6 Results - Single Stress

The work above justifies use of a stress of roughly +20% / -20% for all ages and genders. This stress is to be interpreted as an immediate and permanent stress. This conclusion is drawn from simple observation of the previous results and consideration of key ages. If the previous results had been much more lumpy, it may not have been possible to so easily collapse a stress for each age into a stress for all ages.

This analysis has outlined a reasonable approach to developing stresses to mortality rates for purposes of projections. A more detailed analysis might include separating historical mortality rates and projections by gender. Another possibility is to include various historical time horizons for fitting and underlying mortality models to see how these selections drive results. These points will be more or less important depending on the country of interest, the availability and quality of historical data, the occurrence of extreme events such as war, famine, and wide-spread disease, and the application of the stresses themselves.

7 Appendix

7.1 Life Expectancy

Appendix: Life expectancy along best estimate, upper, and lower paths for select ages
Age BE ShockUp ShockDown
40 43.56 41.01 45.87
41 42.53 40.03 44.80
42 41.48 39.04 43.72
43 40.45 38.06 42.64
44 39.42 37.08 41.56
45 38.39 36.11 40.49
46 37.37 35.15 39.43
47 36.36 34.19 38.37
48 35.35 33.24 37.32
49 34.35 32.30 36.27
50 33.36 31.37 35.23
51 32.37 30.44 34.19
52 31.39 29.52 33.17
53 30.43 28.61 32.15
54 29.47 27.71 31.14
55 28.51 26.82 30.13
56 27.57 25.93 29.14
57 26.64 25.06 28.16
58 25.72 24.20 27.19
59 24.82 23.35 26.23
60 23.92 22.51 25.28
61 23.03 21.68 24.34
62 22.16 20.87 23.42
63 21.30 20.07 22.51
64 20.46 19.27 21.61
65 19.62 18.49 20.72
66 18.80 17.73 19.85
67 17.99 16.97 18.99
68 17.19 16.22 18.13
69 16.40 15.49 17.30
70 15.63 14.77 16.47
71 14.87 14.06 15.67
72 14.12 13.37 14.87
73 13.40 12.69 14.10
74 12.68 12.03 13.34
75 11.98 11.37 12.59
76 11.30 10.73 11.86
77 10.63 10.11 11.14
78 9.97 9.50 10.44
79 9.33 8.90 9.76
80 8.70 8.32 9.09
81 8.12 7.77 8.47
82 7.54 7.23 7.86
83 6.99 6.72 7.27
84 6.47 6.22 6.71
85 5.96 5.75 6.17
86 5.48 5.30 5.66
87 5.02 4.86 5.17
88 4.57 4.45 4.70
89 4.15 4.05 4.25
90 3.75 3.67 3.82
91 3.37 3.31 3.42
92 3.00 2.96 3.04
93 2.67 2.64 2.69
94 2.36 2.35 2.37
95 2.07 2.07 2.07
96 1.79 1.80 1.78
97 1.52 1.54 1.51
98 1.26 1.27 1.24
99 0.96 0.97 0.95
100 0.58 0.58 0.57

7.2 Single Stress by Age

Appendix: Single stress for each age
Age ShockUp ShockDown
40 1.30 0.78
41 1.29 0.78
42 1.29 0.79
43 1.28 0.79
44 1.27 0.79
45 1.27 0.80
46 1.26 0.80
47 1.25 0.80
48 1.25 0.81
49 1.24 0.81
50 1.24 0.82
51 1.23 0.82
52 1.22 0.82
53 1.22 0.83
54 1.21 0.83
55 1.21 0.83
56 1.20 0.84
57 1.20 0.84
58 1.19 0.84
59 1.19 0.85
60 1.18 0.85
61 1.18 0.85
62 1.17 0.86
63 1.16 0.86
64 1.16 0.87
65 1.15 0.87
66 1.15 0.87
67 1.14 0.88
68 1.14 0.88
69 1.14 0.88
70 1.13 0.89
71 1.13 0.89
72 1.12 0.89
73 1.11 0.90
74 1.11 0.90
75 1.10 0.91
76 1.10 0.91
77 1.09 0.92
78 1.09 0.92
79 1.08 0.92
80 1.08 0.93
81 1.07 0.93
82 1.07 0.94
83 1.06 0.94
84 1.06 0.95
85 1.05 0.95
86 1.05 0.96
87 1.04 0.96
88 1.04 0.97
89 1.03 0.97
90 1.03 0.98
91 1.02 0.98
92 1.01 0.99
93 1.01 0.99
94 1.00 1.00
95 1.00 1.00
96 1.00 1.00
97 0.99 1.01
98 0.99 1.01
99 0.99 1.01
100 0.99 1.01