Model stats
Training accuracy and diagnostic plots
Model error trend over time

Cross-validation RMSE for each forecast run (5-fold). The line is the mean across folds; the band is ±1 standard deviation. A downward trend indicates the model is improving as more data is collected.

Forecast error heatmap — last 7 days

Actual Agile price shown in yellow; thin grey lines are historical forecasts. The heatmap shows how errors evolve over forecast date — warm colours indicate larger error.

Diagnostic plots — last 30 days
1441 half-hour slots · 05 Jun 2026 – 05 Jul 2026
Actual vs Predicted Over Time

Actual Agile prices (amber) versus the spread of all forecasts made in the last 30 days. Red line is the median forecast; the band shows the P10–P90 range across all forecast runs. Narrower bands near recent dates reflect shorter lead times.

Prediction vs Actual Scatter

Each dot is one half-hour slot. Points on the diagonal indicate a perfect prediction. Colour shows forecast lead time — dots from short-lead forecasts should cluster closer to the diagonal.

Residuals Distribution

Distribution of forecast errors. A peak near zero with low spread indicates accurate, unbiased predictions. Positive values mean the actual price exceeded the forecast.

Forecast Error by Horizon

Forecast error distribution grouped by lead time. Boxes show the interquartile range; the diamond marks ±1 standard deviation. Wider boxes at longer lead times indicate less certainty further ahead.

Feature Importance

Average normalised feature importance across the three ensemble models (CatBoost, LightGBM, ExtraTrees). Higher bars indicate features that most strongly drive the predicted price. Updated each time the model retrains.

SHAP Feature Importance

Mean absolute SHAP contribution per feature averaged across all three ensemble models (CatBoost, LightGBM, ExtraTrees), computed on the holdout set. Values are scaled to Agile p/kWh (region X). The per-slot breakdown on the forecast page averages CatBoost + LightGBM only — ExtraTrees is too slow for per-row use with 700 trees.

Why this forecast? — upcoming slots

Top SHAP feature contributions (ensemble average, p/kWh Agile) for the next few half-hourly forecasts. Positive values push the predicted price up; negative values push it down.

Time Est. Agile (p/kWh) Top contributors
04 Jul 20:00 32.9 Time of day +4.37 Embedded wind (MW) -3.05 Demand (MW) +1.65 Dispatch capacity (MW) -1.0
04 Jul 20:30 33.8 Time of day +4.28 Embedded wind (MW) -2.86 Demand (MW) +1.6 Dispatch capacity (MW) -0.99
04 Jul 21:00 33.1 Time of day +4.24 Embedded wind (MW) -2.38 Demand (MW) +1.31 Dispatch capacity (MW) -1.05
04 Jul 21:30 34.1 Time of day +3.89 Embedded wind (MW) -1.48 Demand (MW) +1.28 Dispatch capacity (MW) -0.91
04 Jul 22:00 33.8 Time of day +2.93 Demand (MW) +1.18 Embedded wind (MW) -0.87 Dispatch capacity (MW) -0.84
04 Jul 22:30 32.4 Time of day +2.51 Demand (MW) +0.83 Embedded wind (MW) -0.82 Dispatch capacity (MW) -0.59
04 Jul 23:00 35.2 Time of day +2.67 Demand (MW) +0.58 Dispatch capacity (MW) -0.49 FR solar rad. (W/m²) +0.41
04 Jul 23:30 34.2 Time of day +2.46 Dispatch capacity (MW) -0.55 Forecast age (days) +0.5 Weekend -0.38
Feature set experiment
Last run: 25 Jun 2026 13:19 UTC

Walk-forward cross-validation (5 folds, 21-day train / 3-day test) across 10 candidate feature sets, scored on weighted MAE + RMSE with near-term forecasts upweighted (≤3 days at 3×, ≤7 days at 2×). The winning set — fr_weather — is highlighted in green and is used for all subsequent runs until the next experiment (scheduled every 14 days).