Среднеквадратичная погрешность предсказания для предполагаемых окончательных требований

Этот пример показывает рабочий процесс для оценки окончательных требований с помощью developmentTriangle объект с симулированными требованиями, о которых сообщают, и затем вычислением соответствующей среднеквадратичной погрешности предсказания (MSEP).

Актуарии используют различные методы, чтобы оценивать окончательные требования в течение различных лет. В дополнение к значениям требования актуарий должен знать, как хорошо оценки предсказывают результаты случайных переменных и неопределенности в оценках для окончательных требований. Чтобы измерить качество предполагаемых окончательных требований, можно вычислить MSEP.

Загрузка данных

load('InsuranceClaimsData.mat');
disp(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  

Создайте developmentTriangle

Создайте developmentTriangle объект и использование claimsPlot визуализировать developmentTriangle. Для получения дополнительной информации о неоплаченной оценке требований см. Обзор Методов оценки Требований для Non-Life Insurance

dTriangle = developmentTriangle(data,'Origin','OriginYear','Development','DevelopmentYear','Claims','ReportedClaims');
dTriangleTable = view(dTriangle);
% Visualize the development triangle
claimsPlot(dTriangle);

Figure contains an axes object. The axes object with title Cumulative Claims Development contains 10 objects of type line. These objects represent 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019.

Анализируйте developmentTriangle

Используйте linkRatios вычислить факторы от возраста к возрасту.

factorsTable = linkRatios(dTriangle);

Используйте linkRatioAverages вычислить средние значения факторов от возраста к возрасту.

averageFactorsTable = linkRatioAverages(dTriangle);
dTriangle.SelectedLinkRatio = averageFactorsTable{'Volume-weighted Average',:};
dTriangle.TailFactor = 1;
selectedFactorsTable = cdfSummary(dTriangle);

Отобразите полный треугольник разработки использование fullTriangle функция.

fullTriangleTable = fullTriangle(dTriangle);
disp(fullTriangleTable);
              12        24        36        48        60        72        84        96       108       120      Ultimate
            ______    ______    ______    ______    ______    ______    ______    ______    ______    ______    ________

    2010    3995.7      4635    4866.8    4964.1    5013.7    5038.8      5059    5074.1    5084.3    5089.4     5089.4 
    2011      3968    4682.3    4963.2    5062.5    5113.1    5138.7    5154.1    5169.6    5179.9    5185.1     5185.1 
    2012      4217    5060.4      5364    5508.9    5558.4    5586.2    5608.6    5625.4    5636.7    5642.3     5642.3 
    2013    4374.2    5205.3    5517.7    5661.1    5740.4    5780.6    5803.7    5821.1    5832.7    5838.6     5838.6 
    2014    4499.7    5309.6    5628.2    5785.8    5849.4    5878.7    5900.8    5918.5    5930.3    5936.3     5936.3 
    2015    4530.2    5300.4    5565.4    5715.7    5772.8    5804.1    5825.9    5843.4    5855.1      5861       5861 
    2016    4572.6    5304.2    5569.5    5714.3    5775.4    5806.7    5828.6    5846.1    5857.7    5863.6     5863.6 
    2017    4680.6    5523.1    5854.4    6000.9    6065.1      6098    6120.9    6139.3    6151.6    6157.7     6157.7 
    2018    4696.7    5495.1    5804.4    5949.6    6013.3    6045.9    6068.6    6086.8      6099    6105.1     6105.1 
    2019    4945.9    5819.2    6146.7    6300.5    6367.9    6402.4    6426.5    6445.8    6458.7    6465.2     6465.2 

Вычислите общие резервы с помощью ultimateClaims.

IBNR = ultimateClaims(dTriangle) - dTriangle.LatestDiagonal;
IBNR = array2table(IBNR, 'RowNames', dTriangleTable.Properties.RowNames, 'VariableNames', {'IBNR'});
IBNR{'Total',1} = sum(IBNR{:,:});
disp(IBNR);
              IBNR 
             ______

    2010          0
    2011     5.1857
    2012      16.89
    2013     34.886
    2014     57.583
    2015     88.148
    2016     149.34
    2017     303.29
    2018     609.99
    2019     1519.3
    Total    2784.6

Вычислите предполагаемые стандартные отклонения

developmentTriange соединитесь отношения оцениваются с помощью формулы:

fjˆ=i=0I-j-1Ci,j+1i=0I-j-1Ci,j

Вперед, с отношениями ссылки, параметры отклонения оцениваются как:

σjˆ2=1I-j-1i=0I-j-1Ci,j(Ci,j+1Ci,j-fjˆ)2

Начиная с последнего параметра отклонения σJ-12 не может быть оценен со средством оценки σˆJ-12, метод экстраполяции Мэка используется к оценке σJ-12:

σˆJ-12=min{σˆJ-24σˆJ-32;σˆJ-32;σˆJ-22}

Используя эту формулу, можно вычислить предполагаемые условные стандартные отклонения процесса.

currentSelectedFactors = dTriangle.SelectedLinkRatio;
estimatedStandardDeviations = currentSelectedFactors;
for i=1:width(estimatedStandardDeviations)-1
    estimatedStandardDeviations(1,i) = sqrt(sum(((factorsTable{1:end-i,i} - currentSelectedFactors(:,i)).^2).*dTriangleTable{1:end-i,i}) / (height(dTriangleTable)-i-1));
end
estimatedStandardDeviations(1,end) = sqrt(min([estimatedStandardDeviations(1,end-1)^4 / estimatedStandardDeviations(1,end-2)^2, estimatedStandardDeviations(1,end-2)^2, estimatedStandardDeviations(1,end-1)^2]));

Вычислите резервы и предполагаемые условные стандартные отклонения процесса

Используя последний developmentTriange диагональная информация и спроектированные окончательные требования от developmentTriangle объект, ReservesTable вычисляется.

h = height(dTriangleTable);
ReservesTable = array2table(NaN(h, 9));
ReservesTable.Properties.RowNames = dTriangleTable.Properties.RowNames;
ReservesTable.Properties.VariableNames = {'Latest Diagonal','Projected Ultimate Claims','Reserves','Estimated conditional process standard deviation','Estimated conditional variational coefficient','Conditional Var_hat','variation for Var_hat','MSEP','MSEP Uncertainty'};
ReservesTable.("Latest Diagonal") = dTriangle.LatestDiagonal;
ReservesTable.("Projected Ultimate Claims") = ultimateClaims(dTriangle);
ReservesTable.("Reserves") = IBNR.IBNR(1:end-1,:);

Оцените условное отклонение процесса для окончательного требования одного года несчастного случая как:

Varˆ(Ci,J|DI)=(Ci,JˆCL)2j=I-iJ-1σjˆ2/fjˆ2Ci,jˆCL

и оцените условное отклонение процесса в течение агрегированных лет несчастного случая как:

Varˆ(i=1ICi,J|DI)=i=1IVarˆ(Ci,J|DI)

Вычислите предполагаемый условный вариационный коэффициент на год источника i относительно предполагаемых резервов как:

VCOi=VCOˆ(Ci,J-Ci,I-i|DI)=Varˆ(Ci,J|DI)12Ci,JˆCL-Ci,I-i

summationFactors = zeros(1,h);
for i=length(summationFactors)-1:-1:1
    summationFactors(i) = (estimatedStandardDeviations(1,i)^2 / currentSelectedFactors(1,i)^2) / dTriangle.LatestDiagonal(h-i+1) + summationFactors(i+1);
end
summationFactors = fliplr(summationFactors)';
ReservesTable.("Estimated conditional process standard deviation") = sqrt(ReservesTable.("Projected Ultimate Claims").^2 .* summationFactors);
ReservesTable.("Estimated conditional variational coefficient") = ReservesTable.("Estimated conditional process standard deviation") ./ ReservesTable.("Reserves") * 100;
ReservesTable('Total',:) = array2table([NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN, NaN]);
ReservesTable{"Total","Reserves"} = sum(ReservesTable.("Reserves")(1:end-1));
ReservesTable{"Total","Estimated conditional process standard deviation"} = sqrt(sum(ReservesTable.("Estimated conditional process standard deviation")(1:end-1).^2));
ReservesTable{"Total","Estimated conditional variational coefficient"} = ReservesTable{"Total","Estimated conditional process standard deviation"} / ReservesTable{"Total","Reserves"} * 100;
disp(ReservesTable(:,(2:5)));
             Projected Ultimate Claims    Reserves    Estimated conditional process standard deviation    Estimated conditional variational coefficient
             _________________________    ________    ________________________________________________    _____________________________________________

    2010              5089.4                    0                                0                                               NaN                   
    2011              5185.1               5.1857                        0.0072309                                           0.13944                   
    2012              5642.3                16.89                         0.011214                                          0.066397                   
    2013              5838.6               34.886                         0.014452                                          0.041426                   
    2014              5936.3               57.583                           2.7832                                            4.8333                   
    2015                5861               88.148                           5.8489                                            6.6353                   
    2016              5863.6               149.34                           11.634                                            7.7906                   
    2017              6157.7               303.29                           22.586                                            7.4472                   
    2018              6105.1               609.99                           36.512                                            5.9856                   
    2019              6465.2               1519.3                           77.982                                            5.1329                   
    Total                NaN               2784.6                            90.01                                            3.2324                   

В дополнение к этим оценкам claculated можно получить средство оценки для условной ошибки расчета в течение года источника i как:

Varˆ(Ci,JˆCL|DI)=Ci,I-i2(j=I-iJ-1(fjˆ2+σjˆ2Sj[I-j-1])-j=I-iJ-1fjˆ2)

где

Sj[I-j-1]=i=0I-j-1Ci,j

factor1 = zeros(h,1);
factor2 = zeros(h,1);
factor1(2) = currentSelectedFactors(1,h-1)^2 + estimatedStandardDeviations(1,h-1)^2/sum(dTriangleTable{1,h-1});
factor2(2) = currentSelectedFactors(1,h-1)^2;
for i = 3:length(factor1)
    factor1(i) = (currentSelectedFactors(1,h-i+1)^2 + estimatedStandardDeviations(1,h-i+1)^2/sum(dTriangleTable{1:i-1,h-i+1})) * factor1(i-1);
    factor2(i) = currentSelectedFactors(1,h-i+1)^2 * factor2(i-1);
end
Var_hat = sqrt(dTriangle.LatestDiagonal.^2 .* (factor1 - factor2));

ReservesTable.("Conditional Var_hat")(1:end-1) = Var_hat;
ReservesTable.("variation for Var_hat")(1:end-1) = ReservesTable.("Conditional Var_hat")(1:end-1) ./ ReservesTable.("Reserves")(1:end-1) * 100;

Используя предыдущие формулы, средство оценки для условного MSEP окончательного требования в течение одного года источника i :

msepCi,J|DIˆˆ(Ci,JˆCL)=(Ci,JˆCL)2j=I-iJ-1σjˆ2fjˆ2(1Ci,jˆCL+1Sj[I-j-1])

И средство оценки для условного MSEP окончательного требования в течение агрегированных лет источника:

msepiCi,J|DIˆˆ(i=1ICi,JˆCL)=i=1ImsepCi,J|DIˆˆ(Ci,JˆCL)+21i<kICi,JˆCLCk,JˆCLj=I-iJ-1σjˆ2/fjˆ2Sj[I-j-1]

summationFactorsMSEP = zeros(h,1);
for i=2:length(summationFactorsMSEP)
    summationFactorsMSEP(i) = (((estimatedStandardDeviations(1,h-i+1)^2 / currentSelectedFactors(1,h-i+1)^2)) * (inv(dTriangle.LatestDiagonal(i)) + inv(sum(dTriangleTable{1:i-1,h-i+1})))) + summationFactorsMSEP(i-1);
end
msep = sqrt(ReservesTable.("Projected Ultimate Claims")(1:end-1).^2 .* summationFactorsMSEP);
ReservesTable.MSEP(1:end-1) = msep;
ReservesTable.("MSEP Uncertainty")(1:end-1) = ReservesTable.MSEP(1:end-1) ./ ReservesTable.("Reserves")(1:end-1) * 100;

ReservesTable{'Total','Conditional Var_hat'} = sqrt(sum(ReservesTable.("Conditional Var_hat")(1:end-1).^2));
ReservesTable{'Total','variation for Var_hat'} = ReservesTable{'Total','Conditional Var_hat'} / ReservesTable{'Total','Reserves'} * 100;

disp(ReservesTable(:,[2,3,6,7]));
             Projected Ultimate Claims    Reserves    Conditional Var_hat    variation for Var_hat
             _________________________    ________    ___________________    _____________________

    2010              5089.4                    0                  0                    NaN       
    2011              5185.1               5.1857          0.0072985                0.14074       
    2012              5642.3                16.89          0.0099066               0.058655       
    2013              5838.6               34.886           0.011503               0.032972       
    2014              5936.3               57.583             1.4539                 2.5248       
    2015                5861               88.148             2.7754                 3.1486       
    2016              5863.6               149.34             5.0379                 3.3735       
    2017              6157.7               303.29             9.1852                 3.0285       
    2018              6105.1               609.99             13.941                 2.2854       
    2019              6465.2               1519.3             28.137                  1.852       
    Total                NaN               2784.6              33.25                 1.1941       

Вычислите MSEP

Измерьте качество предполагаемых окончательных требований путем вычисления MSEP и MSEP Uncertainty.

summationFactorsCovarianceTerm = zeros(h,1);
for i=2:length(summationFactorsCovarianceTerm)
    summationFactorsCovarianceTerm(i) = ((estimatedStandardDeviations(1,h-i+1)^2 / currentSelectedFactors(1,h-i+1)^2) / sum(dTriangleTable{1:i-1,h-i+1})) + summationFactorsCovarianceTerm(i-1);
end

totalSum = 0;
for i = 2:h
totalSum = totalSum + sum(dTriangle.LatestDiagonal(i,1) * fullTriangleTable{i+1:end, h-i+1} * summationFactorsCovarianceTerm(i));
end

covarianceTerm = 2 * totalSum;
totalMSEP = sqrt(sum(ReservesTable.MSEP(1:end-1) .^ 2) + covarianceTerm);

ReservesTable{'Total','MSEP'} = totalMSEP;
ReservesTable{'Total','MSEP Uncertainty'} = ReservesTable{'Total','MSEP'} / ReservesTable{'Total','Reserves'} * 100;
disp(ReservesTable(:,[1,2,3,8,9]));
             Latest Diagonal    Projected Ultimate Claims    Reserves      MSEP      MSEP Uncertainty
             _______________    _________________________    ________    ________    ________________

    2010         5089.4                  5089.4                    0            0             NaN    
    2011         5179.9                  5185.1               5.1857     0.010274         0.19812    
    2012         5625.4                  5642.3                16.89     0.014963        0.088593    
    2013         5803.7                  5838.6               34.886     0.018471        0.052945    
    2014         5878.7                  5936.3               57.583         3.14           5.453    
    2015         5772.8                    5861               88.148        6.474          7.3445    
    2016         5714.3                  5863.6               149.34       12.678          8.4897    
    2017         5854.4                  6157.7               303.29       24.383          8.0394    
    2018         5495.1                  6105.1               609.99       39.083          6.4071    
    2019         4945.9                  6465.2               1519.3       82.903          5.4568    
    Total           NaN                     NaN               2784.6       100.45          3.6074    

Ссылки

  1. Wüthrich, Марио и Майкл Мерц. Стохастические методы резервирования требований в страховке. Хобокен, NJ: Вайли, 2008.

  2. Фридланд, Жаклин. "Оценивая неоплаченные требования Используя основные методы". Арлингтон, ВА: несчастный случай страховое общество, 2010.

Смотрите также

| | | | | | | | | | | |

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте