Balancing market price forecasts
Background
Batteries can earn revenue not only on the day-ahead spot market but also on Japan's balancing market (需給調整市場), where transmission system operators procure reserve capacity to keep supply and demand balanced. To let Tensor Cloud value and schedule reserve participation, we forecast balancing market prices for every Japanese grid area and reserve product.
Each day Tensor Cloud produces a 14-day price forecast, in 30-minute slots, for:
- 9 grid areas: Hokkaido, Tohoku, Tokyo, Chubu, Hokuriku, Kansai, Chugoku, Shikoku, and Kyushu.
- 6 reserve products: primary reserve (一次調整力, FCR), offered both online (via a dedicated line) and offline (via the simplified command system, 簡易指令システム); secondary reserve ① and ② (二次調整力①・②); and tertiary reserve ① and ② (三次調整力①・②).
Forecasts are probabilistic: instead of a single number, each 30-minute slot is described by nine quantiles (p10, p20, …, p90). The spread between quantiles expresses how uncertain the price is, which lets the battery optimizer weigh risk rather than react to a single point estimate.
Forecasting method
Unlike the day-ahead forecast, which uses trained machine-learning models, the balancing market forecast is a probabilistic persistence forecast built directly from recently cleared prices.
Reserve markets are newer and thinner than the spot market, and their clearing prices are driven largely by the recent price regime in each area. In this setting a persistence approach — projecting recent cleared prices forward — is both robust and well-calibrated, and it avoids overfitting the limited history that a trained model would require.
The forecast is built per (area, product) pair:
- Collect recent cleared prices. For each 30-minute slot, the balancing market publishes a cleared minimum, average, and maximum price. We read the trailing history of these
(min, avg, max)triples for the pair. - Turn each day into a distribution. For a given time of day, each recent day's
(min, avg, max)triple defines a triangular distribution whose range runs from the minimum to the maximum, with the cleared average used as the triangle's peak (its mode parameter). - Mix across recent days. Averaging these triangular distributions over the last two weeks of same-time-of-day observations gives an empirical distribution for that slot, from which the p10–p90 quantiles are read off.
- Project across the horizon. The most recent fully-observed day defines a per-slot table of quantiles, which is tiled across the 14-day horizon. Forecast prices are clipped at zero.
The inference pipeline runs every morning (around 06:30 JST), forecasting all 54 area–product pairs, and writes the results to Tensor Cloud's internal forecast store for use by battery optimization.
Balancing market forecast FAQ
Q: Which markets and products do these forecasts cover?
A: All six balancing (reserve capacity) products traded in Japan's 需給調整市場 — primary reserve (一次調整力), offered both online (via a dedicated line) and offline (via the simplified command system, 簡易指令システム); secondary reserve ① and ②; and tertiary reserve ① and ② — across all nine grid areas.
Q: Why is this a persistence forecast rather than a machine-learning model?
A: Reserve markets are newer and less liquid than the day-ahead spot market, and their prices are strongly anchored to the recent clearing regime. A probabilistic persistence forecast over recently cleared prices is robust, avoids overfitting a short history, and produces well-calibrated quantiles. We continuously monitor its quality and will introduce model-based components where they demonstrably improve on this baseline.
Q: How can I access balancing market price forecasts?
A: These forecasts are primarily used internally to optimize battery charge and discharge behavior. If you need programmatic access to balancing market price forecasts, contact us.