library(ChainLadder)
## Warning: package 'ChainLadder' was built under R version 4.4.3
##
## Welcome to ChainLadder version 0.2.20
##
##
## To cite package 'ChainLadder' in publications use:
##
## Gesmann M, Murphy D, Zhang Y, Carrato A, Wuthrich M, Concina F, Dal
## Moro E (2025). _ChainLadder: Statistical Methods and Models for
## Claims Reserving in General Insurance_. R package version 0.2.20,
## <https://CRAN.R-project.org/package=ChainLadder>.
##
## To suppress this message use:
## suppressPackageStartupMessages(library(ChainLadder))
library(xlsx)
## Warning: package 'xlsx' was built under R version 4.4.1
library(xlsx)
data.cumulative <- read.xlsx("C:/Users/Admin/Desktop/CT4_MHRRBH_COPY.xlsx", sheetIndex = 1)
# Thêm dòng thứ 11 với toàn bộ giá trị NA
data.cumulative[11, ] <- rep(NA, ncol(data.cumulative))
rownames(data.cumulative)[11] <- paste0("Origin", 11)
# Chuyển sang tam giác tổn thất
tri <- as.triangle(as.matrix(data.cumulative))
dimnames(tri) <- list(origin = 1:nrow(tri), dev = 1:ncol(tri))
# Vẽ tam giác
units1 <- 1000
ylab1 <- paste(units1)
title1 <- ""
plot(tri/units1, lattice = TRUE, ylab = ylab1, main = title1)

plot(tri/units1, ylab = ylab1, main = title1)

# Áp dụng mô hình Mack
M <- MackChainLadder(tri, est.sigma = "Mack")
M
## MackChainLadder(Triangle = tri, est.sigma = "Mack")
##
## Latest Dev.To.Date Ultimate IBNR Mack.S.E CV(IBNR)
## 1 3,901,463 1.0000 3,901,463 0 0 NaN
## 2 5,339,085 0.9826 5,433,719 94,634 75,535 0.798
## 3 4,909,315 0.9127 5,378,826 469,511 121,699 0.259
## 4 4,588,268 0.8661 5,297,906 709,638 133,549 0.188
## 5 3,873,311 0.7973 4,858,200 984,889 261,406 0.265
## 6 3,691,712 0.7223 5,111,171 1,419,459 411,010 0.290
## 7 3,483,130 0.6153 5,660,771 2,177,641 558,317 0.256
## 8 2,864,498 0.4222 6,784,799 3,920,301 875,328 0.223
## 9 1,363,294 0.2416 5,642,266 4,278,972 971,258 0.227
## 10 344,014 0.0692 4,969,825 4,625,811 1,363,155 0.295
## NA NA NA NA NA NA NA
##
## Totals
## Latest: 34,358,090.00
## Dev: 0.65
## Ultimate: 53,038,945.61
## IBNR: 18,680,855.61
## Mack.S.E 2,447,094.86
## CV(IBNR): 0.13
# Vẽ kết quả
plot(M)

plot(M, lattice = TRUE)

# Tính CDR
round(CDR(M, dev = "all"), 0)
CDR(M)
round(CDR(M, dev="all"),0)