Weather inputs
Kpler’s short-term forecasts for wind, solar, demand, and prices rely on two external weather data providers:
ECMWF (a.k.a. EC) – European Centre for Medium-Range Weather Forecasts
GFS – Global Forecast System from the U.S. National Oceanic and Atmospheric Administration (NOAA)
Both providers run four forecasts per day — 00, 06, 12, and 18 — across two model types :
OP (Operational): A single deterministic scenario (AIFS is too)
ENS (Ensemble): Multiple scenarios (50 for EC ENS, 100 for EC 46, 30 for GFS ENS)
The table below summarizes the daily forecast update times (Availability D+1) and the forecast length for each run.
Model | 00 | 06 | 12 | 18 |
EC OP | 05:30 UTC | 11:20 UTC UPD 15:00 CET | 17:30 UTC | 23:15 UTC |
Length | 14 DAYS | 5 DAYS | 14 DAYS | 5 DAYS |
EC ENS | 06:05 UTC | 12:05 UTC | 18:05 UTC | 00:05 UTC |
Length | 14 DAYS | 5 DAYS | 14 DAYS | 5 DAYS |
EC 46 | 21:05 UTC |
|
|
|
Length | 45 DAYS |
|
|
|
EC AIFS | 05:30 UTC | 11:20 UTC | 17:30 UTC | 23:15 UTC |
Length | 14 DAYS | 14 DAYS | 14 DAYS | 14 DAYS |
GFS OP | 03:55 UTC UPD 10:00 CET | 09:50 UTC UPD 15:00 CET | 15:55 UTC | 21:55 UTC |
Length | 15 DAYS | 15 DAYS | 15 DAYS | 15 DAYS |
GFS ENS | 04:30 UTC | 10:15 UTC | 16:15 UTC | 22:15 UTC |
Length | 15 DAYS | 15 DAYS | 15 DAYS | 15 DAYS |
Please note that :
The default time is UTC, but CET is used for updates.
Delivery times are indicative and may vary in case of weather centre delays.
The times listed refer to when the first forecasted hour becomes available. It may take up to 1 additional hour to complete the full forecast horizon.
Forecast methodology
Our price forecasting combines machine learning and time series analysis, with a strong foundation in fundamental market drivers such as production, consumption, fuel prices, and interconnector capacity.
To ensure transparency and avoid the “black box effect”, our models operate in two sequential steps:
Step 1 – Fundamental Forecasts
We first convert raw weather data (temperature, wind speed, solar radiation, cloud cover, etc.) into forecasts of demand, wind production, solar production
This stage captures the physical supply-demand fundamentals that will later influence price formation.
Step 2 – Price Forecasts
The outputs in MW from the fundamental models are then fed into our machine learning-based price models to forecast hourly day-ahead electricity prices (€ / MWh). This approach combines fundamental analysis with historical market behavior, effectively capturing the complex interplay of physical system dynamics and structural price signals by combining several key parameters, such as:
Annual shape and level of demand
Installed renewable capacity
Fossil and nuclear power plant availabilities
Fuel prices (gas, coal, carbon)
Interconnector constraints
From the changes of these different variables, our model is able to predict for each of the future hours a balance between supply and demand on the merit order for the wholesale market and the bid curves for the reserve prices as it has been studied historically.
We use a single coupled machine learning model that predicts all 40+ interconnected bidding-zone prices simultaneously - this structure helps ensure greater coherence across the European day-ahead market. The model is retrained daily, using an expanding historical window from 2015 to the most recent actuals.
It runs on both ECMWF and GFS, and is updated every time a full daily weather run becomes available. In addition to these runs, we publish additional price updates (UPD) to reflect the latest market information. Each update overwrites the previous version. Once finalized, forecast files are not modified further and are made available via FTP and API access.
Coverage
Zone | Live since | Wind | Solar | Load | Price DA |
Austria | 2019 | ✅ | ✅ | ✅ | ✅ |
Belgium | 2019 | ✅ | ✅ | ✅ | ✅ |
Bosnia and Herzegovina | 2025 | ✅ | ✅ | ✅ |
|
Bulgaria | 2025 | ✅ | ✅ | ✅ | ✅ |
Croatia | 2024 | ✅ | ✅ | ✅ | ✅ |
Czech Republic | 2023 | ✅ | ✅ | ✅ | ✅ |
DK1 | 2025 | ✅ | ✅ | ✅ | ✅ |
DK2 | 2025 | ✅ | ✅ | ✅ | ✅ |
Estonia | 2025 | ✅ | ✅ | ✅ | ✅ |
Finland | 2025 | ✅ | ✅ | ✅ | ✅ |
France | 2019 | ✅ | ✅ | ✅ | ✅ |
Georgia | 2025 | ✅ |
| ✅ |
|
Germany | 2019 | ✅ | ✅ | ✅ | ✅ |
Greece | 2025 | ✅ | ✅ | ✅ | ✅ |
Hungary | 2024 | ✅ | ✅ | ✅ | ✅ |
Ireland | 2025 | ✅ |
| ✅ |
|
Italy | 2021 | ✅ | ✅ | ✅ | ✅ |
IT-Calabria | 2025 | ✅ | ✅ | ✅ | ✅ |
IT-Centre-Nort | 2025 | ✅ | ✅ | ✅ | ✅ |
IT-Centre-South | 2025 | ✅ | ✅ | ✅ | ✅ |
IT-North | 2025 | ✅ | ✅ | ✅ | ✅ |
IT-Sardinia | 2025 | ✅ | ✅ | ✅ | ✅ |
IT-Sicily | 2025 | ✅ | ✅ | ✅ | ✅ |
IT-South | 2025 | ✅ | ✅ | ✅ | ✅ |
Latvia | 2025 | ✅ | ✅ | ✅ | ✅ |
Lithuania | 2025 | ✅ | ✅ | ✅ | ✅ |
Moldova | 2025 |
|
| ✅ |
|
Montenegro | 2025 | ✅ |
| ✅ |
|
Netherlands | 2019 | ✅ | ✅ | ✅ | ✅ |
NO1 | 2025 | ✅ |
| ✅ | ✅ |
NO2 | 2025 | ✅ |
| ✅ | ✅ |
NO3 | 2025 | ✅ |
| ✅ | ✅ |
NO4 | 2025 | ✅ |
| ✅ | ✅ |
NO5 | 2025 |
|
| ✅ | ✅ |
Poland | 2023 | ✅ | ✅ | ✅ | ✅ |
Portugal | 2025 | ✅ | ✅ | ✅ | ✅ |
Romania | 2024 | ✅ | ✅ | ✅ | ✅ |
SE1 | 2025 | ✅ | ✅ | ✅ | ✅ |
SE2 | 2025 | ✅ | ✅ | ✅ | ✅ |
SE3 | 2025 | ✅ | ✅ | ✅ | ✅ |
SE4 | 2025 | ✅ | ✅ | ✅ | ✅ |
Serbia | 2025 | ✅ |
| ✅ | ✅ |
Slovakia | 2024 |
| ✅ | ✅ | ✅ |
Slovenia | 2024 |
| ✅ | ✅ | ✅ |
Spain | 2021 | ✅ | ✅ | ✅ | ✅ |
Switzerland | 2021 | ✅ | ✅ | ✅ | ✅ |
United Kingdom | 2020 | ✅ | ✅ | ✅ | ✅ |
XK | 2025 |
|
| ✅ |
|
Access
API
Forecasts by run date
Returns all four daily forecast runs (00, 06, 12, 18) for a given date.
Horizon forecasts
Provides views of forecasts as they appeared from earlier run dates (e.g., D–1, D–2), useful for revision tracking and performance analysis.Ensemble statistics by run date
For a given run date, provides statistical summaries (min, q25, median, mean, q75, max) calculated across ensemble members from EC ENS and GFS ENS
FTP
For FTP access, connect to:
Host: calc1.cor-e.fr
Port (FTP): 21
Port (SFTP): 2222
Directory paths :
Generation:
4_Supply/Forecast/Generation/COR_E/{Country}/yyyy/mm
Demand:
3_Demand/Forecast/Load/COR_E/{Country}/yyyy/mm
Spot price:
2_Price/Forecast/Day_Ahead/COR_E/{Country}/yyyy/mm
File naming conventions :
wind & solar generation:
CORE_SUPPLY_FORECAST_Generation_CORE_{Country}_{Wind|Solar}_Hourly_{EC|GFS}_{OP|ENS}_yyyymmdd{00|06|12|18}.csv
demand:
CORE_DEMAND_FORECAST_Load_CORE_{Country}_Hourly_{EC|GFS}_{OP|ENS|ENS_SCENARIOS}_yyyymmdd{00|06|12|18}.csv
Spot price:
CORE_PRICE_FORECAST_DayAhead_CORE_{Country}_Hourly_{EC|GFS}_{OP|ENS|ENS_SCENARIOS}_yyyymmdd{00|06|12|18}.csv
For Ensemble forecasts, two files are published for each run:
one
{ENS}
containing the control scenario "0"one
{ENS_SCENARIOS
} containing the all scenarios (30 for GFS and 50 for EC ENS, 100 for EC ENS EXTENDED (a.k.a EC 46)