| Horizon | Quarters | Since | Log loss ensemble | Log loss benchmark | Live skill |
|---|---|---|---|---|---|
| 0–1 h | 326 | 12 Oct | 1.001 | 1.097 | 8.8% |
| 1–2 h | 474 | 12 Oct | 1.042 | 1.105 | 5.6% |
| 2–3 h | 470 | 12 Oct | 1.073 | 1.112 | 3.5% |
| 3–4 h | 466 | 12 Oct | 1.055 | 1.096 | 3.7% |
| Day-ahead | 634 | 13 Oct | 1.042 | 1.135 | 8.1% |
Every forecast is saved before its quarter starts and never changed, and is scored once the imbalance data for that quarter is published. A few days of live data say little: differences of a few percent take months to show.
This tests whether tomorrow’s imbalance can be forecast well enough before the auction to be worth a position. A position on the day-ahead auction without physical power is settled at the imbalance price. Buying a quarter earns the imbalance price minus spot, selling it earns spot minus the imbalance price. Every morning before the auction, with imbalances up to 09:00 and the price forecast in place of the spot price, the model goes long where the expected spread is above the fees (0.188 €/MWh) and short where it is below minus the fees. The positions are saved before the auction and never changed.
This is a paper test, not trading. Energinet expects a balance responsible party to aim to be in balance, so whether this may be done on purpose depends on the market rules and the party’s agreement.
What is forecast. Each quarter-hour Energinet balances DK1 by activating reserves up or down. The direction sets the imbalance price: above spot when the system is short, below when it is long. The models give the chance of each direction and the spread between the imbalance price and spot.
When. Every hour for the next 4 hours, once a day after the auction for all of tomorrow, and once before the auction for the day-ahead to imbalance positions.
Inputs. Calendar, the spot price, wind and solar forecasts made 48 hours ahead and recent imbalances. For the next hour also the real-time state of the grid.
Models. A multinomial lasso and XGBoost, one per hour ahead, refit weekly. The forecast is their average. Benchmark: how often each direction happened in that hour over the last 28 days.
Spread. Recent spreads of the same direction with a similar spot price, weighted by the direction probabilities.
Tests. Log loss and pinball loss against the benchmark, Diebold-Mariano with Newey-West, a calibration chart and the value of picking a side. They are on the backtest page.
Data: Energi Data Service (Energinet), weather by Open-Meteo.
Code: github.com/jacobazu/dk1-imbalance-forecasting
Last updated: 19 October 2026, 15:02 (Danish time)