Methodology

Storage is an option.
We price it like one.

A battery is a physical strip of spread options on the shape of the power curve. Each day it can buy one half-hour and sell another, subject to the laws of physics and the economics of wear. This paper sets out how we forecast that curve, optimise against it and manage risk while we do, using the same discipline as a derivatives trading desk.

01

The dispatch problem

Every settlement period t we choose a charge rate ct and a discharge rate dt. Value comes from the spread between the prices we buy and sell at, less the marginal cost of wearing the asset. Formally, we solve a stochastic mixed-integer programme over the trading horizon:

maxc,d E [ ∑t=1T pt (dt−ct) − κdeg (ct+dt) Δt ]

Objective: expected trading margin net of degradation

subject to the physics of the asset:

st+1 = st + ( ηcct − dtηd ) Δt S_ ≤st≤ S‾ 0≤ct≤ P‾ut , 0≤dt≤ P‾(1−ut) , ut∈{0,1}

State-of-charge dynamics, energy limits and the no-simultaneous-charge-and-discharge constraint

Here st is state of charge, ηc and ηd are the charge and discharge efficiencies, P̄ is the grid connection limit and ut is a binary mode variable. The solution is a schedule that charges into the troughs of the curve and discharges into its peaks, as in the illustrative day below.

Price (£/MWh) State of charge (%). The optimiser fills the battery in two troughs and empties it into the two peaks.

02

Probabilistic price forecasting

A point forecast is not enough to trade on. What matters is the full distribution of outcomes, because the value of storage comes from volatility: the wider the distribution, the more the option is worth. We model the half-hourly price as a mean-reverting jump-diffusion around a fundamentals-driven seasonal level:

dpt = θ(μ(t)−pt)dt + σ(t)dWt + JtdNt

μ(t): fundamental level · θ: speed of mean reversion · σ(t): diffusive volatility · J·dN: scarcity spikes

On top of the structural model sits an ensemble of gradient-boosted and deep sequence models. They are trained on day-ahead auction clears, the continuous intraday order book, system imbalance prices and Net Imbalance Volume (NIV). Rather than a single number, each model outputs a set of conditional quantiles q̂τ, trained by minimising the pinball loss:

Lτ(y,q^τ) = max { τ(y−q^τ) , (τ−1)(y−q^τ) }

Quantile (pinball) loss: penalises under- and over-forecasts asymmetrically for each quantile τ

The quantiles are stitched into thousands of Monte Carlo price paths that respect the correlation between adjacent half-hours. Our optimiser trades against the whole fan of scenarios, not just its centre line.

5–95% and 25–75% forecast bands, median, with sampled scenario paths. Uncertainty widens with lead time.

Price shape is also highly seasonal. Winter evenings carry the steepest peaks and spring middays the deepest solar troughs. Our models learn that structure explicitly, and it tells us where the spread will sit.

Illustrative average price by month and hour of day. Dark: cheap. Bright: expensive. The battery lives on the contrast.

03

Weather, demand and the merit order

Prices are set at the margin. Generators are stacked from cheapest to most expensive (the merit order), and the clearing price is the offer of the last unit needed to meet demand. What the thermal fleet has to cover is net demand, which is demand left over after weather-driven renewables and interconnector imports:

Dtnet = Dt −Wt −St −It pt = inf {p:Qsupply(p)≥Dtnet}

D: demand · W: wind · S: solar · I: net imports · Qsupply: the merit-order supply curve

This is why weather is our single most important input. We take ensemble numerical weather prediction (NWP) runs and convert wind speed at hub height and irradiance into fleet-level generation through power curves and clear-sky models. When the ensembles agree on a windy, sunny afternoon, net demand falls through the floor of the stack and so does price. Try it:

Illustrative GB supply stack. More renewables push the stack right, so net demand clears on a cheaper unit. £0/MWh

On the demand side, our short-term load models combine temperature and wind-chill, cloud cover, school and bank holidays, embedded solar behind the meter, EV charging profiles and the famous British TV pick-up: the half-time kettle surge that can add hundreds of megawatts in minutes. These shape the morning and evening ramps, and the ramps are where the money is.

04

Storage monitoring and degradation

Every cycle consumes a little of the battery's life. A trader who ignores this is selling an option below cost. We stream telemetry from the battery management system covering cell voltages, cell temperatures, state of charge (SoC) and state of health (SoH). From it we estimate a marginal degradation cost per MWh of throughput:

κdeg = Creplace 2EmaxN(DoD,T)

Creplace: cost to restore capacity · Emax: usable energy · N: cycle life as a function of depth of discharge and temperature

Cycle depth is measured with rainflow counting on the realised SoC trace, which is the same technique used for metal fatigue in aerospace. The result is a simple, rigorous gate on every trade. We only cycle when the round-trip spread clears both the losses and the wear. Deep cycles are disproportionately costly:

Cycle life N(DoD) falls steeply with depth of discharge, so the marginal cost per MWh rises. Illustrative LFP chemistry at 25 °C.

Hence the gate:

ηrtpsell − pbuy > κdeg(1+ηrt)

The trade condition, per MWh charged

Thermal headroom and SoH also feed back into the optimiser as live constraints. A hot afternoon tightens the power limit P̄, and an ageing string narrows the usable SoC window. The schedule we trade is always one the asset can physically deliver.

05

Rolling intrinsic and extrinsic value

Borrowing directly from gas-storage and structured-products desks, we split the value of the asset into two parts:

V= Vintrinsic⏟locked in today + Vextrinsic⏟value of future flexibility

Intrinsic value is what we could lock in right now by trading the optimal schedule against today's forward curve. Extrinsic value is the option to change our mind as prices move. We harvest it with a rolling intrinsic strategy. Every few minutes we re-solve the optimisation against the latest intraday curve F(k) and trade only the difference from our current position:

x(k) = arg maxx∈X ∑t Ft(k) xt , Δx(k) = x(k) − x(k−1) Π(k) = Π(k−1) + ∑t Ft(k) Δxt(k) ≥ Π(k−1)

Because holding the old position is always feasible, each re-optimisation can only add locked-in value (before transaction costs)

Cumulative locked-in margin ratchets upward with each re-solve, versus the static day-ahead intrinsic value.

The same engine co-optimises across markets: day-ahead auctions, the continuous intraday market, the Balancing Mechanism and frequency-response services such as Dynamic Containment. Each megawatt is always committed to its highest risk-adjusted use.

06

Risk management

We run the book the way a bank runs a trading desk. Expected value is maximised subject to a tail-risk budget expressed as Conditional Value-at-Risk on the day's P&L distribution:

CVaRα(−Π) = minζ { ζ+ 11−α E [−Π−ζ]+ } ≤ℓ‾

The Rockafellar–Uryasev form: linear, so it sits inside the same optimisation as the dispatch problem

Simulated distribution of daily P&L across scenario paths. The tail beyond VaR95 averages to CVaR95, which is the number we constrain.
  • Position limits by delivery period and by market, enforced pre-trade.
  • Imbalance exposure: we never leave the asset unable to meet a traded position, with an SoC reserve held against outages.
  • Model risk: champion–challenger forecasting, live calibration tests on every quantile and automatic de-risking when forecast skill decays.
  • Counterparty and collateral: exchange-cleared where possible, with margin modelled under stressed price paths.

07

The trading stack

Signals become a dispatch decision in a single, auditable loop:

08

Built by traders

Spreadwatt is founded by people who have spent their careers in markets: on the trading floors of leading hedge funds and the world's largest investment banks. We have traded volatility, built quantitative models that run real capital, and managed risk through stressed markets. We bring that same rigour to the most interesting commodity in the energy transition: electricity that can be moved through time.

Hedge fund trading

Systematic and discretionary commodities and macro trading, where every position is sized to its edge and its risk.

Global investment banking

Structuring, pricing and hedging complex derivatives on the desks of tier-one banks, under the strictest risk and control frameworks.

Quant research

Stochastic modelling, optimisation and machine learning taken from research all the way into production trading systems.

We're raising our seed round

Back a team that prices flexibility the way the market will.

Request the deck