Category Archives: ACT2121

Actuariat 1, ACT2121, septième cours

Toujours dans le cadre de la préparation à l’examen P de la SOA, une série d’exercices. Comme il reste trois semaines (en plus de l’examen final), on va essayer de finir de revoir l’ensemble des notions. Les 50 exercices sont en ligne ici. Je mettrais en ligne (très bientôt) l’énoncé et la correction de l’examen intra de lundi (avec – comme la dernière fois – les statistiques de réponse par question)

ACT2121 premier examen

Cet après-midi avait lieu le premier examen d’actuariat 1, préparatoire pour l’examen P de la SOA. Comme pour l’examen P, il y avait des questions à choix multiples, en un temps (très limité). Le sujet est en ligne, ainsi que des éléments de corrections (bientôt) ici. Si vous n’êtes pas d’accord avec mes corrections, merci de me le dire rapidement, si possible avant que je n’attribue les notes…

ACT2121, éléments de correction (2)

Un petit complément pour revenir sur un calcul fait hier, en classe, au tableau.

Une police d’assurance couvre des pertes X et Y qui sont des variables aléatoires continues fonction dont on donne la densité conjointes. Trouver l’espérance du remboursement s’il est de X + Y avec un déductible de 1.

Au tableau, je m’étais lancé dans des calculs un peu compliqué (notant que les variables étaient indépendantes, on pouvait utiliser la convolution pour trouver la loi de la somme facilement… mais on reviendra sur ce calcul plus tard). La solution la plus simple était la suivante: la loi de https://latex.codecogs.com/gif.latex?(X,Y) admet pour densité https://latex.codecogs.com/gif.latex?f_{X,Y}(x,y)=2xboldsymbol{1}_{[0,1]times[0,1]}(x,y). Le remboursement https://latex.codecogs.com/gif.latex?R est la variable aléatoire

https://latex.codecogs.com/gif.latex?R=h(X,Y)=(X+Y-1)boldsymbol{1}_{]1,+infty[}(X+Y)

On peut alors faire le calcul de
https://latex.codecogs.com/gif.latex?mathbb{E}(R)=int_{mathbb{R}^2}%20h(x,y)f(x,y)dxdy
i.e.
https://latex.codecogs.com/gif.latex?mathbb{E}(R)=int_0^1%20int_{1-x}^1%20[x+y-1]2x%20dy%20dx
soit
https://latex.codecogs.com/gif.latex?int_0^1%202xleft[(x-1)y+frac{y^2}{2}<br /> ight]_{1-x}^1%20dx=int_0^1%20x^3dx=frac{1}{4}
Voilà pour la version simple (et finalement assez générale). Pour la version plus compliquée
https://latex.codecogs.com/gif.latex?%20f_{X,Y}(x,y)=2xboldsymbol{1}_{[0,1]times[0,1]}(x,y)=underbrace{2x%20boldsymbol{1}_{[0,1]}(x)}underbrace{%20boldsymbol{1}_{[0,1]}(y)}
autrement dit, on a obtenu que les deux composantes étaient indépendantes, et que https://latex.codecogs.com/gif.latex?%20Y est uniformément distribuée sur https://latex.codecogs.com/gif.latex?%20[0,1]. Aussi, pour la loi de la somme
https://latex.codecogs.com/gif.latex?%20mathbb{P}(S%3Es)=int_{0}^1%20mathbb{P}(S%3Es|Y=y)f_Y(y)dy=int_{0}^1%20mathbb{P}(X%3Es-y|Y=y)dy
et par indépendance,

https://latex.codecogs.com/gif.latex?mathbb{P}(X%3Es-y|Y=y)=mathbb{P}(X%3Es-y)=int_{s-y}^1%20f_X(x)dx

i.e.
https://latex.codecogs.com/gif.latex?mathbb{P}(X%3Es-y|Y=y)=%20int_{s-y}^1%202xboldsymbol{1}_{[0,1]}(x)%20dx=int_{max{s-y,0}}^1%202xdx
soit

https://latex.codecogs.com/gif.latex?mathbb{P}(X%3Es-y|Y=y)=left[x^2<br /> ight]_{max{s-y,0}}^1=1-(max{s-y,0})^2

Aussi

https://latex.codecogs.com/gif.latex?mathbb{P}(S%3Es)=int_{0}^1%20big(%201-(max{s-y,0})^2%20big)dy

Première chose, on note que
https://latex.codecogs.com/gif.latex?mathbb{P}(S%3E1)=int_{0}^1%20big(%201-(max{1-y,0})^2%20big)dy=int_{0}^1%20big(%201-(1-y)^2%20big)dy
i.e.
https://latex.codecogs.com/gif.latex?mathbb{P}(S%3E1)=left[y+frac{(1-y)^3}{3}<br /> ight]_0^1=1+0-frac{1}{3}=frac{2}{3}
J’avais alors suggéré d’utiliser (en utilisant la propriété que pour une variable positive, l’espérance est l’intégrale de la fonction de survie) que
https://latex.codecogs.com/gif.latex?mathbb{E}(R)=int_0^1%20mathbb{P}(R%3Es)ds
Or cette expression n’est valide que pour une variable strictement positive ! Or ici, il y a de forte chance (1/3) que le remboursement soit nul. Le plus simple est alors de faire des calculs classiques d’espérance. Notons que
https://latex.codecogs.com/gif.latex?mathbb{P}(S%3E1+s)=left[y+frac{(1+s-y)^3}{3}%20<br /> ight]_0^1=1+frac{s^3}{3}-frac{(s+1)^3}{3}
donc un peu de calcul de dérivées permet d’écrire https://latex.codecogs.com/gif.latex?f_S(s)=s(2-s) pour https://latex.codecogs.com/gif.latex?sin[1,2]. On peut alors calculer l’espérance du remboursement
https://latex.codecogs.com/gif.latex?mathbb{E}(R)=int_1^2(s-1)f_S(s)ds=int_1^2(s-1)s(2-s)ds
soit
https://latex.codecogs.com/gif.latex?mathbb{E}(R)=int_1^2(s^3+3s^2-2s)ds=left[frac{s^4}{4}+s^3-s^2<br /> ight]_1^2=frac{1}{4}
Youpi, avec plein de calculs, on arrive au même résultat…

Faisons un peu de simulations pour vérifier,

> n=1000000 
> set.seed(1) 
> X=sqrt(runif(n)) 
> Y=runif(n)

On peut vérifier par exemple la densité de https://latex.codecogs.com/gif.latex?S sur https://latex.codecogs.com/gif.latex?[1,2],

> u=seq(1,2,by=.01) 
> hist(X+Y,probability=TRUE,col="light blue") 
> lines(u,u*(2-u),lwd=2,col="red")

Si on regarde maintenant la prime pure, on retrouve le résultat obtenu par deux calculs différents,

> R=(X+Y-1)*(X+Y>1) 
> mean(R) 
[1] 0.2497528

Actuariat 1, ACT2121, troisième cours

Pour la troisième série d’exercices, les exercices sont en ligne ici.

Je rappelle que lundi 29 octobre aura lieu le premier examen (qui compte pour 33,33% de la note finale, comme annoncé dans le plan de cours, en ligne ici). Il y aura 30 questions, en français, du même type que celles vues toutes les semaines. La correction se fera suivant le principe de l’examen P de la SOA

A candidate’s score will be based on the number of questions answered correctly. No credit will be given for omitted answers, and no credit will be lost for wrong answers; therefore, a candidate should answer all questions, even if the candidate needs to guess.

ACT2121, éléments de correction

La plupart des calculs pouvant se faire sans calculs (trop) complexes avec une calculatrice, je vais revenir sur un exercice (l’exercice 11 de la seconde série) pour proposer une correction.

Le petit Nestor collectionne les cartes de joueurs de Baseball dans les paquets de gommes à mâcher. Il y a en tout 20 cartes différentes (réparties aléatoirement, une par paquet). Combien de paquets de gommes Nestor devrait-il s’attendre à avoir à acheter pour obtenir la collection complète ? 

La bonne stratégie était d’ordonner les cartes par ordre d’apparition, pour la première fois, et de modéliser le nombre de paquets entre deux premières apparitions, comme indiqué sur le dessin ci-dessous


Si  désigne le nombre total de paquets à acheter, on note  le nombre de paquets à acheter, entre l’apparition de la ème nouvelle carte, et la ème (avec la convention que vaut 1, i.e. à l’achat du premier paquet, on a notre première carte). On notera que
https://latex.codecogs.com/gif.latex?M_i\sim\mathcal{G}((20-(i-1))/20)
et à partir de là, les calculs sont simples, puisque

https://latex.codecogs.com/gif.latex?mathbb{E}(N)=mathbb{E}(M_1+M_2+cdots+M_{20})

soit (par linéarité de l’espérance)

https://latex.codecogs.com/gif.latex?mathbb{E}(N)=mathbb{E}(M_1)+mathbb{E}(M_2)+cdots+mathbb{E}(M_{20})

i.e.

https://latex.codecogs.com/gif.latex?mathbb{E}(N)=left(%201+%20frac{20}{19}%20+%20frac{20}{18}%20+%20frac{20}{17}%20+%20...%20+%20frac{20}{2}+frac{20}{1}%20<br /> ight)

ou encore

https://latex.codecogs.com/gif.latex?mathbb{E}(N)=20left(%20frac{1}{20}+%20frac{1}{19}%20+%20frac{1}{18}%20+%20frac{1}{17}%20+%20...%20+%20frac{1}{2}+1%20<br /> ight)

La bonne réponse était alors (il faut sommer les vingt termes)

> sum(20/(1:20)) [1] 71.95479

Mais cette sommation de vingt termes n’est pas triviale, aussi, en cours, j’avais suggéré que

https://latex.codecogs.com/gif.latex?1+%20frac{1}{2}%20+%20frac{1}{3}%20+%20frac{1}{4}%20+%20...%20+%20frac{1}{n}%20sim%20ln(n)
> log(20)*20 [1] 59.91465

qui diffère du résultat numérique car il manquait la constante d’Euler

https://latex.codecogs.com/gif.latex?gamma%20=%20lim_{n%20<br /> ightarrow%20infty%20}%20left(%201+%20frac{1}{2}%20+%20frac{1}{3}%20+%20frac{1}{4}%20+%20...%20+%20frac{1}{n}%20-%20ln(n)%20<br /> ight)

i.e.

https://latex.codecogs.com/gif.latex?1+%20frac{1}{2}%20+%20frac{1}{3}%20+%20frac{1}{4}%20+%20...%20+%20frac{1}{n}%20sim%20ln(n)+gamma

Numériquement, on obtient, en prenant pour https://latex.codecogs.com/gif.latex?gamma 0.57721 (cf Google)

> (log(20)+ 0.57721)*20 [1] 71.45885

Actuariat 1, ACT2121, second cours

Comme la dernière fois, je mets en ligne quelques exercices (une soixantaine cette fois). On devrait commencer à parler des lois usuelles de probabilités, pour l’instant des lois discrètes

  • la loi de Poisson

Si https://latex.codecogs.com/gif.latex?X suit une loi https://latex.codecogs.com/gif.latex?mathcal{P}(lambda),

https://latex.codecogs.com/gif.latex?%20%20%20%20%20p(k)%20=%20mathbb%20P(X%20=%20k)=%20e^{-lambda}frac{lambda%20^k}{k!},

Dans ce cas, https://latex.codecogs.com/gif.latex?mathbb{E}(X)=lambda et https://latex.codecogs.com/gif.latex?text{Var}(X)=lambda. La fonction génératrice des moments est alors

https://latex.codecogs.com/gif.latex?%20%20%20%20%20M_{X}(t)=%20mathbb{E}(e^{tX})=expleft(lambda%20(e^t-1)<br />
ight)

  • la loi binomiale

Si https://latex.codecogs.com/gif.latex?X suit une loi https://latex.codecogs.com/gif.latex?mathcal{B}(n,p),

https://latex.codecogs.com/gif.latex?%20%20%20%20%20p(k)%20=mathbb%20P(X%20=%20k)=%20{n%20choose%20k}%20,%20p^k%20q^{n-k}

Dans ce cas, https://latex.codecogs.com/gif.latex?mathbb%20E(X%20)=np et https://latex.codecogs.com/gif.latex?text{Var}(X%20)=np(1-p). La fonction génératrice des moments est alors

https://latex.codecogs.com/gif.latex?%20%20%20%20%20p(k)%20=%20mathbb%20P(X%20=%20k)=%20e^{-lambda}frac{lambda%20^k}{k!},

  • la loi binomiale négative

Enfin,, si https://latex.codecogs.com/gif.latex?X suit une loi https://latex.codecogs.com/gif.latex?%20BN(r,p),

 https://latex.codecogs.com/gif.latex?%20%20%20%20%20p(k)%20=%20mathbb%20P(X%20=%20k)=%20%20frac{Gamma(r+k)}{k!,Gamma(r)},p^r,q^k%20!

Dans ce cas,

https://latex.codecogs.com/gif.latex?%20mathbb%20E(X%20)=%20frac{r(1-p)}{p}!

et

https://latex.codecogs.com/gif.latex?%20text{Var}(X%20)=%20frac{r(1-p)}{p^2}!

La fonction génératrice des moments est alors

https://latex.codecogs.com/gif.latex?%20%20%20%20%20M_{X}(t)=%20mathbb{E}(e^{tX})=%20left(frac{p}{1-[1-p]%20e^t}<br />
ight)^r%20!

Je remettrais la semaine prochaine les lois continues les plus usuelles. Demain, soit on attaque cette nouvelle série, soit on revient sur des exercices de la semaine passée qui auraient posé problème…

Actuariat 1, ACT2121, premier cours

Le premier cours de l’automne d’ACT2121 actuariat I  aura lieu lundi après midi, au local SH3220. Comme il s’agit de préparer l’examen P de la SOA, nous allons passer les séances à faire des exercices. Le plan de cours sera mis en ligne prochainement. L’ouvrage de référence est le livre de Jacques Labelle, exercices de probabilités appliquées. A chaque séance, je proposerai une série de 90 exercices, et on en fera autant que possible (dans les conditions de l’examen, avec préparation de 6 minutes par exercices). Pour la première séance, les exercices sont en ligne,

Je rajouterai au fur et à mesure des compléments de cours, voire des corrections…

Incréments négatifs dans les triangles de paiements

Considérons le triangle d’incréments de payements suivants,

> PAID
     [,1] [,2] [,3] [,4] [,5] [,6]
[1,] 3209 4372 4411 4428 4435 4456
[2,] 3367 4659 4696 4720 4730   NA
[3,] 3871 5345 5338 5420   NA   NA
[4,] 4239 5917 6020   NA   NA   NA
[5,] 4929 6794   NA   NA   NA   NA
[6,] 5217   NA   NA   NA   NA   NA
> INC=PAID
> INC[,2:6]=PAID[,2:6]-PAID[,1:5]
> INC
     [,1] [,2] [,3] [,4] [,5] [,6]
[1,] 3209 1163   39   17    7   21
[2,] 3367 1292   37   24   10   NA
[3,] 3871 1474   -7   82   NA   NA
[4,] 4239 1678  103   NA   NA   NA
[5,] 4929 1865   NA   NA   NA   NA
[6,] 5217   NA   NA   NA   NA   NA

Comme on peut le voir, sur la troisième ligne, on a un incrément de paiementnégatif. A priori, ce n’est pas forcément gênant. En particulier, on peut faire tourner la méthode Chain Ladder,

> lambda=rep(NA,5)
> for(k in 1:5){
+ lambda[k]=(sum(PAID[1:(6-k),k+1])/
+             sum(PAID[1:(6-k),k]))}
> lambda
[1] 1.380933 1.008476 1.008515 1.001858 1.004735
> PROJECTION=PAID
> for(k in 1:5){
+ PROJECTION[((7-k):6),k+1]=
+ PROJECTION[((7-k):6),k]*lambda[k]}
> sum(PROJECTION[,6]-
+ diag(PROJECTION[,6:1]))
[1] 2469.703

et la sortie coïncide avec la fonction R,

> MackChainLadder(PAID)
MackChainLadder(Triangle = PAID)

Latest Dev.To.Date Ultimate    IBNR Mack.S.E CV(IBNR)
1  4,456       1.000    4,456     0.0    0.000      NaN
2  4,730       0.995    4,752    22.4    0.146  0.00652
3  5,420       0.993    5,456    35.8    2.405  0.06721
4  6,020       0.985    6,111    91.3   41.679  0.45629
5  6,794       0.977    6,956   161.5   71.620  0.44334
6  5,217       0.707    7,376 2,158.6   95.750  0.04436

Totals
Latest:            32,637.00
Dev:                    0.93
Ultimate:          35,106.70
IBNR:               2,469.70
Mack S.E.:            146.62
CV(IBNR):  0.059366227164502
Message d'avis :
In Mack.S.E(CL[["Models"]], FullTriangle, est.sigma = est.sigma,
'loglinear' model to estimate sigma_n doesn't appear appropriate
p-value > 5.
est.sigma will be overwritten to 'Mack'.
Mack's estimation method will be used instead.

On notera le message d’avis, laissant entendre qu’il peut y avoir un petit soucis. En fait, le soucis apparaît clairement si on souhaite faire une régression de Poisson. Car autant les valeurs non-entières ne sont pas trop gênantes, autant les valeurs négatives le sont !

> Y=as.vector(INC)
> D=rep(1:6,each=6)
> A=rep(2001:2006,6)
> base=data.frame(Y,D,A)
> reg=glm(Y~as.factor(D)+as.factor(A),
+     data=base,family=poisson(link="log"))
Erreur dans eval(expr, envir, enclos) :
les valeurs négatives sont interdites pour la famille poisson

Il faut alors trouver une solution si on a des incréments négatifs. Et aucune solution ne sera intellectuellement satisfaisante, car avec une valeur négative, il n’y a aucune légitimité pour continuer à utiliser un modèle Poissonnien. Donc on va bricoler…

  • Prendre de l’argent à droite et à gauche

La première solution consiste à dire que cet incrément n’a pas de raison d’être. On va donc aller chercher de l’argent dans la colonne avant (sur la même ligne, on va supposer qu’il s’agit d’un problème sur les cadences de paiements) ou sur la colonne après. Au lieu d’avoir

[3,] 3871 1474   -7   82   NA   NA

On peut renflouer en prenant à gauche,

[3,] 3871 1467   0    82   NA   NA

ou à droite

[3,] 3871 1474   0    75   NA   NA

En faisant ces opérations, on change seulement localement la courbe de paiements pour la troisième année de survenance. On peut se demander si le fait de prendre à gauche a un impact sur l’estimation du montant de provisions, ou sur l’incertitude associée. Pour ça, on peut utiliser les fonctions suivantes,

library(ChainLadder)
CL=function(T){
sum(
MackChainLadder(T)$FullTriangle[,ncol(T)]
-diag(T[,ncol(T):1]))}
CL.SE=function(T){
MackChainLadder(T)$Total.Mack.S.E}
CumInc=function(T){
m=T
for(i in 2:nrow(T)){m[,i]=apply(T[,1:i],1,sum)}
return(m)}

On peut alors regarder, si on prend à droite ou à gauche ce qui se passe, ou ce qui se passe si on renfloue non pas à 0 mais à une valeur strictement positive (e.g. 1),

VCL=rep(NA,8)
for(j in 1:8){
INCd=INC
INCd[3,2:4]=INC[3,2:4]+c(1-j,+7,j-1-7)
VCL[j]=CL(CumInc(INCd))}
plot(1:8,VCL,type="b",col="blue",xlim=c(0,9),ylim=c(2462,2474))
VCL=rep(NA,10)
for(j in 1:10){
INCd=INC
INCd[3,2:4]=INC[3,2:4]+c(1-j,+9,j-1-9)
VCL[j]=CL(CumInc(INCd))}
lines(0:9,VCL,type="b",pch=0,col="red")

avec la courbe bleu si on renfloue à 0, et rouge si on renfloue à 1, pour l’estimation du montant total de provisions,

VCL=rep(NA,8)
for(j in 1:8){
INCd=INC
INCd[3,2:4]=INC[3,2:4]+c(1-j,+7,j-1-7)
VCL[j]=CL.SE(CumInc(INCd))}
plot(1:8,VCL,type="b",col="blue",xlim=c(0,9),ylim=c(130,145))
VCL=rep(NA,10)
for(j in 1:10){
INCd=INC
INCd[3,2:4]=INC[3,2:4]+c(1-j,+9,j-1-9)
VCL[j]=CL.SE(CumInc(INCd))}
lines(0:9,VCL,type="b",pch=0,col="red")

avec cette fois l’impact des transferts sur l’écart-type. En abscisse, on a (à peu de choses près) le montant enlevé sur la colonne de droite. Bref, les transferts venant de la gauche ou de la droite sont une solution, mais le choix d’où vient l’argent ne sera pas neutre, ni sur l’estimation, ni sur la variance de l’estimation (et l’intervalle de confiance).

  • Jouer à faire des translations…

Une autre piste pourrait être de noter que, dans le modèle linéaire, si on translate nos données (vers le haut), on ne change pas la pente, et la constante est juste augmenté (de la taille de la translation).

> lm(dist~speed,data=cars)

Call:
lm(formula = dist ~ speed, data = cars)

Coefficients:
(Intercept)        speed
-17.579        3.932

> lm((dist+10)~speed,data=cars)

Call:
lm(formula = (dist + 10) ~ speed, data = cars)

Coefficients:
(Intercept)        speed
-7.579        3.932

Autrement dit, la prédiction faite par notre modèle n’est pas modifiée par la translation, à condition d’opérer la translation ensuite sur la prédiction. Sur le dessin ci-dessous, on fait pareil, mais avec une régression de Poisson: la courbenoire est sur les données brutes, la courbe bleu est obtenue sur les points translatés vers le haut, et la rouge si on translate la prédiction sur les points translatés,
http://freakonometrics.blog.free.fr/public/perso4/glm-translation.gif
Si la translation est trop importante, la prédiction finale (en rouge) se retrouve davantage éloignée de la vraie valeur (en noir).
Pareillement, on peut translater nos paiements vers le haut dans les triangles, de manière à avoir des paiements positifs. On peut commencer par translater tout le triangle, par exemple en translatant juste assez pour que tous les incréments soient positifs ou nuls,

> k=7
> Y=as.vector(INC)+k
> D=rep(1:6,each=6)
> A=rep(2001:2006,6)
> base=data.frame(Y,D,A)
> reg=glm(Y~as.factor(D)+as.factor(A),
+ data=base,family=poisson(link="log"))
> Yp=predict(reg,type="response",
+ newdata=base)-k
> sum(Yp[is.na(Y)==TRUE])
[1] 2508.620

On peut aussi se demander ce qui se passerait si on décalait davantage vers le haut. On l’a vu sur l’animation, plus la translation est importante, plus la prédiction se décale. Un stratégie pourrait être de faire une estimation pour plusieurs valeurs de translations – de telle sorte que tous les incréments soient positifs ou nuls – et ensuite d’extrapoler pour savoir ce qui se passerait si on ne translatait pas,

> K=7:20
> R=rep(NA,length(K))
> for(i in 1:length(K)){
+ k=K[i]
+ Y=as.vector(INC)+k
+ D=rep(1:6,each=6)
+ A=rep(2001:2006,6)
+ base=data.frame(Y,D,A)
+ reg=glm(Y~as.factor(D)+as.factor(A),
+ data=base,family=poisson(link="log"))
+ Yp=predict(reg,type="response",
+ newdata=base)-k
+ R[i]=sum(Yp[is.na(Y)==TRUE])}
> plot(K,R,xlim=c(0,20),ylim=c(2465,max(R)))
> abline(lm(R~K),col="blue")
> (yp=predict(lm(R~K),newdata=(K=0)))
1
2470.199
> points(0,yp,col="red",pch=19)

 

On a cette fois une estimation plus proche de celle que nous avions en utilisant directement, sur le triangle brut, la méthode chain ladder. Mais on peut aller un peu plus loin. Car dans le triangle, on a translaté toutes les valeurs, alors que seule une était négative. On pourrait par exemple translater seulement les valeurs de la troisième colonne,

> K=7:20
> R=rep(NA,length(K))
> for(i in 1:length(K)){
+ k=K[i]
+ Y=as.vector(INC)
+ D=rep(1:6,each=6)
+ A=rep(2001:2006,6)
+ Y[D==3]=Y[D==3]+k
+ base=data.frame(Y,D,A)
+ reg=glm(Y~as.factor(D)+as.factor(A),
+ data=base,family=poisson(link="log"))
+ Yp=predict(reg,type="response",
+ newdata=base)
+ Yp[D==3]=Yp[D==3]-k
+ R[i]=sum(Yp[is.na(Y)==TRUE])}
> predict(lm(R~K),newdata=(K=0))
1
2469.703

Tiens, on retombe exactement sur l’estimateur de la méthode chain ladder… Étonnant, non ?

Une petite précision. Dans la vraie vie, on ne devrait pas avoir d’incréments négatifs dans les triangles de paiements. Maintenant, il faut reconnaître qu’on en voit apparaître lorsque l’on bootstrappe les résidus, et que l’on génère de pseudo-triangles…
Si des praticiens ont des commentaires sur les incréments négatifs, les commentaires sont ouverts (et peu modérés), donc racontez nous comment vous faites, je suis preneur…