smooth in python: Non-normal distributions in ETS/ARIMA

So, you know quite well that the normal distribution is one of the most popular distributions in statistics. The reasons are manifold, including convenience for the academic community and the fact that it is taught in every single statistics course in the world. But what if we don’t want to be normal? There are situations … Read more

smooth in python: multiple seasonal ETS

Another interesting case in demand forecasting is the high frequency data. For example, if you work with demand on daily level, you might notice that demand increases every Monday but also exhibits proper seasonal fluctuations (e.g. decline every Winter). What do you do in this case? One of the solutions (old but gold) is the … Read more

smooth in python: ETS with explanatory variables

We continue our series of posts on the functions from the smooth package for Python/R. Today we will see how to enhance your exponential smoothing with explanatory variables. What? Yes, you heard me! Let’s dive in! We all know that in real life sales don’t just evolve over time on their own. Any univariate model, … Read more

smooth in python: ETS forecast combination

Last time we saw how to do automated model selection using the ES function from the smooth package. Now I want to show how to produce combined forecasts from ETS. Why bother? There is a vast body of literature on forecast combinations (read this great review). The main idea is that you should not put … Read more

smooth in python: ETS with model selection

As some of you have heard, the smooth package is now on PyPI. So, I’ve decided to write a series of posts showcasing how some of its functions work. We start with the basics, ETS. ETS stands for the “Error-Trend-Seasonal” model or ExponenTial Smoothing. It is a statistical model that relies on time series decomposition … Read more

smooth forecasting with the smooth package in Python

Here is another piece of news I have been hoping to deliver for quite some time now (since January 2026 actually). We have finally created the first release of the smooth package for Python and it is available on PyPI! Anyone interested? Read more! On this page: Why does “smooth” exist? A bit of history … Read more

Fundamental Flaw of the Box-Jenkins Methodology

Sarah by Yegor Kamelev

If you have taken a course on forecasting or time series analysis, you’ve probably heard of ARIMA and the Box–Jenkins methodology. In my opinion, this methodology has a fundamental flaw and should not be used in practice. Here’s why. When Box and Jenkins wrote their book back in the 1960s, it was a very different … Read more

Why is it hard to beat the Simple Moving Average?

Intermittent demand and a forecast

Simple Moving Average (SMA) is one of the basic forecasting methods. It doesn’t rely on time series decomposition, doesn’t have a seasonal component, and doesn’t include explanatory variables. Yet, in a supply chain context, SMA is sometimes a tough benchmark to beat. Why? First things first, SMA is simply the arithmetic mean of several recent … Read more

Multistep loss functions: Geometric Trace MSE

While there is a lot to say about multistep losses, I’ve decided to write the final post on one of them and leave the topic alone for a while. Here it goes. Last time, we discussed MSEh and TMSE, and I mentioned that both of them impose shrinkage and have some advantages and disadvantages. One … Read more

Multistep loss functions: Trace MSE

As we discussed last time, there are two possible strategies in forecasting: recursive and direct. The latter aligns with the estimation of a model using a so-called multistep loss function, such as Mean Squared Error for h-steps-ahead forecast (MSEh). But this is not the only loss function that can be efficiently used for model estimation. … Read more