Home / Statistical Tools / Analysis Tools / Time Series / How-To / Double Exponential Smoothing
Double Exponential Smoothing¶
Holt's method carries two running quantities, a level and a trend, and updates both at every period. This walkthrough uses the same twelve-month demand series as the Quick Start.
Goal¶
Smooth twelve months of demand with the default weights, forecast two periods, and see where the starting level and trend came from.
Sample Data¶
| Demand |
|---|
| 129.0 |
| 136.1 |
| 132.5 |
| 132.6 |
| 136.4 |
| 150.2 |
| 148.8 |
| 151.9 |
| 169.4 |
| 174.9 |
| 183.8 |
| 179.6 |
Steps¶
-
Put the data in Excel
Press Copy for Excel, click cell A1 in a blank worksheet, and press Ctrl+V.
-
Launch the analysis
From the Excel ribbon, select QXL Stat Tools → Analysis Tools → Time Series → Double Exponential Smoothing.
-
Select your data
Select cells A1:A13.
-
Configure the analysis
Tick Demand, then open the Options tab. The Double Exp Smoothing Options group holds three boxes:
- Level (Alpha):, default 0.2
- Trend (Gamma):, default 0.2
- Number of Forecasts:, default 0
Leave both weights at 0.2, set Number of Forecasts: to 2, and click Finish.
Both weights accept the whole range from 0.0 to 1.0 inclusive, and the box clamps anything outside it. Neither is optimized: the analysis uses exactly the numbers you type.
Result¶
A worksheet named DblExp Demand, with columns Index, Actual, Smooth, Predicted and Error.
| Index | Actual | Smooth | Predicted | Error |
|---|---|---|---|---|
| 1 | 129.0 | 124.2215 | 123.0269 | 5.9731 |
| 2 | 136.1 | 131.0172 | 129.7465 | 6.3535 |
| 3 | 132.5 | 135.9370 | 136.7963 | -4.2963 |
| 4 | 132.6 | 139.7554 | 141.5442 | -8.9442 |
| 5 | 136.4 | 143.2839 | 145.0048 | -8.6048 |
| 6 | 150.2 | 148.5913 | 148.1891 | 2.0109 |
| 7 | 148.8 | 152.6216 | 153.5770 | -4.7770 |
| 8 | 151.9 | 156.3130 | 157.4162 | -5.5162 |
| 9 | 169.4 | 162.5896 | 160.8870 | 8.5130 |
| 10 | 174.9 | 168.9832 | 167.5041 | 7.3959 |
| 11 | 183.8 | 176.1149 | 174.1936 | 9.6064 |
| 12 | 179.6 | 181.2876 | 181.7094 | -2.1094 |
| 13 | 186.7978 | |||
| 14 | 192.3080 |
| Metric | Value |
|---|---|
| MAPE | 4.1192 |
| MAD | 6.1751 |
| MSD | 44.1452 |
Smooth is the level after the period's reading has been folded in. Predicted is the one-step-ahead value, formed from the previous period's level and trend before the reading arrives, and it is the column Error and all three accuracy measures use. The two forecast rows extend the last level along the last trend: 181.2876 plus 5.5102, then plus twice that.
Where the First Prediction Comes From¶
Row 1 has a Predicted value of 123.0269, before any smoothing has happened. It is not the first reading, and it is not a guess.
The starting level and trend are the intercept and slope of a straight line fitted to the whole series. For this data that line is the one the Quick Start reports:
y = 117.7409 + 5.2860x
So the level starts at 117.7409 and the trend at 5.2860, and the first prediction is their sum, 123.0269, which is that line's value at period 1. Compare the two pages and the first Predicted value is identical, because at row 1 nothing else has happened yet.
This matters when you reproduce the numbers by hand. A common assumption is that Holt's method seeds itself from the first reading, or from the difference between the first two. This one does not: it looks at every period before it starts.
From row 2 onward the two methods separate, because the smoothing weights start pulling the level and the trend toward whatever the data is doing recently, while the straight line cannot move.
Things to try next¶
- Set Level (Alpha) to 1.0 and re-run. The level jumps straight onto each reading, and Predicted becomes the previous reading plus the current trend. Boundary values are allowed and produce well-defined, if extreme, behavior.
- Compare MAD against the other two analyses on this series. Trend Analysis gets 5.1333, this gets 6.1751, and a three-period Moving Average gets 10.4667. The straight line wins here because the series really is close to straight; on a series that changes direction, a method that can follow it does better.
- Raise Trend (Gamma) to 0.6. The trend reacts faster to each move, which pushes the two forecast rows further from the last level.