German Dispatch Model

Optimizing battery dispatch across German markets

For an overview of available revenue streams and market structures, see the Revenue Stack page.


Illustrative 15-min Dispatch

The model optimizes battery operations at 15-minute granularity, co-optimizing across energy and ancillary service markets:

Multi-market Optimization

The dispatch model solves across multiple market stages:

  1. Day-ahead step – contracts volume in day-ahead, FCR, and aFRR capacity markets with perfect foresight
  2. Intraday step – perfect foresight, representing an intraday auction, honoring day-ahead commitments
  3. Real-time step – sequential optimization for real-time dispatch and aFRR energy activation, using the foresight below

Market rules are respected: symmetric provision of FCR charge and discharge is required, and the maximum FCR capacity is limited to 80% of the maximum power of the asset.

Real-time foresight

The real-time step has imperfect foresight, with a rolling two-hour window of perfect foresight. Beyond that perfect-foresight window, the model plans against a blend of 80% real-time price and 20% intraday price. This represents what a real trader could see in the morning, looking ahead on the day, as prices slowly move from their intraday auction level to their more extreme real-time level. The same blend is used for aFRR energy activation in this step.

Intraday Market Saturation and Liquidity Awareness

The Intraday Continuous market — represented by real-time prices in our model — only has limited liquidity and depth. This depth is a function of renewable forecast error, the amount of churn or non-physical trading, and the pool of flexible assets trying to access this market.

Over time, as more flexible assets enter the market, this has an effect both on prices and addressable volumes. Prices get closer to their fundamental level — represented in the model as the intraday auction price — when there is enough BESS capacity available to remove price volatility.

Addressable volumes also shrink over time, which has an impact on larger assets first. In each settlement period, the battery can retrade only up to a MW cap, changing by the time of day and by forecast year. If the cap is above nameplate, the battery can use the continuous market in full.

The cap is the addressable pool in that period. The pool starts from net-load forecast error, retraded several times. It is then divided by the de-rated flexible fleet — grid-scale batteries, pumped hydro and flexible gas — and shaped by time of day. The fleet grows faster than the market, so the MW available to each asset falls through the 2030s. The cap rarely binds for a battery around 50 MW. It does above about 500 MW.

A schedule freeze scales this cap down further by removing the volume that trades inside the frozen window.

aFRR Energy Activation

The model accounts for expected energy activation in aFRR.

  • It uses a flat activation probability for each direction (up and down), derived from historical activation data
  • Energy payments are based on these activation probabilities, and energy price
  • Impact on battery state of charge is included in the optimization, as well as throughput into cycling constraints.

Data Sources for Ancillary Service Modelling

The frequency response inputs to the model come from published German market data:

Input Source
FCR capacity prices and auction volumes Regelleistung.net, the German grid operators’ tendering platform
aFRR capacity prices and auction volumes Regelleistung.net
aFRR energy activation prices ENTSO-E Transparency Platform
aFRR energy demand Regelleistung.net
Historical FCR and aFRR activation volumes Netztransparenz.de, the German grid operators’ data platform

The historical activation data is used to derive the flat, per-direction activation probabilities described above, so that modelled aFRR energy revenues reflect how often batteries are, on average, called on in practice.

Inertia (Momentanreserve) revenue is modelled as a ten-year contracted stream

Inertia is treated as a contracted, exogenous revenue stream rather than a co-optimized market product. Eligible assets receive a flat ten-year contract payment over the contract horizon, scaled by an assumed availability factor.

  • Price source: the German TSO Momentanreserve published prices for 2 to 10-year contracts starting in the 2026-27 period
  • Contract horizon used in the model: ten years, the upper end of the published 2 to 10-year contract range
  • Availability assumption: 95%, derived from operational unavailability data observed in Great Britain (no equivalent German dataset is currently available)
  • Qualifying capability: only the inverter’s overload capability - the megawatts that can be delivered above rated power for a few seconds - is monetized in inertia; no headroom is taken from the rated power of the asset
  • No co-optimization: inertia revenue does not compete with day-ahead, FCR, aFRR, or intraday in the dispatch decision, because the volume is committed to the long-term contract

Fields and behaviour

To enable inertia revenue in a forecast run, two settings on the Battery tab of the forecast creation flow must be configured together:

Field Location Effect
Grid-forming inverter Battery tab, toggle Must be toggled on. Identifies the asset as grid-forming and inertia-ready; required for any inertia revenue to be reported.
Inverter Overload Capacity Battery tab, % of rated power The fraction of rated power that the inverter can briefly exceed (for a few seconds). With the grid-forming toggle on, entering a value above 0% qualifies the asset for inertia revenue. Modelled inertia revenue scales linearly with the entered value, and is reported separately in results.

If the grid-forming inverter toggle is off, no inertia revenue is modelled regardless of the Inverter Overload Capacity value.

Worked example

A grid-forming inverter that can deliver 130% of its rated power for a few seconds has a 30% Inverter Overload Capacity. With the grid-forming inverter toggle on and 30 entered into the field on an asset with 100 MW rated power, 30 MW of inertia capability is qualified for the ten-year contract. The reported inertia revenue covers those 30 MW across the full ten-year contract horizon, scaled by the 95% availability assumption.

Ancillary service capacity is capped by a single combined limit

The Ancillary Services Restriction field on the Battery tab limits how much of the asset can be committed to ancillary services. It is entered as the percentage of rated power that is eligible for ancillary market participation. Enter 100% for no restriction.

The limit applies to the combined capacity across all ancillary service products, not to each product individually. In any period, the total capacity the battery commits across FCR, aFRR, and any other ancillary product cannot exceed the entered share of rated power. It is not a separate ceiling for each product.

The cap is applied to each direction independently:

  • Discharge direction: the sum of all upward (discharge) ancillary capacity is capped at the entered share of rated power.
  • Charge direction: the sum of all downward (charge) ancillary capacity is capped at the entered share of rated power.

From October onwards, the percentage entered is the share available for ancillary services, not the share removed from them. A value of 75% leaves up to 75% of rated power available. Entering 100% applies no restriction, and entering 0% removes the battery from ancillary markets altogether.

This limit is separate from the prequalification and activation rules that apply to every asset. Maximum FCR capacity, for example, is always limited to 80% of rated power, with symmetric charge and discharge provision required. That applies whatever restriction is entered.

Fields and behaviour

Field Location Effect
Ancillary Services Restriction Battery tab, % of rated power eligible for ancillary services The share available for ancillary markets. That share caps the combined capacity committed across all ancillary products, applied separately to the charge and discharge directions. Enter 100% for no restriction.

Worked example

A 100 MW battery with the restriction set to 75% can commit at most 75 MW to ancillary services in the discharge direction and at most 75 MW in the charge direction. If it holds 50 MW of aFRR up, no more than 25 MW of any other upward ancillary product (such as FCR) can be added on top in that direction. The remaining rated power stays available for wholesale energy dispatch.

Flexible Connection Agreements

The model supports Flexible Connection Agreements, which impose operational constraints on grid-connected assets including ramp-rate restrictions, export and import limits, ancillary service participation limits, and schedule freezes.

See the dedicated Flexible Connection Agreements page for detailed documentation on how they impact battery operations and dispatch optimization.