243. M-Ad-M

Damped multiplicative Holt-Winters

ETS(𝑀,Ad,𝑀)𝑥𝑡=(𝑙𝑡1+𝜑𝑏𝑡1)𝑠𝑡𝑚(1+𝜀𝑡)𝑙𝑡=(𝑙𝑡1+𝜑𝑏𝑡1)(1+𝛼𝜀𝑡)𝑏𝑡=𝜑𝑏𝑡1+𝛽(𝑙𝑡1+𝜑𝑏𝑡1)𝜀𝑡𝑠𝑡=𝑠𝑡𝑚(1+𝛾𝜀𝑡)𝑥̂𝑡+|𝑡=(𝑙𝑡+(𝜑+𝜑2++𝜑)𝑏𝑡)𝑠𝑡+𝑚+
Example: ETS(𝑀,Ad,𝑀)

Given

  • Smoothing parameters: 𝛼=0.5, 𝛽=0.4, 𝜑=0.8, 𝛾=0.2
  • Initial states: 𝑙0=12, 𝑏0=0.5, (𝑠3,𝑠2,𝑠1,𝑠0)=(1.2,1,0.8,1), seasonal period 𝑚=4
  • Data:
𝑡12345678910111213141516
x𝑡121081114129131614111518161317

Step 1 — formula

Observation:

𝑥𝑡=((𝑙𝑡1+𝜑𝑏𝑡1)𝑠𝑡𝑚)(1+𝜀𝑡)

Conditional mean (one-step-ahead forecast 𝑥̂𝑡|𝑡1=𝜇𝑡):

𝜇𝑡=(𝑙𝑡1+𝜑𝑏𝑡1)𝑠𝑡𝑚

Innovation:

𝜀𝑡=(𝑥𝑡𝜇𝑡)/𝜇𝑡

State updates:

𝑙𝑡=(𝑙𝑡1+𝜑𝑏𝑡1)(1+𝛼𝜀𝑡)𝑏𝑡=𝜑𝑏𝑡1+𝛽(𝑙𝑡1+𝜑𝑏𝑡1)𝜀𝑡𝑠𝑡=𝑠𝑡𝑚(1+𝛾𝜀𝑡)

Forecast steps ahead from time 𝑡 (using current-period states):

𝑥̂𝑡+|𝑡=(𝑙𝑡+(𝜑+𝜑2++𝜑)𝑏𝑡)𝑠𝑡+𝑚+

where {1,2,3,} is the forecast horizon (how many steps ahead); 𝑚+=((1)mod𝑚)+1 picks the right seasonal slot for the period steps ahead (cycles through 1,2,,𝑚).

Step 2 — apply at 𝑡=1

𝜇1=(12+0.80.5)1.2=14.88𝜀1=(𝑥1𝜇1)/𝜇1=(1214.88)/14.88=0.1935𝑙1=(12+0.80.5)(1+0.5(0.1935))=11.2𝑏1=0.80.5+0.4(12+0.80.5)(0.1935)=0.56𝑠1=1.2(1+0.2(0.1935))=1.1535

Step 3 — iterate

Each column header is the equation that produced its values. Values rounded to 4 decimal places; arithmetic performed at full precision.

𝑡𝑥𝑡𝜇𝑡=(𝑙𝑡1+𝜑𝑏𝑡1)𝑠𝑡𝑚𝜀𝑡𝑙𝑡=(𝑙𝑡1+𝜑𝑏𝑡1)(1+𝛼𝜀𝑡)𝑏𝑡=𝜑𝑏𝑡1+𝛽(𝑙𝑡1+𝜑𝑏𝑡1)𝜀𝑡𝑠𝑡=𝑠𝑡𝑚(1+𝛾𝜀𝑡)
11214.880.193511.20.561.1535
21010.7520.069910.3760.74880.986
387.82160.02289.88850.50980.8037
4119.48060.160310.24030.19991.0321
51411.99720.166911.26830.85441.1921
61211.78470.018312.06110.77090.9896
7910.18850.116611.93830.02520.7849
81312.34180.053312.27740.27521.0431
91614.89790.07412.95980.591.2097
101413.29240.053213.78940.7581.0002
111111.29930.026514.20520.45390.7807
121515.19560.012914.47450.28811.0404
131817.78870.011914.79240.30041.2126
141615.03490.064215.51510.62631.013
151312.50450.039616.33350.75490.7869
161717.62120.035316.63880.36511.033