12 Sep 2022
Robyn Lucas

How does Signal work? Part I - Wholesale value forecast

In August, Modo launched Signal, a 3-year projection of battery energy storage revenues. Transparency is a core design principle, meaning all the inputs, assumptions and methodology are accessible to everyone. As such, we’re going to be writing a series of articles explaining exactly how we’ve built Signal, where we’ll look at each aspect of the model in detail, including:

  • Part One - Forecasting wholesale value;
  • Part Two - Forecasting ancillary service value; and
  • Part Three - Calculating model sensitivities.

In Part One, we’ll be focussing on:

  • A high-level overview of the wholesale model;
  • Historical drivers of wholesale market value; and lastly
  • Forecasting the value.

A list of data sources used in the model is provided at the end, split into the sections of this article.


Battery energy storage sites (BESS) make money in two ways - capturing power price spreads (wholesale trading) and participating in ancilliary services (frequency response). Signal considers both of these.

Historically, frequency response has been the main revenue stream for BESS. But, with increasing saturation of these markets and increasing renewable penetration, there will be causing a shift in monetisation strategy toward the merchant case.

As such, in order to forecast BESS revenues, we need to consider both the merchant and ancillary side of the revenue stack. Figure 1 (below) gives an overview of this process.

Figure 1 - High-level overview of Signal model.
  • Firstly we calculate the value available should a battery be exclusively traded in the wholesale market by forecasting the within-day price spread. Not only does this inform how much a battery could make in merchant activity, but it also informs the value of frequency response markets via the idea of opportunity cost.
  • When we talk about opportunity cost, we mean the revenues foregone should a battery choose to exit a market. For example, if a battery could earn £100 in the wholesale market, when tendering into frequency response, it should bid to at least recover the loss of revenues from not participating in wholesale.
  • Having calculated both the revenues from the merchant and ancillary markets, we combine to create an estimate for the fleet-wide average revenues. This is based on several factors, including the saturation of ancillary services (i.e. supply vs demand) in addition to the relative price caps of each of the services.

Historical drivers of wholesale market value

At a fundamental level, batteries make money by charging up at low prices and discharging at high prices - that is, they make money on the spread of power prices within a day. In calculating wholesale value, Signal assumes that batteries capture price spreads over a 24-hour period, as pictured in Figure 2 (below).

Figure 2: Indicative BESS operations when employing a full merchant strategy over a single day. Operations show a 50MW/50MWh system with 85% efficiency cycling once and capturing £190/MW/h spread in the day ahead market.

This min-max daily spread is what we forecast when calculating the value in the wholesale market, or more specifically, the minimum and maximum daily price within a given day. But how do we do this? Historically, two key components have driven the minimum and maximum daily prices within a given day:

  • The short-run marginal cost (SRMC) of operation for gas-fired generation units; and
  • System tightness.

Roughly speaking, these two drivers corresponds to ‘normal’ and ‘extreme’ system conditions. On days where the minimum and maximum daily price follow the SRMCs, we have normal behaviour, whereas system tightness impacts prices more sporadically and characterises the extremes of system behaviour. In the following, we will discuss each in detail.

Short-run marginal cost of gas generation

Figure 3 (below) highlights a key relationship between the minimum and maximum power price within a day and the SRMC of two types of gas-fired generation units, namely peakers and combined cycle gas turbines (CCGTs).

Figure 3 - Short-run marginal cost (SRMC) of gas-fired generation relative to the minimum and maximum prices on the Nordpool day-ahead market. SRMC is calculated based on historical gas prices and relative gas efficiencies of both generation types.

Minimum prices closely track the CCGT SRMC, and the maximum price closely tracks the peaker SRMC. This makes sense since CCGTs have a (comparatively) low running cost and are used most of the time to balance supply and demand on the system. Thus, CCGTs often set the marginal price at times of low demand and thereby the minimum price over the day.

On the other hand, gas peaking assets are less efficient than CCGTs and have faster ramp rates. They are used at times of high demand to fill shortfalls between available supply and demand - and with higher marginal costs, can often set the maximum price on any day.

Returning to BESS, we state a key assumption in calculating wholesale opportunity: wholesale revenues for battery energy storage are underpinned by the differences in thermal efficiencies in the gas fleet.

While the correlation between daily min-max prices and gas-fired generation costs is strong, it does not fully explain price movements, especially over the winter of 2021 and 2022. Across these periods, we see large discrepancies between the operating costs of gas and the min-max daily prices in the day-ahead market. This brings us to our next key driver: system tightness.

System tightness

One key variable that drives prices away from the short-run marginal cost of operation is system tightness, namely the difference between residual demand (demand less generation from wind and solar) and dispatchable generation (total capacity available to generate from non-intermittent sources). Let’s take a look at an example of how system tightness impacts prices.

Figure 4 (below) shows a sample day from January 2022, highlighting the relationship between residual demand, dispatchable generation and margin, in addition to how this can impact prices on the day-ahead market.

Figure 4 - Top, 24h view of demand, dispatchable capacity and resulting margin. Bottom, 24h view of day-ahead prices and margin. Tim horizon covers 14th January 2022.
  • Low wind outturn (1-2 GW) resulted in a residual demand peak of 41.9 GW vs. a 42 GW peak of dispatchable generation.
  • At 17:30, margin (the difference between residual demand and dispatchable generation) fell to 135 MW.
  • With the system very tight, prices across the same period increased dramatically, peaking at £1150/MW/h.

The above exemplifies a key relationship between margin and prices - namely, when margin is tight, the market is willing to pay huge sums to ensure security of supply. Figure 5 (below) shows the observation discussed above, for each half-hour across 2021, with margin shown on the y-axis and marker colour indicating the day-ahead price.

Figure 5 - Relationship between system tightness and day-ahead price from January 2021-January 2022. Note Day-ahead price has been normalised against the gas price to highlight the deviation from SRMC of gas-fired generation during periods of system stress.

Forecasting wholesale market value

In the previous section, we’ve detailed the two key historical drivers of wholesale power prices. Assuming these hold true going forward, our next task is to forecast both of these drivers. That is, quantifying how the short-run marginal cost of gas generation and margin evolve over the forecast horizon.

Short-run marginal cost of gas generation

To forecast running costs for peakers and CCGTs, we take the UK NBP gas calendar month forward curve and generate the projected SMRC for these two types of generation. These are shown in the upper and lower part respectively of Figure 6 (below). The calculation of SRMC is based on the relative efficiencies of both generation types, assuming CCGTs have higher efficiency (48%) than peaking plants (34%).

Figure 6: Gas price (top) and resulting SMRC of gas peaking and CCGT generation (bottom).

Forecasting margin

In order to get a forward view of system tightness, we need to forecast all the variables required to calculate margin, namely:

  • National demand;
  • wind generation;
  • and dispatchable generation.

Each of these values is projected at half-hourly granularity for three years. Margin is then calculated as the difference between dispatchable generation and national demand less wind generation. In the following sections, we will briefly explain how each of these variables is forecast.


Due to the nature of demand, our forward view makes extensive use of seasonal time series models. Specifically, we overlay annual, weekly and daily demand profiles trained on historical data from 2018. The average annual demand level is derived from NG ESO’s System Transformation scenario, featured in the 2022 Future Energy Scenarios publication.

Figure 7 (below) shows the historical decomposition of demand data into its annual level and yearly and daily shapes.

Figure 7 - From top to bottom, left to right. Half-hourly demand shape from January 2009- December 2021; Yearly avg. demand level; Yearly shape, a demand adjustment added to avg. demand levels to account for annual seasonality; Daily shape on weekdays and weekends, a demand adjustment added to avg. demand levels to account for within-day seasonality patterns.

Wind generation

Our forward view of wind generation is based on two variables: half-hourly historical load factors and a forward view of installed wind capacity. To develop a forward view, we simply multiply historical load factors with a forward view of installed wind capacity, again taken from the 2022 FES System Transformation scenario from the ESO.

Figure 8 shows the forward view of wind capacity (annual level), in addition to a sample historical load factor and our resulting forecast for wind generation levels.

Figure 8 - Forward view of wind capacity, historical load factor and sample projection of wind generation from July 2022-July 2025.

It should be noted, that when running the underlying model for Signal, we use several different wind years to provide sensitivities to revenue projections. We will discuss this in more detail in Part Three when we explain how we derive p10, p50 and p90 values for the forecast.

Dispatchable generation

The last piece of the puzzle for calculating a forward view of margin is a view of dispatchable generation. National Grid ESO provides a forecast of the maximum export limit (MEL) on the system over a three-year time horizon, including a breakdown by fuel type. Crucially this forecast provides the peak MEL value per week. As such, we downsample using a regression model trained on historical data to produce a view of dispatchable generation at half-hourly granularity.

Figure 9 (below) show’s both the ESO forecast of MEL and the results of the downsampling to half-hourly granularity.

Figure 9 - Dispatchable MEL projection, derived from ESO forecast of peak, weekly, useable capacity figures.

Combining our forward view of demand, wind generation and dispatchable generation capacity allows us to formulate a 3-year forward view of margin, as seen below in Figure 10.

Figure 10: Forecast of demand, wind, available dispatchable generation (MEL) and the resultant margin going out for 3 years are shown. The gap in the middle of the plots separates the forecasted values from historical data incorporated into the model.

At this point, let’s take a brief step back and recap the discussion so far. First off, we looked at the role of our wholesale value projections within the wider Signal model. Then, we looked at two key drivers of wholesale market value for BESS, namely CCGT-peaker SRMC spreads and system tightness. Lastly, we set our sights on forecasting these two drivers across the next 3 years. All that remains is converting those two drivers into wholesale revenues for BESS.

Forecasting wholesale revenues for BESS

The first step in calculating BESS revenues is forecasting the minimum and maximum daily prices for all days in our forecast horizon. To do this, we built a gradient-boosted regressor model - a machine learning model that takes continuous inputs to predict a continuous output. This model takes our forecasted view of gas running costs and margin and outputs a daily minimum and daily maximum price.

The model is trained on historical data allowing it to learn the relationship between gas running costs, margin and day-ahead prices. Once this relationship is learned, it applies the same relationship to our forward view of gas running costs and margin to give a forward prediction of minimum and maximum daily prices in the day-ahead market.

Currently, the GB BESS fleet is made up of 1567 MW/1720 MWh, a fleet-wide duration of ~1.1 hours. As such, we assume a spread duration of 1.1 hours with a cycling rate of 1 cycle per day and, using the minimum and maximum daily price, calculate the value in the wholesale market for each day in the forecast horizon. See Figure 11 (below).

Figure 11: Signal wholesale revenue projection for 1 cycle a day for circa 1.1 hour systems. The gap in the middle of the plots separates the past values from future predictions.

This concludes Part One of the Signal methodology, diving into how we forecast wholesale value. In Part Two, we will be discussing how we calculate ancillary services revenues for the fleet. If you have any questions, comments or critiques, we’d love to hear them. Please feel free to reach out to a member of the Modo team via Intercom or leave a comment below!

Data Sources

Historical drivers of wholesale market value

  • Gas price - National Grid Gas System Operator system buy price (SBP) hourly actual.
  • Demand - National demand (ND) from National Grid’s data portal
  • Wind generation - Onshore & offshore wind generation from National Grid’s data portal.
  • Wind capacity - Installed capacity of onshore and offshore wind capacity from BMRS.
  • Dispatchable generation - Sum of historic MEL data from BMRS physical BMU data.

Forecasting wholesale market value

  • Forward gas price - Chicago Mercantile Exchange (CME) Gas National Balancing Point (NBP) calendar month futures.
  • Wind capacity - Installed capacity of onshore and offshore wind from FES 2021 (system transformation scenario).
  • Annual demand - Expected TWh consumption from FES 2021 (system transformation scenario).
  • Dispatchable generation: Fuel type output useable 3-year, weekly data taken from BMRS.