264. M-Md-M

Fully multiplicative with damped trend

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

Given

  • Smoothing parameters: 𝛼=0.5, 𝛽=0.4, 𝜑=0.8, 𝛾=0.2
  • Initial states: 𝑙0=12, 𝑏0=1, (𝑠−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+𝛾𝜀𝑡)

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⋅10.8⋅1.2=14.4𝜀1=(𝑥1−𝜇1)/𝜇1=(12−14.4)/14.4=−0.1667𝑙1=12⋅10.8(1+0.5⋅(−0.1667))=11𝑏1=10.8(1+0.4⋅(−0.1667))=0.9333𝑠1=1.2(1+0.2⋅(−0.1667))=1.16

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+𝛾𝜀𝑡)
11214.4−0.1667110.93331.16
21010.4093−0.039310.20470.93140.9921
387.71270.03739.82040.95880.806
4119.49560.158410.24781.02821.0317
51412.15490.151811.27371.08461.1952
61211.93570.005412.06271.06940.9932
7910.2583−0.122711.94741.00340.7862
81312.35940.051812.29021.02351.0424
91614.9650.069212.95371.04691.2118
101413.34660.04913.76681.05771.0029
111111.32−0.028314.19511.03410.7817
121515.1986−0.013114.48541.02181.0397
131817.8580.00814.7961.02061.2137
141615.08370.060715.49651.04121.0151
151312.51160.03916.31711.04890.7878
161717.6251−0.035516.65211.02421.0323