progrunners.comenergy & technology
progrunners / Balancing market dashboard

A balancing market dashboard, end to end

One screen showing what the power system is doing right now: system imbalance, reserve activation, renewable output against forecast, prices across markets. Built for our own trading, then hardened until it could be left alone.

Running in production since 2026 on the Czech market. The same architecture ports to any European system.
On this page
  1. What this energy dashboard software actually does
  2. The problem
  3. What it shows
  4. The engineering that took the time
  5. What it runs on
  6. What it would take for another market

What this energy dashboard software actually does

It is real-time energy monitoring for a trading desk: live imbalance, activated reserves, prices and position, refreshed as the data arrives rather than on a schedule. A monitoring dashboard for people whose next decision is fifteen minutes away.

The problem

A balancing position is decided from numbers that live in four different places, publish on four different schedules and use four different formats. By the time you have opened the tabs, the quarter hour you cared about is over.

The requirement was simple to state and unpleasant to build: everything relevant on one screen, never more than a minute stale, and it must not lie when a source goes down.

What it shows

PanelSourceUpdate
System imbalanceTSO, per minute and per quarter hour~1 min
Reserve activation (aFRR, mFRR)TSOper quarter hour
Estimated imbalance priceTSO estimate, later the market operator final valueintraday, then next day
Renewables: actual against forecastENTSO-E A69 and A75hourly
Day-ahead and intraday pricesMarket operator and ENTSO-E A44on publication
Reserve auction resultsregelleistung.netdaily
Cross-border flowsENTSO-Ehourly

The engineering that took the time

Sources fail differently

A SOAP endpoint times out. A REST feed returns 200 with an empty body. A platform serves yesterday's file under today's name. Each needs its own detection, and the dashboard must show stale rather than silently draw an old number as current.

Parsing was the bottleneck, not the network

One source publishes large spreadsheet files. The obvious library took seconds per file, which is fine once and unacceptable every minute. Reading the container directly and streaming the XML inside made it 30 to 50 times faster and turned a background job into something that runs inline.

Caching that survives an outage

Stale-while-revalidate throughout: serve the last good value immediately, refresh behind it, and mark the panel when the refresh has been failing. The dashboard keeps working through a source outage instead of going blank — and it says so.

Timestamps are the whole game

Every value carries when it was published, not only what period it describes. That is what makes the same pipeline usable for backtesting later: you can reconstruct exactly what was on screen at any past moment.

What it runs on

What it would take for another market

The architecture is market-agnostic; only the adapters change. For Germany that means SMARD, Netztransparenz and regelleistung; for Britain, Elexon and NESO; for France, the RTE portal. We have written up each of those in our market data guides.

A first working screen against live data is typically two to three weeks. Everything after that is adding panels and hardening.

Frequently asked questions

Can we see it?
On a call, yes. We do not publish a link because it runs on our own market data and is a working tool rather than a demo.
Would this work for our market?
Yes. The data sources differ but the architecture does not — we have connected TSO, exchange and ENTSO-E feeds across Europe.
Why not use an off-the-shelf platform?
If a vendor covers your market and your workflow, use it. Custom makes sense when you need a specific combination of sources, or logic that a general platform does not express.
How long does a build take?
A first screen against live data in two to three weeks; a full desk tool with alerting and positions, a few months.

Explore the rest of the site

Need a screen like this?

Tell us which market and which decision it supports. We will come back with scope, a price range and what we would build first.

Get in touch