ibnr
Description
computes incurred-but-not-reported (IBNR) claims for reported or paid claims for a
ibnrClaims
= ibnr(bf
)bornhuetterFerguson
object.
additionally specifies the type of claims data. Specify this argument after the
input argument in the previous syntax.ibnrClaims
= ibnr(___,referenceClaimsType
)
Examples
Compute IBNR Claims for bornhuetterFerguson
Object
Compute IBNR for either reported or paid claims for a bornhuetterFerguson
object containing simulated insurance claims data.
load InsuranceClaimsData.mat;
head(data)
OriginYear DevelopmentYear ReportedClaims PaidClaims __________ _______________ ______________ __________ 2010 12 3995.7 1893.9 2010 24 4635 3371.2 2010 36 4866.8 4079.1 2010 48 4964.1 4487 2010 60 5013.7 4711.4 2010 72 5038.8 4805.6 2010 84 5059 4853.7 2010 96 5074.1 4877.9
Use developmentTriangle
to convert the data to a development triangle, which is the standard form for representing claims data. Create two developmentTriangle
objects, one for reported claims and one for paid claims.
dT_reported = developmentTriangle(data,'Origin','OriginYear','Development','DevelopmentYear','Claims','ReportedClaims')
dT_reported = developmentTriangle with properties: Origin: {10x1 cell} Development: {10x1 cell} Claims: [10x10 double] LatestDiagonal: [10x1 double] Description: "" TailFactor: 1 CumulativeDevelopmentFactors: [1.3069 1.1107 1.0516 1.0261 1.0152 1.0098 1.0060 1.0030 1.0010 1] SelectedLinkRatio: [1.1767 1.0563 1.0249 1.0107 1.0054 1.0038 1.0030 1.0020 1.0010]
dT_paid = developmentTriangle(data,'Origin','OriginYear','Development','DevelopmentYear','Claims','PaidClaims')
dT_paid = developmentTriangle with properties: Origin: {10x1 cell} Development: {10x1 cell} Claims: [10x10 double] LatestDiagonal: [10x1 double] Description: "" TailFactor: 1 CumulativeDevelopmentFactors: [2.4388 1.4070 1.1799 1.0810 1.0378 1.0178 1.0080 1.0030 1.0010 1] SelectedLinkRatio: [1.7333 1.1925 1.0914 1.0417 1.0196 1.0097 1.0050 1.0020 1.0010]
Create an expectedClaims
object where the first input argument is the reported development triangle and the second input argument is the paid development triangle.
earnedPremium = [17000; 18000; 10000; 19000; 16000; 10000; 11000; 10000; 14000; 10000]; ec = expectedClaims(dT_reported, dT_paid,earnedPremium)
ec = expectedClaims with properties: ReportedTriangle: [1x1 developmentTriangle] PaidTriangle: [1x1 developmentTriangle] EarnedPremium: [10x1 double] InitialClaims: [10x1 double] CaseOutstanding: [10x1 double] EstimatedClaimsRatios: [10x1 double] SelectedClaimsRatios: [10x1 double]
Create a bornhuetterFerguson
object with reported claims, paid claims, and expected claims to calculate ultimate claims, cases outstanding, IBNR claims, and unpaid claims estimates.
bf = bornhuetterFerguson(dT_reported, dT_paid, ec.ultimateClaims)
bf = bornhuetterFerguson with properties: ReportedTriangle: [1x1 developmentTriangle] PaidTriangle: [1x1 developmentTriangle] ExpectedClaims: [10x1 double] PercentUnreported: [10x1 double] PercentUnpaid: [10x1 double] CaseOutstanding: [10x1 double]
Use ibnr
to compute IBNR reported claims for a bornhuetterFerguson
object.
ibnrClaims = ibnr(bf,"reported")
ibnrClaims = 10×1
103 ×
0
0.0052
0.0167
0.0347
0.0572
0.0889
0.1496
0.3006
0.6118
1.5509
Input Arguments
bf
— Bornhuetter-Ferguson
bornhuetterFerguson
object
Bornhuetter-Ferguson object, specified as a previously created bornhuetterFerguson
object.
Data Types: object
referenceClaimsType
— Type of claims data
'reported'
(default) | character vector with value 'reported'
or
'paid'
| string with value "reported"
or
"paid"
Type of claims data, specified as a character vector or a string.
Data Types: char
| string
Output Arguments
ibnrClaims
— IBNR claims
array
IBNR claims, returned as an array.
More About
IBNR
Incurred-but-not-reported (IBNR) claims are the claims amount owed by an insurer to all valid claimants who have had a covered loss but have not yet reported it.
Since the insurer knows neither how many of these losses have occurred nor the severity of each loss, IBNR is necessarily an estimate.
Version History
Introduced in R2020b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)