Lissage exponentiel et séries temporelles

L’idée du lissage exponentiel est de supposer que http://freakonometrics.hypotheses.org/files/2015/12/lex01.gif, où on suppose que le bruit http://freakonometrics.hypotheses.org/files/2015/12/lex02.gif est ici un bruit indépendant (imprévisible). On va alors supposer que

http://freakonometrics.hypotheses.org/files/2015/12/lex03.gif

où http://freakonometrics.hypotheses.org/files/2015/12/le04.gif désigne un poids attribué à la nouvelle observation dans la fonction de lissage http://freakonometrics.hypotheses.org/files/2015/12/lex05.gif.

On parle de lissage pour moyenne mobile à poids exponentiel (ewma, exponentially weighted moving average, évoqué ici ou  sur ce blog). En effet

http://freakonometrics.hypotheses.org/files/2015/12/lex08.gif

i.e., en itérant

http://freakonometrics.hypotheses.org/files/2015/12/lex09.gif

(même s’il faut faire attention à cette décomposition qui, en pratique, s’arrête avec la première observation).

La méthode de Holt-Winters propose de généraliser ce lissage, en introduisant deux (voire trois) composantes.

  • http://freakonometrics.hypotheses.org/files/2015/12/lex05.gif sera interprété comme un niveau
  • http://freakonometrics.hypotheses.org/files/2015/12/lex11.gif correspondant à la variation du processus
  • http://freakonometrics.hypotheses.org/files/2015/12/lex12.gif qui correspond à un cycle (éventuel)

On suppose désormais, dans cette méthode (dite de Holt-Winters), que

http://freakonometrics.hypotheses.org/files/2015/12/lex50.gif

et

http://freakonometrics.hypotheses.org/files/2015/12/HW02.gif

D’un point de vue plus pratique, la programmation se fait comme suit,

> HW=HoltWinters(X,alpha=.2,beta=0)
> plot(HW)

Cette trois composantes seront utilisées pour faire une prévision de la série: la prédiction sera de la forme http://freakonometrics.hypotheses.org/files/2015/12/lex16.gif, à la date http://freakonometrics.hypotheses.org/files/2015/12/lex14.gif, pour un horizon http://freakonometrics.hypotheses.org/files/2015/12/lex17.gif (avec les notations du précédant billet).

> P=predict(HW,24,prediction.interval=TRUE)
> plot(HW,xlim=range(c(time(X),time(P))))
> polygon(c(time(P),rev(time(P))),c(P[,2],rev(P[,3])),
+ col="yellow",border=NA)
> lines(P[,1],col="red",lwd=3)


OpenEdition suggests that you cite this post as follows:
Arthur Charpentier (February 20, 2012). Lissage exponentiel et séries temporelles. Freakonometrics. Retrieved January 23, 2025 from https://doi.org/10.58079/ouki


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.