Upload
leny-bar
View
210
Download
0
Embed Size (px)
Citation preview
Techniques d’analyse et de prévision de la conjoncture6-837-77
Lissage exponentiel
Alvaro Leal et Jeroen V.K. RomboutsH.E.C. - Montréal
9 janvier 2006
Contenu1. Lissage exponentiel simple page 2
1.1. Définition1.2. Choix de la constante de lissage page 3
2. Application page 43. Références page 11
1. Lissage exponentiel simple1.1.Définition
Soit une série chronologique . Nous sommes à la période T. Nous voulons prédire où h est l’horizon de prévision. Pour ce faire, on fera appel à une méthode qu’on appelle le lissage exponentiel simple. Cette méthode se base sur le fait que plus les observations sont éloignées de la période T, plus leur influence sur la prévision sera faible. On considère que cette influence décroît de façon exponentielle. La formule va comme suit :
(1)
Selon la formule (1), ne dépend pas de l’horizon de prévision, et donc ≡ . La formule (1) tient donc seulement pour les périodes 1 à T. Elle nous indique également que
est une moyenne des observations passées où le poids de chaque observation décroît de façon exponentielle avec la distance1. Le coefficient α (0<α<1) se nomme la constante de lissage. L’inclusion de la constante (1-α) fait en sorte que la somme des poids est inférieure ou égale à 1. Plus α tend vers 1, plus la prévision sera influencée par les observations éloignées dans le temps. D’ailleurs, on dit que la prévision est plus rigide à mesure que α tend vers 1 dans la mesure où la prévision n’est pas sensible aux fluctuations à court terme. Plus α tend vers 0, plus la prévision est influencée par les observations récentes. Soit α = 0.10 et T=3.
= 0.90 + 0.90*0.10 + 0.90*0.102
= 0.90 + 0.09 + 0.009
Dans l’exemple où l’on estime , on remarque que lorsque α est petit (0.10), l’observation la plus récente étant X3 aura beaucoup d’influence (un poids de 0.90) sur . On peut également réécrire (1) sous une forme adaptative, ce qui permet d’interpréter (1) d’une autre manière. Voici la manière de procéder :
(2)
(3)
(4)
(5)
(6)
(7)
(8)
1Dufour, Jean-Marie. Lissage exponentiel. Université de Montréal. Première version : mars 1987, Dernière révision : 17 février 2003. 13 pages
2
(9)
À partir de (8), on peut interpréter comme étant une moyenne pondérée entre la valeur estimée faite en (T-1) et la dernière observation de la série2. On pose et on initialise le processus de lissage à t=1. L’avantage de (8) est qu’on n’a pas à lisser tout le processus de nouveau lorsqu’une nouvelle observation s’ajoute à la série. La formule (9) est écrite sous forme adaptative où est équivalent à la valeur estimée faite en (T-1) plus un terme de correction proportionnel à la différence entre la valeur réalisée en (T) et la valeur estimée en (T-1).
1.2.Choix de la constante de lissage
Pour choisir la constante de lissage, il s’agit de minimiser le critère suivant, qui correspond à la somme au carré de l’erreur de prévision :
Pour ho=1, le critère à minimiser est le suivant :
Pour voir la solution analytique du problème qui permettra de trouver une constante de lissage, consultez Gourieroux et Monfort3 (1983). RATS 6.10 calcule le α pour nous (voir application).
2. Application
2Gourieroux C. et A. Monfort, Cours de séries temporelles. Collection économie et statistiques avancées. Economica. 1983. Chapitre 4. 3Idem
3
*Simulation de la série X1seed 4allocate 300compute nbeg=1, nend=300, nlead=24zero X1equation 1 X1# constant X1{1}associate(variance=1) 1# 0.5 0.5simulate 1 nend 2# 1 X1*Lissage exponentiel simple lorsque la constante de lissage est proche de 1esmooth(alpha=0.95,smoothed=x1_a1) X1 nbeg nend foreX1_a1 nlead**Lissage exponentiel simple lorsque la constante de lissage est proche de 0esmooth(alpha=0.05,smoothed=X1_a2) X1 nbeg nend foreX1_a2 nlead*spgraph(vfields=3)graph(header='Série X1 en niveau') 1# X1 nbeg nendgraph(header='Lissage exponentiel simple de la série X1 avec un alpha élevé') 1# X1_a1 nbeg nendgraph(max=4.0,min=-2.0,header='Lissage exponentiel simple de la série X1 avec un alpha faible') 1# X1_a2 nbeg nendspgraph(done)
Série X1 en niveau
20 40 60 80 100 120 140 160 180 200 220 240 260 280 300-2
-1
0
1
2
3
4
Lissage exponentiel simple de la série X1 avec un alpha élevé
20 40 60 80 100 120 140 160 180 200 220 240 260 280 300-2
-1
0
1
2
3
4
Lissage exponentiel simple de la série X1 avec un alpha faible
20 40 60 80 100 120 140 160 180 200 220 240 260 280 300-2
-1
0
1
2
3
4
La figure 1 représente la série en niveau et les séries avec lissage exponentiel simple
**Calcul des poids
4
*Alpha de 0.95set trend nbeg nend = tset temps nbeg nend = -(t-300)set poids_a1 nbeg nend = (1-0.95)*0.95**(temps)print nend-80 nend poids_a1
ENTRY POIDS_A1 220 0.000825768719 221 0.000869230231 222 0.000914979190 223 0.000963135990 224 0.001013827358 225 0.001067186692 226 0.001123354413 227 0.001182478329 228 0.001244714031 229 0.001310225296 230 0.001379184522 231 0.001451773181 232 0.001528182296 233 0.001608612943 234 0.001693276782 235 0.001782396613 236 0.001876206961 237 0.001974954695 238 0.002078899679 239 0.002188315452 240 0.002303489949 241 0.002424726262 242 0.002552343434 243 0.002686677299 244 0.002828081368 245 0.002976927755 246 0.003133608163 247 0.003298534909 248 0.003472142009 249 0.003654886326 250 0.003847248764 251 0.004049735541 252 0.004262879517 253 0.004487241597 254 0.004723412207 255 0.004972012849 256 0.005233697736 257 0.005509155512 258 0.005799111065 259 0.006104327437 260 0.006425607828 261 0.006763797714 262 0.007119787067 263 0.007494512702 264 0.007888960739 265 0.008304169199 266 0.008741230736 267 0.009201295512 268 0.009685574223 269 0.010195341287 270 0.010731938197 271 0.011296777050 272 0.011891344263 273 0.012517204487 274 0.013176004723 275 0.013869478656 276 0.014599451217 277 0.015367843386 278 0.016176677249 279 0.017028081314
5
280 0.017924296120 281 0.018867680127 282 0.019860715923 283 0.020906016761 284 0.022006333433 285 0.023164561508 286 0.024383748956 287 0.025667104164 288 0.027018004383 289 0.028440004614 290 0.029936846962 291 0.031512470486 292 0.033171021564 293 0.034916864805 294 0.036754594531 295 0.038689046875 296 0.040725312500 297 0.042868750000 298 0.045125000000 299 0.047500000000 300 0.050000000000
spgraph(vfield=3)graph(header='Série X1 en niveau') 1# X1 nbeg nendgraph(header='Lissage exponentiel simple de la série X1 avec un alpha élevé') 1# X1_a1 nbeg nendgraph(header='Poids pour série lissée avec alpha élevé') 1# poids_a1 nbeg nendspgraph(done)
Série X1 en niveau
20 40 60 80 100 120 140 160 180 200 220 240 260 280 300-2
-1
0
1
2
3
4
Lissage exponentiel simple de la série X1 avec un alpha élevé
20 40 60 80 100 120 140 160 180 200 220 240 260 280 300-2
-1
0
1
2
3
4
Poids pour série lissée avec alpha élevé
20 40 60 80 100 120 140 160 180 200 220 240 260 280 3000.0000.0080.0160.0240.0320.0400.0480.056
La figure 2 représente la série en niveau, la série lissée et les poids lorsque alpha=0.95
*Alpha de 0.05set poids_a2 nbeg nend = (1-0.05)*0.05**(temps)
6
print nend-10 nend poids_a2
ENTRY POIDS_A2 290 0.000000000000 291 0.000000000002 292 0.000000000037 293 0.000000000742 294 0.000000014844 295 0.000000296875 296 0.000005937500 297 0.000118750000 298 0.002375000000 299 0.047500000000 300 0.950000000000
spgraph(vfield=3)graph(header='Série X1 en niveau') 1# X1 nbeg nendgraph(max=4,min=-2,header='Lissage exponentiel simple de la série X1 avec un alpha faible') 1# X1_a2 nbeg nendgraph(header='Poids pour série lissée avec alpha faible') 1# poids_a2 nbeg nendspgraph(done)
Série X1 en niveau
20 40 60 80 100 120 140 160 180 200 220 240 260 280 300-2
-1
0
1
2
3
4
Lissage exponentiel simple de la série X1 avec un alpha faible
20 40 60 80 100 120 140 160 180 200 220 240 260 280 300-2
-1
0
1
2
3
4
Poids pour série lissée avec alpha faible
20 40 60 80 100 120 140 160 180 200 220 240 260 280 3000.0
0.2
0.4
0.6
0.8
1.0
La figure 3 représente la série en niveau, la série lissée et les poids lorsque alpha=0.05
graph(pattern,header='Prévisions avec le lissage exponentiel simple',key=upleft) 3
7
# X1 nend-80 nend# foreX1_a1 nend+1 nend+nlead# foreX1_a2 nend+1 nend+nlead
Prévisions avec le lissage exponentiel simple
220 230 240 250 260 270 280 290 300 310 320-1.6
-0.8
0.0
0.8
1.6
2.4
3.2
4.0X1
FOREX1_A1
FOREX1_A2
La figure 4 représente les prévisions effectuées avec le lissage exponentiel simple.La série X1 représente la série originale, la série FOREX1_A1 représente la prévision avec un alpha
élevé, la série FOREX1_A2 représente la prévision avec un alpha faible.
****RATS estime pour nous la constante de lissageesmooth(smoothed=alpha_optimal,constraint,estimate,print) X1 nbeg nend fore_optimal nlead
Exponential Smoothing for Series X1Model with TREND=None , SEASONAL=NoneAlpha (level) 0.489143***Calul des poids pour solution optimalset poids_optimal nbeg nend = (1-0.489143)*0.489143**(temps)print nend-40 nend poids_optimal
ENTRY POIDS_OPTIMAL 260 0.000000000000 261 0.000000000000 262 0.000000000001 263 0.000000000002 264 0.000000000003 265 0.000000000007 266 0.000000000014 267 0.000000000029 268 0.000000000059 269 0.000000000120 270 0.000000000246 271 0.000000000503 272 0.000000001029 273 0.000000002104 274 0.000000004302
8
275 0.000000008794 276 0.000000017979 277 0.000000036756 278 0.000000075143 279 0.000000153622 280 0.000000314063 281 0.000000642067 282 0.000001312637 283 0.000002683544 284 0.000005486215 285 0.000011215974 286 0.000022929847 287 0.000046877593 288 0.000095836173 289 0.000195926698 290 0.000400550960 291 0.000818883149 292 0.001674118098 293 0.003422553523 294 0.006997040789 295 0.014304693697 296 0.029244400303 297 0.059787015869 298 0.122228092538 299 0.249882125551 300 0.510857000000
**Graphique de la solution optimalespgraph(header='Solution optimale calculée par RATS',vfield=3)graph(header='série x1') 1# x1 nbeg nendgraph(max=4,min=-2,header='série lissée optimale') 1# alpha_optimal nbeg nendgraph(header='poids optimaux pour série lissée')# poids_optimal nbeg nendspgraph(done)
Solution optimale calculée par RATSsérie x1
20 40 60 80 100 120 140 160 180 200 220 240 260 280 300-2-101234
série lissée optimale
20 40 60 80 100 120 140 160 180 200 220 240 260 280 300-2-101234
poids optimaux pour série lissée
20 40 60 80 100 120 140 160 180 200 220 240 260 280 3000.000.080.160.240.320.400.480.56
La figure 5 représente la solution optimale calculée par RATS
9
graph(patterns,header='Prévisions avec solution optimal, alpha faible et alpha élevé',key=loleft) 4# x1 nend-80 nend# fore_optimal nend+1 nend+nlead# forex1_a1# forex1_a2
Prévisions avec solution optimale, alpha faible et alpha élevé
220 230 240 250 260 270 280 290 300 310 320-1.6
-0.8
0.0
0.8
1.6
2.4
3.2
4.0
X1
FORE_OPTIMAL
FOREX1_A1
FOREX1_A2
La figure 6 représente les prévisions avec la solution optimale selon RATS.La série X1 est la série originale, la série FOREX1_A1 représente la prévision avec un alpha élevé
(0.95), la série FOREX1_A2 représente la prévision avec un alpha faible (0.05) et la série FORE_OPTIMAL est la prévision avec l’alpha optimal (0.4891)
10
3. Références
Diebold, Francis (2004), Elements of forecasting, Third Edition, Thomson South-Western, Pages 362-366.
Dufour, Jean-Marie (2003), Lissage exponentiel, Université de Montréal, 13 pages.
Gourieroux C. et A. Monfort (1983), Cours de séries temporelles, Collection économie et statistiques avancées, Economica, Chapitre 4.
11