Apresentação

              A matemática atuarial é um campo interdisciplinar que combina conceitos de matemática, probabilidade e estatística para analisar e gerenciar riscos financeiros. Ela é aplicada em diversas áreas, como seguros, previdência, investimentos e finanças corporativas, ajudando a avaliar a probabilidade de eventos futuros e seus impactos financeiros. Os atuários utilizam modelos matemáticos para prever a probabilidade de eventos como morte, invalidez ou morbidez, e calcular o valor esperado de pagamentos ou recebimentos futuros. A precisão desses cálculos pode ter um grande impacto nos resultados financeiros das empresas e indivíduos envolvidos.
          O presente trabalho visa explorar as principais técnicas e conceitos da matemática atuarial, com foco nos cálculos de seguros e anuidades em suas formas discretas e contínuas. Serão utilizados tanto o pacote lifecontingencies para o software R quanto fórmulas manuais para realizar os cálculos necessários. O relatório apresenta uma análise detalhada das principais fórmulas e conceitos utilizados na matemática atuarial, com exemplos práticos que ilustram sua aplicação.
          É importante enfatizar que ass tábuas de mortalidades são ferramentas essenciais no campo dos seguros, pois fornece informações valiosas sobre a probabilidade de morte em diferentes idades. Ela é uma tabela estatística que descreve a taxa de mortalidade em uma determinada população, levando em consideração fatores como idade, sexo e outros atributos relevantes. O gráfico abaixo mostra o comportamento que as diferentes tábuas de mortalidade podem apresentar:



Ao calcular os prêmios e benefícios dos seguros, as seguradoras utilizam a tábua de mortalidade como base para estimar as probabilidades de ocorrência de eventos, e no presente relatório não foi diferente, para os cálculos dos seguros e anuidades utilizei como ponto de partida a probabilidade de morte (qx) da tábua BR.EMSsb.v.2015.m que pode ser encontrada no Banco de tábuas do IBA.


Limpando o console:

rm(list = ls())

Retirando a notação ciêntífica:

options(scipen = 9999)
options(max.print = 100000)

Carreganto os pacotes necessários:

if (!require("lifecontingencies")) {
  install.packages("lifecontingencies")
  library("lifecontingencies")
}

Base de dados:

setwd("C:/Users/55819/Desktop/RMarkdown - Relatorio")
dados <- read.table("tabua.txt", header = TRUE)
dados_tabuas = read.delim('banco_de_tabuas.txt',dec = ',', header = T)

Visualização da base de dados:

# Construção da tábua de vida
tv <- probs2lifetable(dados$qx, type = "qx", radix = 10000, name = "Tábua de vida BR-EMS-mt 2015 feminina")

# Construção da tábua de comutação
tc <- new("actuarialtable", x = tv@x, lx = tv@lx, name = "Tábua de comutação BR-EMS-mt 2015 feminina", interest = 0.04)

# Cálculo de seguros
l <- tv@lx



1. Seguros individuais e discretos

Formulação geral: \[ \boxed{A = \sum {v^{t+1} \cdot _{t\scriptsize{|}}q_x}} \\ _{t\scriptsize{|}}q_x = \frac{l_{x+t}-l_{x+t+1}}{l_x} \\ v^{t+1} \rightarrow \text{é utilizado por conta que normalmente a indenização é paga não no momento da morte (t) e sim em t+1} \] Dados exercícios seguros individuais e discretos:

x = 107
w = 118
n = 2
m = 2
i = 0.05
v <- 1 / (1 + i)

1.1 Dotal puro de n anos \(\boxed{_nE_x}\)

Manual 📝:

tpx <- l[x + n + 1] / l[x + 1]
nEx <- (v^n) * (tpx)
nEx
## [1] 0.2573713

Pacote 💻:

Exn(tc, x=x, n=n, i=i) # OK
## [1] 0.2573713

1.2 De vida inteira \(\boxed{A_x}\)

Manual:

t <- 0:(w - x)
t.qx <- (l[x + t + 1] - l[x + t + 1 + 1]) / l[x + 1]
t.qx <- c(t.qx[!is.na(t.qx)], rep(0, 1))
Ax <- sum((v^(t + 1)) * t.qx)
Ax
## [1] 0.9060899

Pacote:

Axn(tc, x=x, i=i) # OK
## [1] 0.90609

1.3 De vida inteira e diferido de m anos \(\boxed{_{m\scriptsize{|}}A_x}\)

Manual:

t <- m:(w-x-1)
t.qx <- (l[x + t + 1] - l[x + t + 1 + 1]) / l[x + 1]
t.qx <- c(t.qx[!is.na(t.qx)])

total = 0
for (aux in m:(w-x-1)) {
  parcela <- v^(aux+1)*t.qx[aux-m+1]
  print(paste0("O valor da ", aux, "ª parcela é: ", parcela))
  total = total + parcela
}
## [1] "O valor da 2ª parcela é: 0.128611952483387"
## [1] "O valor da 3ª parcela é: 0.062951792814492"
## [1] "O valor da 4ª parcela é: 0.0280474830087585"
## [1] "O valor da 5ª parcela é: 0.0111638954201148"
## [1] "O valor da 6ª parcela é: 0.00387018559753873"
## [1] "O valor da 7ª parcela é: 0.00112671893766834"
## [1] "O valor da 8ª parcela é: 0.000260351220929722"
## [1] "O valor da 9ª parcela é: 0.0000432520482294242"
## [1] "O valor da 10ª parcela é: 0.00000414826716066645"
print(paste0("O valor total é: ", total))
## [1] "O valor total é: 0.236079779798279"
mAx <- sum((v^(t + 1)) * t.qx)
mAx
## [1] 0.2360798

Pacote:

Axn(tc, x=x, i=i, m=m) # OK
## [1] 0.2360799

1.4 Temporário de n anos \(\boxed{A^{\small{1}}_{x\ :\ n⃧}}\)

Manual:

t <- 0:(n-1)
t.qx <- (l[x + t + 1] - l[x + t + 1 + 1]) / l[x + 1]
Axn <- sum((v^(t + 1)) * t.qx)
Axn
## [1] 0.6700101

Pacote:

Axn(tc, x=x, i=i, n=n) # OK
## [1] 0.6700101

1.5 Temporário de n anos e diferido de m anos \(\boxed{_{m\scriptsize{|}}A^{\small{1}}_{x\ :\ n⃧}}\)

Manual:

t <- m:(n+m-1)
t.qx <- (l[x + t + 1] - l[x + t + 1 + 1]) / l[x + 1]
Axn <- sum((v^(t + 1)) * t.qx)
Axn
## [1] 0.1915637

Pacote:

Axn(tc, x=x, i=i, n=n, m=m) # OK
## [1] 0.1915637

1.6 Dotal misto de n anos \(\boxed{A_{x\ :\ n⃧}}\)

Manual:

t <- 0:(n-1)
t.qx <- (l[x + t + 1] - l[x + t + 1 + 1]) / l[x + 1]
AxnMISTO <- sum((v^(t + 1)) * t.qx)
tpx <- l[x + n + 1] / l[x + 1]
nEx <- (v^n) * (tpx)
AxnMISTO+nEx
## [1] 0.9273815

Pacote:

AExn(tc, x=x, i=i, n=n) #OK
## [1] 0.9273815

1.7 Dotal misto de n anos e diferido de m anos \(\boxed{_{m\scriptsize{|}}A_{x\ :\ n⃧}}\)

Manual

t <- m:(n+m-1)
t.qx <- (l[x + t + 1] - l[x + t + 1 + 1]) / l[x + 1]
AxnMISTO <- sum((v^(t + 1)) * t.qx)
tpx <- l[x + n + 1] / l[x + 1]
nEx <- (v^n) * (tpx)
AxnMISTO+nEx
## [1] 0.4489351

Pacote:

# Não há como checar, essa anuidade é apenas para fins didáticos

2. Seguros individuais e contínuos

Formulação geral: \[ \bar{A} = \int{v^t \cdot _{t\scriptsize{|}}q_x \ \ \ dt} \] \[ v^t \rightarrow \ e^{-\delta t}\\ _{t\scriptsize{|}}q_x \rightarrow \ _tp_x \cdot \mu_{x+t}\] \[ \boxed {\bar{A} = \int{e^{-\delta t}\cdot _tp_x \cdot \mu_{x+t} \ \ \ dt}} \] Dados utilizados para o cálculo dos seguros individuais e contínuos:

IS = "?"
x = 30
n = 20
m = 10
i = 0.05
v <- 1 / (1 + i)
delta = log(1+i)

2.1 Dotal puro de n anos \(\boxed{_nE_x}\)

tpx <- l[x + n + 1] / l[x + 1]
nEx <- (v^n) * (tpx)
nEx
## [1] 0.3678396

2.2 De vida inteira \(\boxed{\bar{A}_x}\)

t <- 0:(w - x)
tpx <- function(t) l[x + t + 1] / l[x + 1]
uxt <- function(t) (l[x + t - 1 + 1] - l[x + t + 1 + 1]) / (2 * l[x + t + 1])
ft <- function(t) exp(-d * t) * tpx(t) * uxt(t)
integrate(ft, min(t), max(t), subdivisions = 1000)$value
## [1] 0.1436236

2.3 De vida inteira e diferido de m anos \(\boxed{_{m\scriptsize{|}}\bar{A}_x}\)

t <- m:(w - x - 1)
tpx <- function(t) l[x + t + 1] / l[x + 1]
uxt <- function(t) (l[x + t - 1 + 1] - l[x + t + 1 + 1]) / (2 * l[x + t + 1])
ft <- function(t) exp(-d * t) * tpx(t) * uxt(t)
integrate(ft, min(t), max(t), subdivisions = 1000)$value
## [1] 0.1367496

2.4 Temporário de n anos \(\boxed{\bar{A}^{\small{1}}_{x\ :\ n⃧}}\)

t <- 0:(n - 1)
tpx <- function(t) l[x + t + 1] / l[x + 1]
uxt <- function(t) (l[x + t - 1 + 1] - l[x + t + 1 + 1]) / (2 * l[x + t + 1])
ft <- function(t) exp(-d * t) * tpx(t) * uxt(t)
integrate(ft, min(t), max(t), subdivisions = 1000)$value
## [1] 0.01404499

2.5 Temporário de n anos e diferido de m anos \(\boxed{_{m\scriptsize{|}}\bar{A}^{\small{1}}_{x\ :\ n⃧}}\)

t <- m:(n+m-1)
tpx <- function(t) l[x + t + 1] / l[x + 1]
uxt <- function(t) (l[x + t - 1 + 1] - l[x + t + 1 + 1]) / (2 * l[x + t + 1])
ft <- function(t) exp(-d * t) * tpx(t) * uxt(t)
integrate(ft, min(t), max(t), subdivisions = 1000)$value
## [1] 0.01941989

2.6 Dotal misto de n anos \(\boxed{\bar{A}_{x\ :\ n⃧}}\)

t <- 0:(n-1)
tpx <- function(t) l[x + t + 1] / l[x + 1]
uxt <- function(t) (l[x + t - 1 + 1] - l[x + t + 1 + 1]) / (2 * l[x + t + 1])
ft <- function(t) exp(-d * t) * tpx(t) * uxt(t)
A1xn <- integrate(ft, min(t), max(t), subdivisions = 1000)$value
tpx <- l[x + n + 1] / l[x + 1]
nEx <- (v^n) * (tpx)
A1xn+nEx
## [1] 0.3818846

2.7 Dotal misto de n anos e diferido de m anos \(\boxed{_{m\scriptsize{|}}\bar{A}_{x\ :\ n⃧}}\)

t <- m:(n+m-1)
tpx <- function(t) l[x + t + 1] / l[x + 1]
uxt <- function(t) (l[x + t - 1 + 1] - l[x + t + 1 + 1]) / (2 * l[x + t + 1])
ft <- function(t) exp(-d * t) * tpx(t) * uxt(t)
mA1xn <- integrate(ft, min(t), max(t), subdivisions = 1000)$value
tpx <- l[x + n + m + 1] / l[x + 1]
mnEx <- (v^(n+m)) * (tpx)
mA1xn+mnEx
## [1] 0.2367414

3. Anuidades individuais e discretas

3.0 Dados utilizados:

i <- 0.04
v <- 1 / (1 + i)
x <- 40 # Relembrando os valores
m <- 30
n <- 20

3.1 Imediata, vitalícia e antecipada \(\boxed{{a ̈}_{\small{x}}}\)

t <- 0:(w - x)
t.px <- l[x + t + 1] / l[x + 1]
axna <- sum(v^t * t.px)
axna
## [1] 20.70628
axn(tc, x = x)
## [1] 20.70628

3.2 Imediata, vitalícia e postecipada \(\boxed{{a}_{\small{x}}}\)

Manual

t <- 1:(w - x)
t.px <- l[x + t + 1] / l[x + 1]
axnb <- sum(v^t * t.px)
axnb
## [1] 19.70628

Pacote

axn(tc, x = x, payment = "arrears")
## [1] 19.70628

3.3 Diferida, vitalícia e antecipada \(\boxed{_{\small{m}}{\ddot{a}}_{\small{x}}}\)

Manual

t <- m:(w - x)
t.px <- l[x + t + 1] / l[x + 1]
axnc <- sum(v^t * t.px)
axnc
## [1] 3.248938

Pacote

axn(tc, x = x, m = m)
## [1] 3.248938

3.4 Diferida, vitalícia e postecipada \(\boxed{_{\small{m}}{{a}}_{\small{x}}}\)

Manual

t <- (m + 1):(w - x)
t.px <- l[x + t + 1] / l[x + 1]
axnd <- sum(v^t * t.px)
axnd
## [1] 2.983107

Pacote

axn(tc, x = x, m = m, payment = "arrears")
## [1] 2.983107

3.5 Imediata, temporária e antecipada \(\boxed{{\ddot{a}}_{\small{x\ :\ n⃧}}}\)

Manual

t <- 0:(n - 1)
t.px <- l[x + t + 1] / l[x + 1]
axne <- sum(v^t * t.px)
axne
## [1] 13.92536

Pacote

axn(tc, x = x, n = n)
## [1] 13.92536

3.6 Imediata, temporário e postecipada \(\boxed{{{a}}_{\small{x\ :\ n⃧}}}\)

Manual

t <- 1:(n)
t.px <- l[x + t + 1] / l[x + 1]
axne <- sum(v^t * t.px)
axne
## [1] 13.35773

Pacote

axn(tc, x = x, n = n, payment = "arrears")
## [1] 13.35773

3.7 Diferida, temporária e antecipada \(\boxed{{_{\small{m}}\ddot{a}}_{\small{x\ :\ n⃧}}}\)

Manual

t <- m:(m + n - 1)
t.px <- l[x + t + 1] / l[x + 1]
axne <- sum(v^t * t.px)
axne
## [1] 3.004472

Pacote

axn(tc, x = x, m = m, n = n)
## [1] 3.004472

3.8 Diferida, temporária e postecipada \(\boxed{{_{\small{m}}{a}}_{\small{x\ :\ n⃧}}}\)

Manual

t <- (m + 1):(m + n - 1)
t.px <- l[x + t + 1] / l[x + 1]
axnh <- sum(v^t * t.px)
axnh
## [1] 2.738641

Pacote

axn(tc, x = x, m = m, n = n, payment = "arrears")
## [1] 2.785162

4. Anuidades individuais e contínuas

4.0 Dados utilizados:

IS <- 1
i <- 0.04
v <- 1 / (1 + i)
x <- 30 # Relembrando os valores
m <- 20
n <- 20
d <- 0.06
u <- 0.04
w <- 100

4.1 Imediata e vitalícia \(\boxed{{\bar{a}}_{\small{x}}}\)

t <- 0:(w - x)
tpx <- function(t) exp(-u*t)
ft <- function(t) IS*exp(-d * t) * tpx(t)
integrate(ft, min(t), max(t), subdivisions = 1000)$value
## [1] 9.990881

4.2 Imediata e Temporária \(\boxed{{\bar{a}}_{\small{x\ :\ n⃧}}}\)

t <- 0:(n)
tpx <- function(t) exp(-u*t)
ft <- function(t) IS*exp(-d * t) * tpx(t)
integrate(ft, min(t), max(t), subdivisions = 1000)$value
## [1] 8.646647

4.3 Diferida e Vitalícia \(\boxed{_{\small{m}}{{\bar{a}}}_{\small{x}}}\)

t <- m:(w-x)
tpx <- function(t) exp(-u*t)
ft <- function(t) IS*exp(-d * t) * tpx(t)
integrate(ft, min(t), max(t), subdivisions = 1000)$value
## [1] 1.344234

4.4 Diferida e Temporária \(\boxed{_{\small{m}}{{\bar{a}}}_{\small{x\ :\ n⃧}}}\)

t <- m:(m+n)
tpx <- function(t) exp(-u*t)
ft <- function(t) IS*exp(-d * t) * tpx(t)
integrate(ft, min(t), max(t), subdivisions = 1000)$value
## [1] 1.170196

5. Seguro para múltiplas vidas

# Dados das fórmulas
formulas <- c("$fórmula_1$", "$fórmula_2$", "$fórmula_3$", "$fórmula_4$")

# Criar o quadro
quadro <- matrix(formulas, nrow = 2, ncol = 2, byrow = TRUE)

# Personalizar o estilo do quadro
estilo <- kable(quadro, format = "html", table.attr = 'style="border-collapse:collapse;"') %>%
  kable_styling(c("striped", "bordered"), full_width = TRUE) %>%
  add_header_above(c("Vida conjunta" = 1, "Último sobrevivente" = 1))

# Exibir o quadro
estilo
Vida conjunta
Último sobrevivente
\(fórmula_1\) \(fórmula_2\)
\(fórmula_3\) \(fórmula_4\)

Formulação geral (para seguros que cobrem exclusivamente a morte) - VIDA CONJUNTA: \[\boxed{A = \sum_{t=?}^?{v^{t+1}\cdot (\frac{l_{x+t}- l_{y+t}}{l_{xy}})}}\] Lembrar que para dotal misto, é necessário adicionar a probabilidade de sobrevivência na fórmula

5.1.1 Dotal puro de n anos (vida conjunta) \(\boxed{_nE_{xy}}\)

Manual 📝:

Pacote 💻:


5.1.2 Dotal puro de n anos (ultimo sobrevivente) \(\boxed{_nE_{{\overline{xy}}}}\)

Manual 📝:

Pacote 💻:


5.2.1 De vida inteira (vida conjunta) \(\boxed{A_{xy}}\)

Manual 📝:

Pacote 💻:


5.2.2 De vida inteira (último sobrevivente) \(\boxed{A_{\overline{xy}}}\)

Manual 📝:

Pacote 💻:


5.3.1 De vida inteira e diferido de m anos \(\boxed{_{m\scriptsize{|}}A_{xy}}\)

Manual 📝:

Pacote 💻:


5.3.2 De vida inteira e diferido de m anos \(\boxed{_{m\scriptsize{|}}A_{\overline{xy}}}\)

Manual 📝:

Pacote 💻:


5.4.1 Temporário de n anos \(\boxed{A^{\small{1}}_{{xy}\ :\ n⃧}}\)

Manual 📝:

Pacote 💻:


5.4.2 Temporário de n anos \(\boxed{A^{\small{1}}_{{\overline{xy}}\ :\ n⃧}}\)

Manual 📝:

Pacote 💻:


5.5.1 Temporário de n anos e diferido de m anos \(\boxed{_{m\scriptsize{|}}A^{\small{1}}_{{xy}\ :\ n⃧}}\)

Manual 📝:

Pacote 💻:


5.5.2 Temporário de n anos e diferido de m anos \(\boxed{_{m\scriptsize{|}}A^{\small{1}}_{{\overline{xy}}\ :\ n⃧}}\)


5.6.1 Dotal misto de n anos \(\boxed{A_{{xy}\ :\ n⃧}}\)


5.6.2 Dotal misto de n anos \(\boxed{A_{{\overline{xy}}\ :\ n⃧}}\)


5.7.1 Dotal misto de n anos e diferido de m anos \(\boxed{_{m\scriptsize{|}}A_{{xy}\ :\ n⃧}}\)


5.7.2 Dotal misto de n anos e diferido de m anos \(\boxed{_{m\scriptsize{|}}A_{{\overline{xy}}\ :\ n⃧}}\)


6. Anuidades para múltiplas vidas

7. Anuidades reversíveis

\(a_{x|y}\rightarrow \text{caso x faleça, a renda é revertida para y}\) morte de x -> inicio da reversão morte de y -> fim da reversão ## 7.0 Dados utilizados:

7.1 \(\boxed{_nE_{xy}}\)

Referências

  • BOWERS, N. L. et al. Actuarial mathematics. The Society of Actuaries, 1997.
  • CORDEIRO FILHO, Antonio. Cálculo Atuarial Aplicado. 2. ed. São Paulo: Atlas, 2014
  • FinancialandActuarialMathematicsforLifeContingencies [PDF].
  • Fernanda Peres: Rmarkdown. Canal do Youtube.