LifeContingencies.jl

LifeContingencies computes survival probabilities, life insurance and annuity values, net premiums and net premium reserves. It combines mortality from MortalityTables.jl with a rate or yield curve and a payment schedule.

These are the 3.0 docs: Julia 1.10+, MortalityTables 3, and FinanceCore 3. If you already use 2.x, start with Migrating to 3.0.

Features

  • Single and joint lives, with select tables, ultimate tables or parametric mortality.
  • Insurance and annuities with terms, payment frequency, deferral and guarantees.
  • Net premiums and prospective reserves with explicit status conditioning.
  • Flat rates, yield curves and scenario-by-scenario valuation.
  • Custom multi-state payments, including recovery and duration-dependent benefits.

Getting started

Getting started takes a small mortality table through insurance, annuities, pricing and a reserve. Then choose a task:

I want to…Read
Use a select table or a mortality lawMortality and lives
Set payment frequency, deferral or a guaranteeInsurance and annuities
Value future payments or calculate a reserveValuation and reserves
Value first-to-die or last-survivor benefitsJoint lives
Use a yield curve or run scenariosCurves and scenarios
Translate actuarial notation into JuliaActuarial notation

Build a multi-state model

The experimental engine supports payments in states and on transitions, including recovery and duration-dependent benefits. Building multi-state models starts with three states. The LTC worked example adds claim duration, an elimination period and memory across claims.

The textbook API at the top level is stable. Interfaces in LifeContingencies.Experimental may change in minor releases. Both have dedicated references: stable and experimental.

References

  • Gerber, Life Insurance Mathematics: life insurance, annuities and commutation functions.
  • Dickson, Hardy and Waters, Actuarial Mathematics for Life Contingent Risks: premiums, policy values and multi-state models.
  • Slud, Actuarial Mathematics and Life-Table Statistics.

Questions or examples to contribute? Open an issue.