Augur
Wholesale electricity price forecasting for the Netherlands
All data includes random noise for educational purposes. Consumer prices include additional taxes and grid fees.
Loading energy price data...
Offshore Wind Speed (10-day)
Solar Irradiance (7-day)
Temperature & Wind (10-day)
Cloud Cover & Humidity
System Imbalance (yesterday)
Cross-border Flows (yesterday)
Load Forecast vs Actual (today+tomorrow)
NL Renewable Production — Forecast vs Actual (NED)
French Nuclear Generation (ENTSO-E)
Loading market data...
Architecture
Model Card
Model Performance
Live convergence tracking. These charts update daily as the model learns from new price observations.
MAE Over Time
Error Distribution (last 500 predictions)
MAE by Hour of Day
Feature Analysis
Feature importance changes dramatically with forecast horizon. At 1h, recent price momentum dominates (R²=0.81). At 48h, only weekly patterns and load forecast survive (R²=0.21).
Feature Importance by Forecast Horizon (Lasso L1)
Correlation Matrix
Data Patterns
Average NL electricity price by hour shows the daily demand cycle. Wind speed scatter reveals the nonlinear wind-price relationship.
Daily Price Profile (6 months avg)
Offshore Wind vs Price
Strategy: Learning to Match the Market
The Convergence Experiment
Day-ahead electricity prices are set by exchanges (EPEX, ENTSO-E) around 13:00 CET, based on aggregated buy/sell bids from hundreds of market participants. Our model predicts these same prices using only publicly available data: weather forecasts, historical prices, and grid conditions.
The key question: how close can an ML model get to the market consensus, and how fast?
We measure this as "vs Exchange MAE" — the average difference between our prediction and the published exchange price for the same hour. This number should decrease over time as the model learns from more data and seasonal patterns.
Hybrid Forecast Strategy
For the first ~29 hours, exchange day-ahead prices are already published. We use these as lag features — giving the model perfect recent price information to predict further out.
For hours 30-48, beyond the exchange horizon, the model relies on its own predictions recursively plus weather/wind forecasts. The confidence band widens here to reflect the increased uncertainty.
Expected Convergence
Now: ~16 EUR/MWh vs exchange (6 months of training data)
1-3 months: ~8-12 EUR/MWh (spring/summer transition learned)
6-12 months: ~5-8 EUR/MWh (full seasonal cycle observed)
The floor is likely ~5 EUR/MWh — intraday surprises (plant outages, interconnector trips) and private market information are fundamentally unpredictable from public data alone.
How It Works
Continuous Learning
predict_one() then learn_one(). It never retrains from scratch.Confidence Bands
Data Pipeline
Target Variable
Feature Decisions
What data we use, what we don't, and why.