Saltar al contenido

100 · Investigación

106Energy Markets

¿Se puede predecir la diferencia entre el precio eléctrico del día anterior y el de tiempo real lo bastante bien como para operar? De momento no: la única versión operable perdió 0,43 dólares por MWh, una cifra indistinguible de cero.

Año
2026
Estado
Activo
  • Python
  • PJM
  • ISO-NE
  • walk-forward
  • pre-registration
  • adversarial review

Esta página solo está disponible en inglés.

The question

Every hour of US electricity is priced twice: in an auction the day before, and live as the power flows. Can the difference be predicted well enough to trade, and if a new exchange lists contracts on it, is there an edge a small participant can actually capture?

Part 1 · Two prices for the same electricity

A first study looked for the mechanism. Prices at different locations pull apart whenever a transmission constraint binds, and each constraint leaves a pattern across locations. Of 1,221 priced locations in New England, only 4 constraints were testable out of sample; three of the four patterns repeated, and the one that binds most often did not.

Turning that into a trade failed. The only version anyone could trade, guessing tomorrow's constraint from today's, returned −$0.43 per MWh over 308 hours it had never seen, with a range from −$3.15 to +$2.30. Not a small profit and not a reliable loss: a measurement that failed to measure. The report also records where it was wrong. An earlier version charged the trading cost once on a basket that buys at 40 locations and sells at 40 others; charged twice, at $1.02 rather than $0.51, the headline changed sign from a small profit to a small loss.

Part 2 · A model bake-off, and the reviews that stopped it

The next step was a bake-off of five structurally different model families (a direct classifier, quantile models, a tail-specialist mixture, a structural model and a market-relative one) for contracts on PJM prices listed on the ElectronX exchange. Before building anything, the spec went to two independent adversarial reviewers, one on methodology and one on trading reality. Both said: do not start the five-model programme yet.

What they found:

  • The power calculation was wrong. The minimum detectable effect had been computed at 50% power and labelled 80%. Corrected, it rose from $3.88 to $5.30–5.50 per MWh, and the honest decision date moved from late 2026 to 2027.
  • Day-level clustering was not enough. Daily means were serially correlated at +0.425, so the sample held roughly 11 to 18 independent days, not 26.
  • Two "open questions" were already answered by PDFs sitting in the project's own folder, including the fact that the counterparty is a paid, obligated, algorithmic market maker.
  • The central pricing identity was wrong for one contract band, whose floor is −$250, not zero.
  • Too many tests. At about 50 quasi-independent tests, the chance of at least one false positive is about 92%, so v1.1 requires one primary endpoint per gate and a false-discovery correction for the rest.

Version 1.1 inverted the plan: a cheap, model-free pre-flight first, and the bake-off gated behind it. A follow-up on the apparent premium showed why: at the PJM $0–$500 contract the observed edge was +$5.24 per MWh against a minimum detectable effect of $13.99, so resolving it would take about 178 trading days.

When the work pivoted to the spread itself, the evaluation harness was built before the models so it couldn't be bent to flatter one. Over 13 walk-forward folds and 841,506 contract-hours, the first model beat the baseline in all 13 folds (12.13 sigma), but neither of the two richer models cleared its multiplicity-adjusted bar against it (2.11 and 2.91 sigma, against bars of 3.21 and 3.32). The ladder stops at the first rung.

What I'd try next

Get the data the reviews asked for before fitting anything else: timestamped order-book quotes, a winter of prices (the whole sample is summer), and a month after the exchange's promotions end.

La única versión que alguien podría operar: −0,43 dólares por MWh tras costes en 308 horas no vistas, con un rango de −3,15 a +2,30 que cruza el cero. Un techo con previsión perfecta de +5,18 aparece marcado como no estrategia.
La única versión que alguien podría operar: −0,43 dólares por MWh tras costes en 308 horas no vistas, con un rango de −3,15 a +2,30 que cruza el cero. Un techo con previsión perfecta de +5,18 aparece marcado como no estrategia.
La misma prueba de persistencia en 17 pares consecutivos de ventanas de diez días: 8 por encima de cero y 9 por debajo, mediana −0,016. Las primeras ventanas coinciden y luego se desmoronan.
La misma prueba de persistencia en 17 pares consecutivos de ventanas de diez días: 8 por encima de cero y 9 por debajo, mediana −0,016. Las primeras ventanas coinciden y luego se desmoronan.
De 1.221 ubicaciones con precio a 77 restricciones que llegaron a activarse, 56 aislables, 9 con un patrón utilizable y solo 4 comprobables fuera de muestra: el límite honesto del trabajo.
De 1.221 ubicaciones con precio a 77 restricciones que llegaron a activarse, 56 aislables, 9 con un patrón utilizable y solo 4 comprobables fuera de muestra: el límite honesto del trabajo.