How good are the numbers?
Every model is scored daily against what the grid measured, publishes an 80 % range built from its own recent error, and every data feed is checked hourly. Metrics for windows ending 2026-11-15 00:00 UTC.
25%
Solar error, 30 days
NMAE, dispatchable
16%
Wind error, 30 days
NMAE, fleet
74%
P10–P90 coverage
target 80 %
9/9
Feeds fresh
checked hourly
0
Open alerts
no channel configured
01
Feed health
Each source has a freshness rule. A failing rule opens one alert and closes it when the feed recovers.
Solar weather forecast2 d ahead
fresh
Wind weather forecast2 d ahead
fresh
Day-ahead prices26 h ahead
fresh
Actual load (ENTSO-E)2 h ago
fresh
Cross-border flows2 h ago
fresh
Live solar (Transelectrica)44 min ago
fresh
Live wind (Transelectrica)44 min ago
fresh
Hourly nowcast snapshot42 min ago
fresh
Daily model re-fit16 h ago
fresh
02
Model error
Daylight hours for solar. NMAE and NRMSE are normalised by the mean measured output; bias is estimate minus actual; coverage is the share of measured hours inside the P10–P90 band published at the time.
Solar dispatchable
after price-driven curtailment: the number that reaches the market
Yesterday7 days30 days
NMAE22%20%25%
NRMSE28%25%32%
MAPE28%31%36%
MAE148 MW188 MW229 MW
RMSE183 MW235 MW288 MW
Bias-45 MW-28 MW-41 MW
Coverage88%74%76%
Hours862268
Solar potential
calibrated estimate before curtailment vs measured national solar
Yesterday7 days30 days
NMAE22%20%25%
NRMSE28%25%32%
MAPE28%31%36%
MAE148 MW188 MW229 MW
RMSE183 MW235 MW288 MW
Bias-45 MW-28 MW-41 MW
Hours862268
Wind fleet
68 parks × fleet response curve vs measured national wind
Yesterday7 days30 days
NMAE26%20%16%
NRMSE31%25%20%
MAPE46%36%26%
MAE299 MW194 MW201 MW
RMSE351 MW241 MW263 MW
Bias-32 MW-59 MW-76 MW
Coverage63%77%79%
Hours24167709
03
Uncertainty ranges
Ratio of measured to estimated output over the last 30 days, per condition. The bar spans P10 to P90 on a 0–2× axis, the tick is the median, the line marks 1.0. A forecast hour is multiplied by its condition's ratios. Past forecast vintages are not stored yet, so these are nowcast errors: a floor on day-ahead uncertainty.
Solar potential
calibrated estimate before curtailment vs measured national solar
All skies0.63 · 0.98 · 1.79 n 250
Clear (< 20 % cloud)0.75 · 0.86 · 1.47 n 20
Clear (< 20 % cloud) · normal price0.75 · 0.86 · 1.47 n 20
Partly cloudy0.72 · 1.00 · 1.82 n 34
Partly cloudy · price ≤ 5 €/MWh0.81 · 0.91 · 1.04 n 15
Partly cloudy · normal price0.72 · 1.00 · 1.82 n 34
Overcast (≥ 60 %)0.58 · 0.98 · 1.75 n 208
Overcast (≥ 60 %) · normal price0.58 · 0.98 · 1.75 n 208
Solar, single site
uncurtailed hours only, used for roof and farm panels
All skies0.63 · 0.98 · 1.79 n 250
Clear (< 20 % cloud)0.75 · 0.83 · 1.47 n 20
Partly cloudy0.72 · 1.00 · 1.82 n 34
Overcast (≥ 60 %)0.58 · 0.98 · 1.75 n 208
Wind fleet
68 parks × fleet response curve vs measured national wind
All hours0.62 · 1.08 · 1.68 n 708
Wind < 5 m/s0.29 · 1.20 · 2.22 n 220
Wind 5–9 m/s0.65 · 1.08 · 1.39 n 325
Wind ≥ 9 m/s0.89 · 1.06 · 1.16 n 163
04
Alerts
No notification channel is configured, so alerts are recorded here only. Set ALERT_WEBHOOK_URL (Slack, Discord, n8n or any JSON webhook) or TELEGRAM_BOT_TOKEN and TELEGRAM_CHAT_ID on the server to receive them.
resolved
Wind weather forecast: stale: latest 2026-11-15T23:00Z, forecast must reach 36 h aheadopened 33 h ago · closed 16 h agoresolved
solar_dispatchable error on 2026-11-11's previous day: NMAE 35 % (threshold 35 %)opened 5 d ago · closed 4 d agoresolved
Day-ahead prices: stale: latest 2026-11-06T22:45Z, tomorrow's auction must be loadedopened 9 d ago · closed 9 d agoresolved
Cross-border flows: stale: latest 2026-10-22T11:15Z, no older than 4 hopened 24 d ago · closed 24 d agoresolved
Actual load (ENTSO-E): stale: latest 2026-10-22T11:15Z, no older than 4 hopened 24 d ago · closed 24 d agoresolved
wind error on 2026-10-18's previous day: NMAE 62 % (threshold 60 %)opened 29 d ago · closed 28 d agoresolved
Live wind (Transelectrica): stale: latest 2026-10-14T05:00Z, no older than 3 hopened 33 d ago · closed 32 d agoresolved
Live solar (Transelectrica): stale: latest 2026-10-14T05:00Z, no older than 3 hopened 33 d ago · closed 32 d ago