The gas-power nexus: why you can't model electricity in a vacuum

In European power markets the clearing price is set by the merit order, and at the margin — for most trading hours — sits natural gas. If you are forecasting day-ahead electricity prices or the frequency of winter spikes, grid fundamentals (load and wind) are only half the equation. You have to model the gas side too.

The alignment nightmare: zones vs countries

A proper gas-to-power feature set needs three ingredients:

1. Gas storage fullness and withdrawals — how much fuel is available. 2. Gas-fired electricity generation — how fast it is being burned. 3. Day-ahead power prices — what the market is clearing at.

The data exists — Gas Infrastructure Europe publishes storage (AGSI) and LNG (ALSI); ENTSO-E publishes generation and prices. The problem is spatial alignment. ENTSO-E data is by bidding zone: Germany and Luxembourg share DE_LU, Italy fractures into six zones, Denmark splits into DK1/DK2. Gas storage is published by ISO country code. So you cannot just JOIN German gas withdrawals to German gas-fired burn — you have to build a crosswalk that rolls bidding-zone power up to the ISO country, handling interconnectors and fractional mappings without double-counting.

The pre-joined solution

We built that mapping architecture once. Our pipeline reconciles GIE storage and LNG inventory with ENTSO-E generation and pricing at the ISO-country level, into clean daily panels:

Don't spend a week mapping bidding zones to country codes. The panel is already joined — browse the gas & power catalog and start from the analysis.

Skip the ETL

Stop building parsers. Start at the analysis.

We've already cleaned, documented and QC'd sources like the one in this post into query-ready Parquet - with a free sample on every dataset. Buy a file from €9, or go All-Access for the lot.