Markets and trading · Edition No. 5 · 30 Aug 2026

skforecast/skforecast

scikit-learn-compatible time-series forecasting with rolling-origin backtesting built into the core — the anti-overfitting step most forecasting projects are missing.

← Markets and tradingRead the whole edition →
12

skforecast/skforecast

💎 hidden gem

1.5k stars · BSD-3-Clause · v0.24.0 (2026-08-24) · Track this in Scout

scikit-learn-compatible time-series forecasting with rolling-origin backtesting built into the core — the anti-overfitting step most strategy work is missing.

▶Repo detailsthe review · specs · pros & cons · install

What it is

A library that turns any scikit-learn-compatible model into a time-series forecaster, with the awkward parts — lag features, multi-step recursion, exogenous variables — handled automatically. Its distinguishing feature is that backtesting is built into the core: rolling-origin and expanding-window validation, hyperparameter search that respects time order, and probabilistic intervals rather than a single number.

What it is good for. Everything this radar has covered for trading research so far finds candidates: STUMPY finds repeating shapes, tsfresh finds predictive properties, backtesting.py tests a rule you wrote. The gap is the step in between — turning "these features look significant" into a model that is validated the way time-series models have to be validated, on data that comes strictly after the data it learned from. Get this wrong by even one bar and a strategy that is really noise will show you a beautiful equity curve; that mistake is the single most common way a solo trader loses a year. And the licence is the practical detail: BSD-3-Clause, so unlike backtesting.py and vectorbt this can sit inside a paid product feature, next to quantstats.

Stars1.5k
LicenceBSD-3-Clause
Latestv0.24.0 (2026-08-24)checked 7 Sep 2026
Written inPython
RunsLocally, on your own machine
Setup effort
2 / 5
Payoff
4 / 5
Good
  • Rolling-origin backtesting and time-aware hyperparameter search are the core API, not something you have to remember to do correctly
  • BSD-3-Clause — commercially safe, which two of the three backtesting options this radar has covered are not
  • Any scikit-learn model works, so a linear baseline and a gradient-boosted model are one line apart, and the baseline usually deserves to win
Watch for
  • It forecasts a series; it does not model a trade. Spread, slippage, position sizing and stops are still yours to add before any number means money
  • 1.5k stars and a small Spanish research team behind it — excellent documentation, real bus-factor risk
  • The docs are licensed CC BY-NC-SA even though the code is BSD, so do not lift documentation text into your own docs or marketing pages
Replaces

And the licence is the practical detail: BSD-3-Clause, so unlike backtesting.py and vectorbt this can sit inside a paid product feature, next to quantstats .

Works well with

And the licence is the practical detail: BSD-3-Clause, so unlike backtesting.py and vectorbt this can sit inside a paid product feature, next to quantstats .

Install
pip install skforecast
Screenshots
skforecast/skforecast: GitHub preview card

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.