Does deseasonalization help solar and wind forecasting? The Make_Stationary benchmark

Cyril Voyant · Updated 2026-10-18

Key finding

A cleaner residual is not a more predictable one. On nine energy and weather series from Corsica, forecast 1 to 6 hours ahead, removing the daily and annual cycle gives the most stationary residuals with the rolling median and the two ELM operators, but this ranking does not carry over to forecast accuracy.

The wind-speed improvement above is reported in the public repository README. The manuscript is submitted to Energy Reports. Numerical experiments were not re-run for this page.

Stationarity and forecast quality

A residual diagnostic and a forecast evaluation answer different questions. Compare reconstructed forecasts against RAW on the same samples and horizons; do not select preprocessing from stationarity diagnostics alone. Detailed numerical ranks from the submitted manuscript are not reproduced here.

Method in brief

The signal is split additively, Y = S + R. A ratio, as in a clear-sky index, would be singular at night for GHI and PV. The daily and annual phases are encoded by sine–cosine pairs.

Data

Nine variables over 2021–2023, all included in the repository (about 5 MB):

Reproduce

MATLAB with the Econometrics and Signal Processing toolboxes. The Parallel Computing Toolbox is optional and only speeds up runs.

Optimization/optimization_all_variables.m        % 1. grid search of lags L and neurons m
Deseasonalization/main_deseasonalization.m       % 2. 6 methods x 9 variables -> *_FULL.csv, Metrics.csv
Forecasting/main_forecast_GHI_and_GHI_30min.m    % 3a. GHI, with clear-sky references
Forecasting/main_forecasting_PV_WT_PT_WS_T2M.m   % 3b. other variables

Run each stage from its own folder. Two different functions share the name Make_stationary_all_variables.m, and having both folders on the MATLAB path silently shadows one of them.

Paper vs code: documented differences

The repository states these openly. Read them before comparing your numbers with the manuscript.

Scope

This is a benchmark protocol, not evidence that ELM deseasonalization is better in general. Results come from one region, one three-year period and horizons of at most 6 h. The general lesson is methodological: judge a preprocessing step by the accuracy of the final forecast against the raw signal, not by how stationary the residual looks.

Cite and reuse

M. Agoundedemba, C. Voyant, M. Despotovic, L. A. Garcia-Gutierrez, G. Notton, Does Deseasonalization Improve Renewable Energy Forecasting? A Comparative Benchmark, manuscript submitted, 2026.

Software: doi:10.5281/zenodo.21490744 · GitHub repository · Citation file · GPL-3.0, archived in Software Heritage.

Related: PV forecasting with ELM · NICE metrics · cyclostationary persistence operators.