smooth in python: Multiple Seasonal ARIMA

MSARIMA model fit and point forecast

ARIMA has been a workhorse for decades. But the standard implementations quietly hard-code assumptions: one seasonal cycle, Gaussian errors, regressors handled separately etc. This is fine for textbook well-behaved data. But what do you do when you face real data? The conventional implementations (statsmodels or pmdarima in Python, stats in R) do their job well: … Read more

smooth in python: Multistep losses

Example of fits of ETS with several multistep losses

Why train a forecasting model on one-step-ahead errors when you care about 10-step-ahead accuracy? This is the core motivation behind multistep losses in dynamic models. This has connection with the so-called “direct forecasting strategy”. And here what it is and how to work with it in Python. Conventional maximum likelihood estimation minimises one-step-ahead errors. It … Read more

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: 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

ITISE2025: Beyond summary performance metrics for forecast selection and combination

A gist of pAIC

This year, I couldn’t attend the International Symposium on Forecasting (organised by the International Institute of Forecasters), which I usually do, so instead I went to Gran Canaria for the International Conference on Time Series and Forecasting (aka ITISE). The location was fantastic, and I enjoyed several talks. I was also glad to catch up … Read more

smooth v4.3.0 in R: what’s new and what’s next?

Sticker of the smooth package for R

Good news! The smooth package v4.3.0 is now on CRAN. And there are several things worth mentioning, so I have written this post. New default initialisation mechanism Since the beginning of the package, the smooth functions supported three ways for initialising the state vector (the vector that includes level, trend, seasonal indices): optimisation, backcasting and … Read more

IIF Open Source Forecasting software workshop and smooth

Sticker of the smooth package for R

Here is one thing you have probably not heard of: a workshop on Open Source Forecasting software, held in Beijing on 26th – 27th June 2025. This was a closed event, with speakers attending by invitation only. It focused on recent advancements and potential avenues in open-source forecasting software. But why am I writing about … Read more