Skip to main content

Day-ahead price forecasts

Background​

Battery optimization needs price forecasts for every operational asset with a battery. Once a day, Tensor Cloud forecasts the JEPX day-ahead (spot) market price 13 days ahead for every Japanese grid area and for the system price.

For forecasts of the balancing (reserve capacity) market, see Balancing market price forecasts.

Components and architecture​

The price forecast service has two components:

  1. the training service, which trains the forecast models for each grid area and for the system price
  2. the prediction service, which loads the trained models and predicts prices for each grid area and for the system price

Training service​

The training service runs once a week, on Sunday at 23:00 JST. It trains the models on JEPX price history from April 2021 up to five days before the run, holding out the last three weeks to evaluate them. Each candidate model is tuned with a 30-trial Bayesian hyperparameter search.

A newly trained model replaces the one in service only if its mean absolute error (MAE) over the last 21 days is lower. Otherwise the previous model stays in service for another week.

Predictor data​

The models predict the price of every 30-minute slot in every grid area from the following variables:

CategoryVariableUnitTime resolution
JEPX market dataThe grid area's own recent half-hourly prices, up to about one day back, plus its 1-day and 7-day rolling meansJPY/kWh30min
CalendarMonth, week, weekday, and hour of day, encoded as cyclical terms-30min
CalendarHoliday, and holiday on the previous or next day-1 day
Weather dataAir temperature, with 1-day and 7-day rolling mean, maximum, and minimum°C1 hour
Weather dataGlobal horizontal irradiance (GHI), with 2-hour and 1-day rolling mean and maximumW/m21 hour
Grid reserve forecasts (zero-price model only)Forecast demand, supply, and reserve for the area and its block, with reserve and utilization rates, published by the Organization for Cross-regional Coordination of Transmission Operators (OCCTO)MW, %1 day

Calendar terms are also combined pairwise, so that, for example, the effect of the hour of day can differ on holidays. Weather is taken at five locations per grid area, placed where solar generation is concentrated.

Each grid area has a price model and, where it helps, a zero-price model:

  • Price model: a LightGBM and a CatBoost regressor are both trained, and the one with the lower error on the held-out weeks is kept.
  • Zero-price model: a LightGBM or CatBoost classifier that flags slots likely to clear at the 0.01 JPY/kWh floor. It is trained only for grid areas with at least 100 zero-price slots in their history and some in recent weeks, and kept only if it lowers the overall error. In flagged slots the forecast is set to 0.01 JPY/kWh.

Prediction service​

The prediction service runs every day at 06:00 JST and predicts the price in each grid area and the system price for the next 13 days, starting at 00:00 JST the following day. Forecasts are never lower than 0.01 JPY/kWh and are rounded to two decimal places.

Price prediction FAQ​

Q: For which markets are you creating price predictions?

A: This page covers the JEPX day-ahead (spot) market. We also forecast the balancing (reserve capacity) market; see Balancing market price forecasts. Support for the intraday market is planned. If you have urgent needs around price predictions for these markets, contact us.

Q: How can I download Tensor Cloud price prediction data?

A: Tensor Cloud mainly uses price predictions internally to optimize battery charging and discharging. You can download price forecasts as CSV files from the Tensor Cloud UI, but for integration with other systems we recommend the Tensor API.

Q: How accurate are your price predictions?

A: It depends on the grid area, time period, and prediction horizon. For the most common use case, the 1-day-ahead forecast issued at 06:00 JST, RMSE is generally between 2 and 3 JPY/kWh for most areas and the system price. We monitor accuracy daily against a persistence baseline and keep improving it, especially for zero-price events, which drive much of the value of battery storage.

Further reading​