\[\text{RESERVAS}\]

Lo primero que hacemos es cargar nuestra base de datos de los siniestros ocurridos de la aseguradora

Base_Siniestros <- read_excel("~/Karime Tareas/BASE_SINIESTROS_TAREA1.xlsx")
Base_Siniestros$MONTO_OCURRIDO <- round(Base_Siniestros$MONTO_OCURRIDO)
Base_Siniestros$SUMA_ASEGURADA <- round(Base_Siniestros$SUMA_ASEGURADA)
Base_Siniestros

Observamos que nuestros montos de los siniestros se encuentran en dos tipos de moneda, las cuales son MXN y USD, sabemos que el tipo de cambio al día de hoy es en promedio 20.60 MXN = 1 USD, por lo cual decidimos convertir los pesos mexicanos a dólares

#library(dplyr)
Base_Siniestros <- Base_Siniestros %>% mutate(MONTO_OCURRIDO = ifelse(MONEDA == "1-MXN",Base_Siniestros$MONTO_OCURRIDO / 20.6, MONTO_OCURRIDO))
Base_Siniestros$MONTO_OCURRIDO <- round(Base_Siniestros$MONTO_OCURRIDO)

Convertimos los pesos mexicanos a dólares para la variable SUMA_ASEGURADA

#library(dplyr)
Base_Siniestros <- Base_Siniestros %>% mutate(SUMA_ASEGURADA= ifelse(MONEDA == "1-MXN",Base_Siniestros$SUMA_ASEGURADA / 20.6, SUMA_ASEGURADA))
Base_Siniestros$SUMA_ASEGURADA <- round(Base_Siniestros$SUMA_ASEGURADA)

Base_Siniestros <- Base_Siniestros %>% mutate(MONEDA= ifelse(MONEDA == "1-MXN","2-USD", MONEDA)) #Esto es para poner la varible Moneda en termino de USD

Primero elegimos un ramo con información suficiente para el cálculo de la reserva SONR, en este caso lo haremos para el ramo de Incendio

\[\text{Incendio}\]

Filtramos los datos del RAMO Incendio

Incendio <- filter(Base_Siniestros,RAMO =="Incendio")
Incendio
AÑO_OCURRIDO_2 <- data_frame("AÑO_OCURRIDO_2"=(as.numeric(format(Incendio$FECHA_OCURRIDO,'%Y'))))
## Warning: `data_frame()` was deprecated in tibble 1.1.0.
## Please use `tibble()` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was generated.
AÑO_CONTABLE <- data_frame("AÑO_CONTABLE"=(as.numeric(format(Incendio$FECHA_CONTABLE,'%Y'))))

DESARROLLO_A <- data_frame(AÑO_CONTABLE-AÑO_OCURRIDO_2) #Tiempo en que tardan en reportarme el siniestro
names (DESARROLLO_A)= "DESARROLLO_A"
AÑO_OCURRIDO <- data_frame("AÑO_OCURRIDO"=(as.numeric(format(Incendio$FECHA_OCURRIDO,'%Y')))) 

MES_OCURRIDO <- data_frame("MES_OCURRIDO"=(as.numeric(format(Incendio$FECHA_OCURRIDO,'%m')))) 


SEMESTRE <-data_frame(ceiling(MES_OCURRIDO/6)) # Desarrollo semestral
names (SEMESTRE)= "SEMESTRE"
DIF_MESES <-data_frame(interval(Incendio$FECHA_OCURRIDO,  Incendio$FECHA_CONTABLE) %/% months(1)) #Diferencia en meses 
names (DIF_MESES)= "DIF_MESES"

DESARROLLO_S <-data_frame(ceiling(DIF_MESES/6)) # Desarrollo semestral
names (DESARROLLO_S)= "DESARROLLO"

Incendio <- cbind(Incendio,AÑO_OCURRIDO,AÑO_OCURRIDO_2,MES_OCURRIDO,SEMESTRE,DIF_MESES,DESARROLLO_A,DESARROLLO_S)
Incendio <- Incendio %>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2013" & SEMESTRE==1 ,"2013_1", AÑO_OCURRIDO)) %>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2013" & SEMESTRE==2 ,"2013_2", AÑO_OCURRIDO))%>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2014" & SEMESTRE==1 ,"2014_1", AÑO_OCURRIDO))%>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2014" & SEMESTRE==2 ,"2014_2", AÑO_OCURRIDO))%>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2015" & SEMESTRE==1 ,"2015_1", AÑO_OCURRIDO))%>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2015" & SEMESTRE==2 ,"2015_2", AÑO_OCURRIDO))%>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2016" & SEMESTRE==1 ,"2016_1", AÑO_OCURRIDO)) %>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2016" & SEMESTRE==2 ,"2016_2", AÑO_OCURRIDO)) %>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2017" & SEMESTRE==1 ,"2017_1", AÑO_OCURRIDO)) %>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2017" & SEMESTRE==2 ,"2017_2", AÑO_OCURRIDO))%>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2018" & SEMESTRE==1 ,"2018_1", AÑO_OCURRIDO)) %>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2018" & SEMESTRE==2 ,"2018_2", AÑO_OCURRIDO))%>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2019" & SEMESTRE==1 ,"2019_1", AÑO_OCURRIDO))%>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2019" & SEMESTRE==2 ,"2019_2", AÑO_OCURRIDO))%>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2020" & SEMESTRE==1 ,"2020_1", AÑO_OCURRIDO))%>% mutate(AÑO_OCURRIDO = ifelse(AÑO_OCURRIDO == "2020" & SEMESTRE==2 ,"2020_2", AÑO_OCURRIDO))

La nueva tabla con los datos suficientes para poder ocupar la library(ChainLadder) y construir el triangulo que necesitamos para el cálculo de la reserva

Incendio

Aqui poemos observar el triángulo incremental anual

trianculo_Inc_anual<- as.triangle(Incendio, origin = "AÑO_OCURRIDO_2", dev = "DESARROLLO_A", value = "MONTO_OCURRIDO") #Triangulo incremental anual 

trianculo_Inc_anual
##               DESARROLLO_A
## AÑO_OCURRIDO_2           0          1          2          3    4     5
##           2013       36371      40413      31148         NA   NA    NA
##           2014     3620322         NA         NA         NA   NA    NA
##           2015  2535970407  335365232    8221733         NA   NA 65753
##           2016   373922520  331023309         NA  239561490 3077    NA
##           2017  2229695131  622817564  151168763 3903644685   NA    NA
##           2018 31171734139 9887002598 1764748709         NA   NA    NA
##           2019  2194866393 1260092393         NA         NA   NA    NA
##           2020  3549211241         NA         NA         NA   NA    NA

y en esta parte observamos el triángulo incremental semestral

triangulo_Inc_sem <- as.triangle(Incendio, origin = "AÑO_OCURRIDO", dev = "DESARROLLO", value = "MONTO_OCURRIDO")#Triangulo incremental semestral 2020
triangulo_Inc_sem
##             DESARROLLO
## AÑO_OCURRIDO          0           1          2         3          4          5
##       2013_1      36371          NA         NA        NA         NA         NA
##       2013_2         NA       38997       1416        NA      31148         NA
##       2014_2    3620322          NA         NA        NA         NA         NA
##       2015_1  379628383    45927225         NA 235634314         NA         NA
##       2015_2 1485929597   655345149   68870971   8221733         NA         NA
##       2016_1   79527812          NA         NA        NA         NA         NA
##       2016_2   80329274   545088743         NA        NA         NA  239561490
##       2017_1  105336464   739554605      46136   1925697       1497  140345494
##       2017_2 1491874285   450958451   61299883   1726895   10616438 3373194573
##       2018_1  358672052 16782580503 3887120302 211776295 1191439056   87826028
##       2018_2 9842430192  7651093773 2325063620 441868310   43615315         NA
##       2019_1  813106643   848112338  207575092 346794123         NA         NA
##       2019_2  330751292   336443560  572175738        NA         NA         NA
##       2020_1 1409171550   983607692         NA        NA         NA         NA
##       2020_2 1156431999          NA         NA        NA         NA         NA
##             DESARROLLO
## AÑO_OCURRIDO         6         7    8     9    10
##       2013_1        NA        NA   NA    NA    NA
##       2013_2        NA        NA   NA    NA    NA
##       2014_2        NA        NA   NA    NA    NA
##       2015_1        NA        NA   NA    NA    NA
##       2015_2        NA        NA   NA 12880 52873
##       2016_1        NA        NA   NA    NA    NA
##       2016_2        NA        NA 3077    NA    NA
##       2017_1  67846856 289611537   NA    NA    NA
##       2017_2 172987332        NA   NA    NA    NA
##       2018_1        NA        NA   NA    NA    NA
##       2018_2        NA        NA   NA    NA    NA
##       2019_1        NA        NA   NA    NA    NA
##       2019_2        NA        NA   NA    NA    NA
##       2020_1        NA        NA   NA    NA    NA
##       2020_2        NA        NA   NA    NA    NA

Por lo que decidimos calcular las reservas con el triángulo semestral, y mostraremos todos los cálculos realizados en Excel

\[\text{Integrantes:}\]

  • Toledo Serna Odilia Karime \(~~314189112\)
  • Cruz Alfaro Alan Jesus \(~~~~~~~~~~~~414025631\)