In a nodal market the money lives in the differences, and the differences are physics. Forty-eight hours at BrightPlain Energy's trading desk: a planned transmission outage meets a forecast wind ramp, and the market-physics model calls it 36 hours early, the Elm–Wood River 230 kV constraint binds tomorrow evening, and CEDAR FLATS diverges $60/MWh from the hub. Watch the desk get positioned while the screen still shows $2 of separation: day-ahead offers reshaped before the crash is public knowledge, the wind hedged at DA prices, the gas unit offered into the spike, the battery scheduled across the spread, and the constraint-path FTR valued before the auction window closes. Every order placed by a human trader. The model just makes sure they see tomorrow first.
| Without | With GridCORTEX | Δ |
|---|
| Without | With GridCORTEX | Δ |
|---|
BrightPlain Energy is a fictional power trading firm in a "nodal" wholesale market. In a nodal market, every location on the grid gets its own electricity price. When a power line clogs, prices a few miles apart can split by huge amounts, and that split is where trading desks make or lose money. The simulation covers 48 hours at the desk, from Day 1 at 08:00 through final settlement at the end of Day 2. The desk manages three assets: a 180 megawatt wind farm at a local pricing point called CEDAR FLATS, GT-2, a 240 megawatt gas power plant at the hub (the region's main reference trading point), and a 100 megawatt battery. At the open, the hub and CEDAR FLATS prices sit just $2 apart. It looks like a normal Tuesday. Overnight, the forecasting model reads three things together: tomorrow's published notices of planned line maintenance, the wind forecast, and the map of how every line and substation connects. One corridor stands out. A major transmission line, Elm–Wood River, is scheduled for maintenance work, exactly when a 34 mph wind ramp will push extra wind power onto that part of the grid. The model says the remaining lines hit their safe carrying limit (traders call this "binding") on Day 2 from 17:00 to 21:00, at 78% probability and rising. When a line binds, cheap power gets trapped behind it. The wind farm's local price crashes toward $0 while the hub price spikes, a gap of $58 to $64 per megawatt-hour, the standard unit price of wholesale electricity. The model makes this call 36 hours before the market shows it.
Four decision points follow, each staged for a human trader. Nothing is ever submitted automatically. First, the congestion call: the head trader approves a full review of every position against the predicted price split. The review shows the wind farm has 8.4 gigawatt-hours of energy at risk, energy that would be sold at crashed prices or shut off and wasted entirely. Second, the day-ahead offer reshape, before the 10:30 deadline. The day-ahead (DA) market is where tomorrow's power is sold today at locked prices; the live minute-by-minute market is called real-time (RT). The desk sells the wind farm's output day-ahead: it clears at $26.40, locking today's healthy price before tomorrow's real-time price crashes to $4. It also raises GT-2's offer so the gas plant sells into the predicted evening spike, and schedules the battery to charge at cheap CEDAR FLATS prices and sell back at expensive hub prices. Together this is worth an extra $188K versus doing nothing. The offers go in at 10:28, two minutes before the deadline. Third, the FTR window. A financial transmission right (FTR) is a contract that pays its owner when a specific transmission path gets congested, so it works like insurance on congestion. The same model shows this corridor will bind 9 of the next 12 months under the maintenance plan, making the contract worth about $96K more than the auction price suggests. The desk buys it 30 minutes before the auction closes.
Then the event arrives on schedule. At 17:10 on Day 2, Elm–Wood River binds: CEDAR FLATS trades at $6.80 and falling, the hub at $52 and climbing. By 19:00 the gap peaks at $62 per megawatt-hour, inside the predicted band. The fourth decision point fires mid-event: the maintenance crew keeps the line out 3 hours longer than planned. The model recalculates in minutes and recommends running the battery two hours longer and keeping GT-2 on through 23:00, worth another $128K. The line returns at 22:00. Ending state: the forecast was within $3 at the peak, only 1.1 gigawatt-hours of wind was wasted, and all of it had already been sold at day-ahead prices, and the settlement preview shows a $412K profit over the 48 hours. Every order was placed by a human, and every step was recorded in Relay, the built-in audit log, for the risk committee. Skip the approvals and the run ends the other way: a loss of $486K on an event that was in the public maintenance notices all along.
The maintenance notice sits in one browser tab. The wind forecast sits in another. The price forecast, built on historical averages, shows a normal Tuesday, because nothing like this exact combination is in its history. Nobody connects this maintenance job to this wind ramp, so the day-ahead market closes on autopilot: the wind sold as usual at CEDAR FLATS, the gas plant's offers unchanged. At 17:10 the line binds anyway. CEDAR FLATS crashes to $4. The wind farm gets paid the crashed live price, then is shut off entirely, wasting 8.4 gigawatt-hours of energy. GT-2, never positioned for the evening, watches the $60 hub spike from the sidelines. The 48-hour result: a $310K loss on the wind farm's crashed and wasted output, $106K of missed profit on GT-2, and $70K of battery mistiming, for a total loss of $486K, plus a missed insurance contract and a post-mortem that starts with "what happened?"
The market physics engine (use case UC 11.1) runs on graphics processors, the chips that make heavy simulation fast, and solves demand, wind, maintenance notices, and the grid map together. So the $60 price split appears in the forecast 36 hours before it appears on any screen, with the exact line and the exact hours named. The offer copilot (UC 11.2) recommends the reshaped day-ahead sales (worth $188K), the congestion analytics (UC 11.3) price how much wind energy is at risk, the congestion-insurance contract is valued in time to buy it (worth $96K), and the live recalculation captures the 3-hour maintenance extension (worth $128K). A person stays in charge at every step: all four recommendations wait for the head trader's approval, they expire if ignored rather than executing themselves, and traders place every order under the desk's own risk rules. The result is a $412K profit, a $898K swing versus the unprepared desk.
| KPI | Without GridCORTEX | With GridCORTEX | Delta |
|---|---|---|---|
| The $60 spreadthe price gap between the hub and CEDAR FLATS, the number this whole story trades on (D1 and D2 are Day 1 and Day 2) | discovered at 17:10 D2 | called at 08:00 D1 | 36 hours of warning |
| Constraint IDnaming the exact power line that will hit its safe limit, and the exact hours | post-mortem finding | named, timed, 78→94% | predicted from grid physics, not past averages |
| Wind at CEDAR FLATShow the wind farm's output was sold: at yesterday's locked price, or at the crashed live price | rode RT down, then curtailed | sold at DA $26.40 | price risk closed a day early |
| Curtailmentwind energy shut off and wasted because it had nowhere to go on the clogged grid | 8.4 GWh lost | 1.1 GWh, all pre-sold | almost all the waste avoided |
| GT-2 and the spikewhether the gas plant was positioned to sell into the evening price spike | underoffered, watched it | cleared into 17–21 | +$106K captured |
| RT outage extensionthe crew kept the line out 3 hours longer than planned, a mid-event surprise | a second surprise | re-solved in minutes | the surprise paid the desk |
| 48-hour desk P&Lthe desk's total profit and loss over the two days | −$486K | +$412K | $898K swing |
| DA offer valueextra profit from reshaping what the desk sold into the day-ahead market | autopilot stack | +$188K reshaped | done before the 10:30 deadline |
| FTR paththe congestion-insurance contract that pays when this specific line clogs | window missed | +$96K at model marks | valued before the auction closed |
| RT adjustmentschanges made in the live market as the event unfolded | none | +$128K | added on top of the day-ahead win |
| Risk filethe record the risk committee reviews after the event | "what happened?" | Relay-traced, every step | the committee sees why |
| Human controlwho actually submits the orders | n/a | every order trader-placed | decision support only |
This use case has no direct safety benefit and we are not going to invent one. The only honest link is indirect: a desk that is positioned correctly buys less energy in a scramble, and fewer scrambles means fewer unplanned unit starts and fewer off hours callouts for plant and switching staff.
Counted in units you already track:
Analyst hours come back to the trading desk, and the desk's morning moves from building a number to arguing about it.
The numbers we need from you to run that formula:
| Cost driver | How it is calculated, from a rate you supply |
|---|---|
| Analyst labor | analyst hours avoided x your loaded desk analyst rate |
| Imbalance exposure | your megawatt hours settled in real time against a day ahead position x your own average absolute difference between the two prices x the share of that gap you believe a better forecast closes, a share you set, not us |
| Basis and hedge sizing | your hedged notional volume x your own realized basis between hub and node x the share of basis error you attribute to a price view built from history rather than from grid conditions |
| Vendor consolidation | the annual subscription fee for any third party price forecast this replaces or lets you downgrade |
| Missed position | your desk's own margin per megawatt hour x the volume you did not commit because the price view was not ready before the market deadline |
You pay for the GridCORTEX forecasting service, for the market data feeds it needs, which you may already license, for the integration into your energy trading and risk management system, called an ETRM, and for your own analyst time to run the forecast in shadow mode next to the current process for a full season before you trust it. The shadow season is the real cost and it is not small.
Payback is usually carried by analyst hours and by the imbalance number, because those are the two you can audit from your own settlement statements. Treat trading margin improvement as upside, because it is the number your risk committee will trust least.
There is no direct safety benefit in offer construction and claiming one would be dishonest. The indirect mechanism is real but modest: offers that reflect the plant's actual condition produce fewer out of merit and emergency starts, and emergency starts are what generate short notice switching and after hours callouts.
Counted in units you already track:
Trader and scheduler hours come back at every market deadline, and the plant stops fielding a phone call about derates before each one.
The numbers we need from you to run that formula:
| Cost driver | How it is calculated, from a rate you supply |
|---|---|
| Desk and scheduling labor | trader and scheduler hours avoided x your loaded rates |
| Offer quality | your dispatched megawatt hours x your own margin per megawatt hour x the share of margin you attribute to offers that carry today's fuel price, derates, and constraints instead of yesterday's, a share you set from the shadow run |
| Start cost recovery | starts per year x your own start and no load cost per unit x the share of starts where the offer did not recover them because the cost data was stale |
| Storage cycle value | your battery's cycles per year x usable megawatt hours per cycle x the difference between the spread you realized and the spread the shadow run captured over the same period |
| Settlement and make whole exposure | your make whole and uplift payments per year x the share your settlements group can trace to offer construction errors |
You pay for the copilot, for the integration into your ETRM and your unit cost data, and for the plant data plumbing that keeps derates and outage status current, which is often the hardest part. Add your own trader time to run the copilot in shadow mode against submitted offers for at least one full season, because that shadow record is the only evidence your risk committee will accept.
Payback is dominated by the shadow run result on offer margin, plus desk labor. Build the case on the shadow comparison, since it is measured against your own submitted offers and settled outcomes rather than against anyone's benchmark.
There is no direct field safety benefit from congestion analytics and we will not manufacture one. The honest indirect link is that a constraint that surprises the system is relieved with short notice reconfiguration, and short notice switching is where operator error risk lives.
Counted in units you already track:
Analyst hours come back to the congestion desk, and transmission planning gets the same watchlist without anyone having to call them for it.
The numbers we need from you to run that formula:
| Cost driver | How it is calculated, from a rate you supply |
|---|---|
| Congestion exposure | your megawatt hours exposed to basis between source and sink x your own realized congestion component x the share of that cost you judge was foreseeable a day ahead, a share you set, not us |
| Hedge quality | your financial transmission rights portfolio notional, called FTRs, x your own auction to settlement spread x the share you attribute to better constraint selection |
| Curtailment | forecast curtailed megawatt hours per renewable asset x your own power purchase agreement or merchant price per megawatt hour, counting only the curtailment you could have rescheduled or repositioned around |
| Analyst and asset manager labor | hours avoided x your loaded rates |
| Duplicate study effort | constraint studies that planning no longer repeats per year x hours per study x your loaded planning engineer rate |
You pay for the analytics service, for the network model and market data it consumes, for integration into your ETRM and into planning's study queue, and for analyst time to score predicted binding against actual binding for a season before the desk positions on it. Getting a current, accurate network model into the service is usually the integration item people underestimate.
Payback is normally led by curtailment you avoid and analyst hours, both of which you can audit. Congestion exposure avoided is the larger number and the softer one, so put it second in the business case, not first.
What is this, exactly? It is AI software: intelligent agents and models built and delivered by SoftServe, running on NVIDIA accelerated computing. It is not a hardware appliance and it does not replace the systems you run today. It deploys in your own cloud or on your premises, connects read-only to your existing systems, and recommends; your people approve every action, starting in shadow mode until it earns trust.
A forecast feed for the trading and scheduling desk: hour-ahead and day-ahead price forecasts at the specific grid locations, called nodes, where your assets settle, with confidence ranges the desk can position against. The demo above uses synthetic data; everything below describes what the real deployment needs from your organization.
| Your system | Typical products | How we connect |
|---|---|---|
| Market and grid operator interfaces | PJM, MISO, ERCOT, CAISO portals; OASIS | read-only API |
| Energy trading and risk (ETRM) | ION Allegro, openlink Endur | database replica refreshed nightly |
| Weather and environment | National Weather Service feeds, commercial forecast services | read-only API |
| Plant control (DCS) for generation | plant historian, Emerson Ovation, GE Mark VIe | historian mirror (one-way feed) |
| Planning and study tools | PSS/E, PowerWorld, TARA | scheduled file export (CSV or CIM XML) |
Runs in your own cloud account on GPU instances; most inputs are public market data, so setup is light. Connections to your trading systems are read-only through your existing data zone; the system takes no positions and executes nothing, running first as a backtest beside the desk's current model.
The Approve button you just clicked in the demo above is the real workflow. This is what it looks like on the screen of the day-ahead trading desk analyst in the GridCORTEX console:
Accepting writes the forecast into your ETRM as an advisory pricing reference through its API; no positions are touched. Traders make and enter their own position decisions in the ETRM; GridCORTEX never trades.
Fully automatic from connected market, weather, and grid feeds; there is nothing to enter.
Market data refreshes every 5-minute interval and weather hourly; each curve shows the as-of timestamp of the run that produced it.
Forecast curves live in the GridCORTEX console and the ETRM desk view; projected spikes beyond set bounds send a Teams push. The console runs in a browser beside your existing screens on day one; embedding into your own systems is a roadmap step once the read-only phase has earned trust. Approve, Modify, and Decline are all captured in an audit trail your compliance team can pull, and GridCORTEX never blocks or overrides anything in the systems you run today.
The fair question from any head of trading: "We have market data terminals, a price forecast vendor, and traders who know this footprint cold, what's new here?" Here's the honest answer.
When someone asks "what did it actually calculate?", this is the list. In the simulation these factors drive the storyline; in a pilot they are computed from your market footprint and asset stack.
Presenter's one-liner: "A planned outage met a wind ramp, and the physics model called the $60 spread at CEDAR FLATS 36 hours before the market printed it. The desk locked the wind at day-ahead, offered the gas unit into the spike, ran the battery across the spread, and valued the constraint path before the FTR window closed. When real-time bound even harder, they captured the extension too. Every order human-placed. The model's only job was making sure they saw tomorrow first, and the P&L swing was $898K in 48 hours."