1 Introduction

Les sinistres graves sont en général modélisés avec le modèle fréquence-coût. Quand le modèle est finalisé, l’analyse est importante afin de bien comprendre les résultats de modélisation et par conséquent trouver des incohérences éventuelles de modèle.

2 Paramètres de modèle

2.1 Modèle de coût

On peut prendre la loi de Pareto

library(VGAM)
# install.packages("DT")
library(DT)
library(ggplot2)

seuil=2e6
alpha=2.5

2.2 Modèle de Fréquence

On peut prendre la loi de Poisson ou la binomiale négative

  • pour la loi de Poisson, on a besoin uniquement d’un paramètre qui caractérise la moyenne et la variance.
f=10
  • en pratique, on peut voir que la variance n’est pas forcément également à la moyenne, on peut adopter la loi binomiale négative
mf=10
vf=16
# nb=rnbinom(1,size=mf^2/(vf-mf),mu=mf)

3 Nombres de sinistres par tranche

3.1 Programme de simulation

On peut simuler les sinistres par tranche de 1M, de 2M à 20M. Pour chaque tranche, il est possible de calculer les valeurs suivantes :

  • La fréquence moyenne de sinistre par tranche : la fréquence totale pour les sinistres supérieurs à 1M est de 10. Il est important de visualiser la répartition de ce nombre total sur l’ensemble des tranches.
  • Le coût moyen par tranche : plus la tranche est fine, plus la valeur moyenne devrait se situer au milieu de la tranche. La régularité du coût moyen nous donne une indication sur la convergence des valeurs, selon le nombre de simulations donné.
  • On peut également voir l’écart-type des nombres par tranches, ainsi que l’écart-type du coût moyen.
output
##       From      To Mean_frequency Mean_cost Sd_frequency  Sd_cost
## 1  2.0e+06 3.0e+06          6.298  380808.0   2.46602459 119711.7
## 2  3.0e+06 4.0e+06          1.833  419797.6   1.36564123 223772.7
## 3  4.0e+06 5.0e+06          0.748  445868.3   0.87935730 257376.2
## 4  5.0e+06 6.0e+06          0.350  475226.6   0.59821222 274296.5
## 5  6.0e+06 7.0e+06          0.194  479213.3   0.42959114 274184.6
## 6  7.0e+06 8.0e+06          0.130  429465.0   0.35668926 290192.1
## 7  8.0e+06 9.0e+06          0.071  474469.5   0.26081991 296032.6
## 8  9.0e+06 1.0e+07          0.044  394637.6   0.21001930 261091.7
## 9  1.0e+07 1.1e+07          0.027  467604.0   0.16216441 265912.6
## 10 1.1e+07 1.2e+07          0.021  402224.9   0.15027169 277139.6
## 11 1.2e+07 1.3e+07          0.032  552700.8   0.17608807 274117.9
## 12 1.3e+07 1.4e+07          0.015  493371.0   0.12161328 246821.3
## 13 1.4e+07 1.5e+07          0.016  621696.6   0.12553788 220833.1
## 14 1.5e+07 1.6e+07          0.012  399223.2   0.10893974 320587.0
## 15 1.6e+07 1.7e+07          0.006  379443.0   0.07726558 294614.7
## 16 1.7e+07 1.8e+07          0.006  616661.8   0.07726558 277321.9
## 17 1.8e+07 1.9e+07          0.005  623383.9   0.07056897 279233.9
## 18 1.9e+07 2.0e+07          0.006  503434.7   0.07726558 301783.8

3.2 Visualisation des courbes

On peut visualiser le nombre de sinistres par tranche.

output=as.data.frame(output)
# error bar with sd
ggplot(data=output, aes(x=From,y=`Mean_frequency`)) + 
  geom_bar(position=position_dodge(), stat="identity") +
  theme_bw()

On peut construire une barre d’erreur à l’aide l’écart-type pour visualiser la volatilité des nombres. On voit que la moyenne moins la volatilité est parfois négative. Ainsi pour avoir un graphique cohérent, on peut regarder plutôt un quantile donné.

output=as.data.frame(output)
# error bar with sd
ggplot(data=output, aes(x=From,y=`Mean_frequency`)) + 
  geom_bar(position=position_dodge(), stat="identity") +
  geom_errorbar(aes(ymin=`Mean_frequency`-Sd_frequency, ymax=`Mean_frequency`+Sd_frequency),width=0.2,
                position=position_dodge(.1),col=2)+
  theme_bw()

4 Analyse de la probabilité de survenance des sinistres

L’OEP ou Occurence Exceedance Probability caratérise la probabilité de survenance des gros montants. On peut faire des simulations pour obtenir la courbe. Il y a également une formule fermée.

L’AEP ou Aggregate Exceedance Probability caratérise la probabilité des sommes annuelles de sinistres.

4.1 Simulation OEP

sinmax=rep(0,nbsim)
for (k in (1:nbsim)) {
  sin0 = rpareto(rpois(1,f),seuil,alpha)
  sinmax[k]=max(sin0)
}

probs=seq(0,1,0.01)
q=quantile(probs=probs,sinmax)
pr=1/(1-probs) # Période de retour

4.2 Formule fermée OEP

FX=1+(log(probs)/f)

q2=qpareto(p=FX,seuil,alpha)
data.frame(probs=probs,pretour=pr,simul=q,form=q2)
##      probs    pretour    simul     form
## 0%    0.00   1.000000  2395317      NaN
## 1%    0.01   1.010101  2807141  2727293
## 2%    0.02   1.020408  2929852  2911183
## 3%    0.03   1.030928  3084843  3041428
## 4%    0.04   1.041667  3165206  3147374
## 5%    0.05   1.052632  3209088  3239133
## 6%    0.06   1.063830  3340364  3321519
## 7%    0.07   1.075269  3396595  3397236
## 8%    0.08   1.086957  3451206  3467970
## 9%    0.09   1.098901  3531214  3534853
## 10%   0.10   1.111111  3580471  3598684
## 11%   0.11   1.123596  3631410  3660053
## 12%   0.12   1.136364  3661242  3719410
## 13%   0.13   1.149425  3714055  3777106
## 14%   0.14   1.162791  3808803  3833422
## 15%   0.15   1.176471  3867980  3888589
## 16%   0.16   1.190476  3918345  3942799
## 17%   0.17   1.204819  3959620  3996214
## 18%   0.18   1.219512  4001336  4048972
## 19%   0.19   1.234568  4067873  4101193
## 20%   0.20   1.250000  4126397  4152984
## 21%   0.21   1.265823  4171121  4204439
## 22%   0.22   1.282051  4204936  4255641
## 23%   0.23   1.298701  4267863  4306668
## 24%   0.24   1.315789  4291452  4357589
## 25%   0.25   1.333333  4342279  4408469
## 26%   0.26   1.351351  4396110  4459370
## 27%   0.27   1.369863  4445627  4510347
## 28%   0.28   1.388889  4492830  4561454
## 29%   0.29   1.408451  4557139  4612744
## 30%   0.30   1.428571  4622816  4664266
## 31%   0.31   1.449275  4673915  4716068
## 32%   0.32   1.470588  4716607  4768198
## 33%   0.33   1.492537  4781449  4820701
## 34%   0.34   1.515152  4835488  4873624
## 35%   0.35   1.538462  4894415  4927013
## 36%   0.36   1.562500  4924945  4980913
## 37%   0.37   1.587302  4953373  5035370
## 38%   0.38   1.612903  5012145  5090431
## 39%   0.39   1.639344  5118800  5146143
## 40%   0.40   1.666667  5180965  5202555
## 41%   0.41   1.694915  5226101  5259717
## 42%   0.42   1.724138  5273440  5317679
## 43%   0.43   1.754386  5351124  5376494
## 44%   0.44   1.785714  5397442  5436218
## 45%   0.45   1.818182  5438680  5496907
## 46%   0.46   1.851852  5459952  5558620
## 47%   0.47   1.886792  5503865  5621420
## 48%   0.48   1.923077  5557695  5685372
## 49%   0.49   1.960784  5606551  5750544
## 50%   0.50   2.000000  5665376  5817010
## 51%   0.51   2.040816  5719425  5884845
## 52%   0.52   2.083333  5784125  5954132
## 53%   0.53   2.127660  5875771  6024955
## 54%   0.54   2.173913  5949443  6097408
## 55%   0.55   2.222222  5999135  6171587
## 56%   0.56   2.272727  6060186  6247599
## 57%   0.57   2.325581  6151341  6325556
## 58%   0.58   2.380952  6271996  6405579
## 59%   0.59   2.439024  6373306  6487798
## 60%   0.60   2.500000  6435274  6572354
## 61%   0.61   2.564103  6547802  6659399
## 62%   0.62   2.631579  6644123  6749099
## 63%   0.63   2.702703  6714042  6841635
## 64%   0.64   2.777778  6819771  6937201
## 65%   0.65   2.857143  6919013  7036013
## 66%   0.66   2.941176  7040391  7138305
## 67%   0.67   3.030303  7092920  7244338
## 68%   0.68   3.125000  7200176  7354396
## 69%   0.69   3.225806  7404075  7468796
## 70%   0.70   3.333333  7512129  7587889
## 71%   0.71   3.448276  7632708  7712065
## 72%   0.72   3.571429  7846527  7841763
## 73%   0.73   3.703704  7942537  7977473
## 74%   0.74   3.846154  8067970  8119752
## 75%   0.75   4.000000  8170087  8269226
## 76%   0.76   4.166667  8264857  8426613
## 77%   0.77   4.347826  8379181  8592730
## 78%   0.78   4.545455  8607874  8768523
## 79%   0.79   4.761905  8791604  8955085
## 80%   0.80   5.000000  8958686  9153691
## 81%   0.81   5.263158  9172875  9365842
## 82%   0.82   5.555556  9371355  9593316
## 83%   0.83   5.882353  9633108  9838237
## 84%   0.84   6.250000  9886647 10103174
## 85%   0.85   6.666667 10146219 10391265
## 86%   0.86   7.142857 10447373 10706391
## 87%   0.87   7.692308 10822549 11053425
## 88%   0.88   8.333333 11309057 11438585
## 89%   0.89   9.090909 11627014 11869959
## 90%   0.90  10.000000 11793072 12358303
## 91%   0.91  11.111111 12253304 12918308
## 92%   0.92  12.500000 13005286 13570689
## 93%   0.93  14.285714 14082061 14345824
## 94%   0.94  16.666667 15436627 15290538
## 95%   0.95  20.000000 16299326 16481842
## 96%   0.96  25.000000 17626901 18058111
## 97%   0.97  33.333333 19399760 20302174
## 98%   0.98  50.000000 22560709 23925783
## 99%   0.99 100.000000 26000515 31634266
## 100%  1.00        Inf 64117950      Inf

5 Utilisation

Cette analyse peut permettre une meilleure vision des sinistres graves. Elle peut être utile pour le provisionnement, le pricing, et la réassurance.