I'm currently working with an ERP system that applies Exponential Smoothing to what it defines as "demand," which is itself a simple 90-day moving average of sales. I initially didn't trust it whatsoever since I found I had much better results doing exponential smoothing with optimization of hyperparameters, but I'm now being asked to rely on the ERP system's baked in forecasting instead of providing my own external forecasts. Alarms are going off in my head here. I'd like to understand what kind of issues I might face going forward, and how to compensate for them. Currently I'm still going to keep running my own forecasts on the side to keep it honest.

Thanks in advance

Edit: To clarify. Here is what's happening at each stage with the ERP:

Time series of sales per day $t$ with $n$ consecutive measurements, one for each day. Zeroes included. First measurement is labelled $t_0$ and is always nonzero, last measurement is labelled $t_{n-1}$ and is present day.

  1. Find your "demand" sequence $d$ such that
    $$d_i=\frac{1}{90}\sum_{k=i-89}^{i}{t_k} \mid i\ge 89$$
  2. Apply backcasted Exponential Smoothing (Single, Double, or Triple) to $d$ to find initial values for level and trend $\ell_0$ and $b_0$ using default hyperparameters for $\alpha=.15$, $\beta=.15$, $\gamma=.5$.

  3. (SPECULATIVE since documentation is fuzzy here) Optimize with initial values of $\ell_0$ and $b_0$ to find values for $\alpha$, $\beta$, and $\gamma$.

  4. Solve for $d_{n-89}$

My concern with this lies with the fact that the sequence, $d$, is a moving average. Rather than just applying Exponential Smoothing directly with sales (which is what I do), it is first averaging the series and THEN feeding it to the Exponential Smoothing model. I'm not sure what ramifications this might have and was looking for guidance as to what unusual behavior I can expect, if any, by this method.

  • $\begingroup$ Your words somewhat confuse me. Perhaps you could provide data and the results at each stage in order to clarify your problem/worry. $\endgroup$
    – IrishStat
    Dec 30 '19 at 20:38
  • $\begingroup$ @IrishStat I have updated this a little more. Please let me know if you need even more clarification, I'll get to it as soon as I can $\endgroup$
    – cegarza
    Dec 30 '19 at 21:54

As you presented you are first applying filter1 ( equal weights ) ( 90 day average ) and then you are applying filter2 to analyze/convert/smooth those results.

This is akin to creating a cumulative series from a random series and then finding that the best filter to forecast this new series is to difference it.

Two rongs don't make a rite ( so to speak !) . The results will be unpredictable and probably useless.

You injected "silly" and are using "silly" to extract a resultant/composite of silliness ...where silly in my opinion is ANY assumed filter .

By computing an average , albeit a 60 period average , one unknowingly injects autocorrelation into the derived series only to possibly pull it out (detect it) in the second phase. This injection is the basis of Slutsky's theorem .


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.