RTM price forecast
Adaptive DAM + E2 blend
A frozen LightGBM model corrects DAM using 19 price-curve, calendar and zone inputs.
The E2 weight updates daily from earlier outcomes, delayed 48 hours. It ranged from 66.6% to 90.5% in this test.
How dispatch works
Tomorrow’s day-ahead price (DAM) is a useful starting point. Actual prices move. We predict the correction, keep an outage reserve, and plan when a battery should charge or discharge.
Simulated battery plans. No device commands.
Adaptive DAM + E2 blend
A frozen LightGBM model corrects DAM using 19 price-curve, calendar and zone inputs.
The E2 weight updates daily from earlier outcomes, delayed 48 hours. It ranged from 66.6% to 90.5% in this test.
County outage-onset model
Gradient-boosted trees use weather outlooks, location and time to predict 24 hourly first-onset chances.
County risk, not a calibrated home probability. The fixed 12:00 UTC outage window covers only part of tomorrow’s price day; uncovered six-hour windows use the 5 kWh floor.
A mixed-integer optimizer chooses 15-minute actions to maximize expected wholesale savings while obeying the battery and reserve limits.
It compares the whole day’s opportunities. A low price alone does not force a charge.
More predicted risk means more stored energy. A new target ramps up only as fast as the battery can charge. Incomplete risk coverage uses the 5 kWh floor.
Never charge and discharge together. A 15-minute interval can import or deliver at most 1.25 kWh through the battery. Losses count against every trade.
Equal daily starting and ending charge makes the comparison fair. New outage forecasts can replan the remaining day; past actions stay fixed.
184 days · July–December 2025 · four representative locations
Same battery, same outage policy; only the price forecast changes. Actions are planned from forecasts, then valued at actual RTM prices.
Import purchases, export receipts and battery losses are included. This is a small retrospective gain over our DAM controller, not a comparison with Base’s controller or an estimate of Base’s total profit.
E2 had slightly better price RMSE; the blend made better battery decisions in this sample. The blend’s exact improvement over DAM was $0.702667 per home (0.594634%). A descriptive 95% interval was $0.14–$1.44 over 184 days. Its $0.28 advantage over E2 had an interval of −$0.04 to +$0.91, so that ranking is not settled.
The four scenarios are Harris/Houston, Dallas/North, Nueces/South and Midland/West. The period had prior research exposure; it is not a pristine holdout. Historical archives do not establish original publication or revision timing, and the 48-hour RTM delay is an availability assumption.
The grid stays connected in the simulation. Reserve targets are policy choices, not learned duration requirements; actual household backup protection was not tested.
Compare blend and reserve settings, plus individual and grouped feature permutations and interactions. Keep future tests separate from tuning.
Test load, wind, solar, weather, generation outages, fuel and congestion. Remove inputs that add no held-out value.
Add realistic settlement terms and compare with a perfect-price upper bound under the same battery rules.
Price: EXP002 is a frozen 64-tree LightGBM model trained on 629,728 observations from January 2023 through March 30, 2025. Its 19 inputs describe DAM itself, that day’s curve and neighboring hours, zone, calendar and time. The daily blend fits a weight between zero and one by minimizing past squared price error; it does not directly optimize earnings. A new installation starts from the saved historical weight until its new, 48-hour-delayed outcome history is available.
Outage: a HistGradientBoostingClassifier uses 11 numeric inputs: location, seasonal and hourly cycles, SPC and WPC outlook ranks and availability, and forecast lead. It was trained on 2018–2021 and calibrated on 2022. Hourly first-onset probabilities sum to a 24-hour chance; they are not independent events. Forecasts retain their fixed 12:00 UTC origin and cover the next 24 elapsed hours. There is no live outage-state feed; the scenario assumes no ongoing outage. The separate post-onset duration model is not used to set these reserves.
Reserve rule: for next-six-hour onset probability q, requested kWh = 5 + 10 × min(1, q ÷ 0.25). A new target is limited by achievable charging. In this test, new targets exceeded available stored energy for about 153 hours per household; this is not an observed outage measure.
Contract: the map reads a versioned data/model-output.json export. Price forecasts are absolute RTM prices in USD/MWh; negative values are valid. P10/P50/P90 summarize predictive uncertainty, not guaranteed limits. Outage rows describe county scenarios, never a calibrated home-specific probability. A missing row means unknown coverage, not zero risk.
Recommendations: supplied actions have their own rule version. Model outputs describe simulated plans, with no connected hardware. The separate dummy scenario still uses invented prices and simple demonstration thresholds. Stale outputs remain labeled historical; missing or invalid inputs remain unavailable.
Time and geography: timestamps are UTC; the interface displays America/Chicago, including CST/CDT. A local energy day can have 92, 96 or 100 quarter-hours. Counties, load zones and service connections do not align exactly; documented scenario relationships are not address-level assignments.
Market data: ERCOT market prices. Outlook providers: NOAA Storm Prediction Center and Weather Prediction Center. Historical outlooks use the Iowa Environmental Mesonet.
The fleet illustration uses Base Power’s stated 30,000+ homes, checked September 27, 2026. It does not establish an eligible ERCOT fleet count. Project context: the Base Power × AITX hackathon. This is an independent project.
Energy shapes trace ERCOT’s 2023 load-zone illustration; they are schematic, not operational boundaries. Counties use Texas Water Development Board boundaries. City markers are U.S. Census 2025 Gazetteer internal points, not street addresses.
Terrain uses Mapzen / AWS Terrain Tiles, with USGS SRTM and GMTED2010 and NOAA ETOPO1. Relief is exaggerated and approximately registered to the energy schematic. Colors encode forecasts; lighting and raised selections are visual treatments, not additional predictions.