## ----setup, include = FALSE---------------------------------------------------
knitr::opts_chunk$set(collapse = TRUE, comment = "#>")

## -----------------------------------------------------------------------------
library(mqriskR)

# Probability of surviving 10 years from age 40
tpx(10, x = 40, model = "uniform", omega = 100)


## -----------------------------------------------------------------------------
# Whole life insurance
Ax(40, i = 0.05, model = "uniform", omega = 100)

# 10-year term insurance
Axn1(40, n = 10, i = 0.05, model = "uniform", omega = 100)


## -----------------------------------------------------------------------------
# Whole life annuity-immediate
ax(40, i = 0.05, model = "uniform", omega = 100)

# 10-year temporary annuity
axn(40, n = 10, i = 0.05, model = "uniform", omega = 100)

## -----------------------------------------------------------------------------
Ax_term <- Axn1(40, n = 10, i = 0.05, model = "uniform", omega = 100)
adotx_term <- adotxn(40, n = 10, i = 0.05, model = "uniform", omega = 100)

premium <- Ax_term / adotx_term
premium

## -----------------------------------------------------------------------------
t <- 5

# Prospective reserve: V_t = A_{x+t:n-t} - P * ä_{x+t:n-t}
Ax_future <- Axn1(40 + t, n = 10 - t, i = 0.05, model = "uniform", omega = 100)
adotx_future <- adotxn(40 + t, n = 10 - t, i = 0.05, model = "uniform", omega = 100)

V_t <- Ax_future - premium * adotx_future
V_t

## -----------------------------------------------------------------------------
x <- 45:50

qmat <- cbind(
  q1 = c(.011, .012, .013, .014, .015, .016),
  q2 = rep(0.10, 6)
)

tbl <- md_table(x, qmat, radix = 1000)

tbl

## -----------------------------------------------------------------------------
npxtau_md(tbl, x = 46, n = 3)

## -----------------------------------------------------------------------------
qx_proj(
  qx_base = 0.02,
  AAx = 0.01,
  base_year = 2020,
  proj_year = 2030
)

