ordinex/dataEnergy Intelligence

Point-in-time energy intelligence

Energy signals built for
systematic trading.

EIA, NOAA, ERCOT & ENTSO-E energy-market data, transformed into point-in-time, walk-forward-validated factors - delivered through one production-ready API. Not a data reseller: primary-source ingestion, reporting-lag safety, and out-of-sample validation, end to end.

Built for systematic traders · quant researchers · trading bots · energy-focused funds · financial data developers

No look-ahead bias · No reseller data · Walk-forward validated · REST API

7
core factors that clear our validation bar - not hundreds of weak signals
8+5+15+6+2
EIA storage regions, NOAA climate regions, ERCOT hubs/load zones, ENTSO-E EU borders/directions, and ENTSO-E flow directions covered
27
annual walk-forward folds behind the crude spread factor alone
Direct
EIA + NOAA + ERCOT + ENTSO-E, public-domain/legally-cleared sources, ingested straight from source
PIT
point-in-time correct, with real reporting-lag safety built in
Auto
daily/weekly automatic refresh, no manual re-runs

Not another data reseller

What makes Ordinex different?

A typical energy API stops at raw data - you still do the point-in-time correction and factor research yourself. Ordinex does that work upstream: primary source → PIT normalization → validation → factor research → API → your trading system.

CapabilityTypical energy APIOrdinex
Point-in-time correctnessRare✓
Reporting-lag awareRare✓
Walk-forward out-of-sample testedNo✓
Economic significance scoredNo✓
Raw + derived (factor) dataRaw only✓
REST API✓✓
Reseller / third-party aggregatorOftenNo

Build vs. buy

Why not just pull EIA, NOAA, ERCOT, and ENTSO-E yourself?

All four sources are free and public. Plenty of teams do pull them directly - here's what that actually takes, beyond the download.

Build it yourself
Ordinex
Four differently-shaped connectors: EIA's faceted JSON API, NOAA's paginated CDO API, ERCOT's OAuth2-gated REST API, ENTSO-E's ZIP-wrapped XML API
Already built and running
Point-in-time joins across sources with different reporting lags
Built into every factor
Design, backtest, and validate your own factors from zero
Factors that already cleared a 5-step walk-forward validation pipeline
Keep ingestion running as source formats change
Refreshed automatically, on a schedule
Build and host your own API
One production REST API, live today

Why this matters

No look-ahead bias, and no accidentally-honest factor

In plain terms: we test whether a signal actually survives out-of-sample before it ever reaches the API. Here's how that discipline is enforced end to end:

Most energy-data feeds stop at "here's the number." This one goes one step further: every factor was tested for whether it actually predicts anything, walk-forward, out-of-sample - and the honest misses are published right alongside the real ones. Full breakdown: the validation methodology and the factor catalogue.

01

Source publishes

EIA reports a weekly storage figure days after the "as of" date it actually describes.

→
02

Reporting lag respected

A real min_lag_days safety margin per source - a factor is never paired against a target move that happened before it was actually public.

→
03

Nothing overwritten

Every raw fact and factor observation is append-only, insert-if-not-exists - a later revision never silently replaces history.

→
04

Walk-forward tested

One held-out fold per calendar year, never fit and tested on the same window.

→
05

Scored, not just shipped

A five-dimension quality scorecard decides the tier - sign consistency, crisis robustness, and economic effect size, not just "it correlates."

Architecture

From raw energy data to trading-ready signals

01

Primary sources

EIA v2 (natural gas, storage, petroleum, electricity) and NOAA CDO, direct public-domain federal sources, plus ERCOT's own Public API for real-time settlement-point power pricing. CAISO/NYISO wholesale power still feeds the internal factor library only.

→
02

Point-in-time normalization

Append-only storage - historical queries are reconstructed using each source's own recorded publication timing and reporting-lag rules, refreshed automatically (daily or weekly, matched to how often each source actually updates).

→
03

Factor construction

Storage/weather/spread-based signals computed forward from the normalized data - the raw material every factor below is built from.

→
04

Walk-forward validation

Bucket analysis, regime splits, annual walk-forward, and an economic-significance effect size - before a factor ever reaches the API.

→
05

Production API

Raw series, factor observations, rankings, and screens - all over HTTP, scoped to what's actually legally cleared to serve.

→
06

Your trading system

One X-API-Key header away from a live factor feed - built to be called from code, not read from a dashboard.

Factor library

Tiered by real evidence, not an undifferentiated list

A deliberately small factor library. We don't ship hundreds of weak signals - only factors that survive our validation pipeline reach production.

Every factor below is derived from EIA, NOAA, ERCOT, or ENTSO-E data - sources our own legal review has covered for this API's commercial use (see the legal review). Factors are tiered by how they scored on a five-step validation framework: predictive content, monotonicity, regime stability, mandatory walk-forward out-of-sample testing, and economic significance - not just whether they "worked" once. Backtested effect sizes below are historical and gross of transaction costs, slippage, and capacity - not a forward return guarantee. The full methodology and every real backtest result lives in the factor catalogue.

WTI/Brent crude spread Tier 1 - CoreTier 2 - Secondary
One raw series (the spread level, plus its percentile/momentum/volatility), validated against multiple forward targets with different verdicts: predicting its own mean reversion is a clean sweep, 100% on every scorecard dimension, with a large historical effect (−0.82x realized volatility at 20 trading days). Predicting Brent's own forward return is regime-dependent - a perfect 100% on four of five scorecard dimensions, but a smaller, confirming effect.
wti_brent_spread
ERCOT spark spread mean reversion - all 15 hubs/load zones Tier 1 - Core
Real-time ERCOT settlement-point spread vs. Henry Hub gas, validated against its own mean reversion - 100% on every scorecard dimension, full walk-forward confidence, independently confirmed across all 15 hubs and load zones. Historical effect −0.60x to −0.89x realized volatility at 20 trading days, depending on hub/zone. Promoted to the public API 2026-08-26; real history is shorter (~3.5 years) than the other Tier 1 factors, so treat it as newer, not less real.
ercot_spark_spread
Storage response to percentile (Lower 48) Tier 1 - Core
The single strongest, most cross-family-robust predictor in the library - confirmed four separate times across redundancy and combined-signal testing. +0.47x realized volatility at 60 trading days.
storage_percentile
Weather demand anomaly - Central, Southeast, Northeast Tier 2 - Secondary
Regional heating-degree-day anomalies vs. forward Henry Hub returns - independently useful diversification, confirmed via partial-correlation testing against each other.
weather_demand_anomaly_htdd
Storage - Salt, Midwest, South Central, Pacific Tier 3 - Context
Real, walk-forward-consistent relationships worth monitoring - not independent enough of the Tier 1 signal to trade on their own.
storage_percentile
EU cross-zonal capacity - DE-LU ↔ DK1, DE-LU ↔ NO2 Tier 1 - Core
Offered day-ahead transfer capacity on both real confirmed-working DE-LU interconnector borders, validated against its own mean reversion - 100% on every scorecard dimension, full walk-forward confidence. −1.21x to −1.95x realized volatility at 20 trading days - the largest single economic effect in this whole library. Confirmed not a correlated echo of physical flow below.
eu_cross_zonal_capacity
EU physical flow - all 4 real directions Tier 1 - Core
Net cross-border physical flow on the same two borders, validated against its own mean reversion - every direction clears every scorecard dimension. −0.82x to −1.31x realized volatility at 20 trading days. A real redundancy test confirmed this retains genuine incremental value beyond capacity's own level - complementary, not a duplicate.
eu_physical_flow
EU imbalance price mean reversion - Netherlands, Belgium, France, both categories Tier 1 - Core
Real-time imbalance settlement prices across three European markets, validated against their own mean reversion - the strongest Factor Quality Score of any factor in this library, a flawless 100% on every non-economic scorecard dimension across all 6 country/category combinations. −0.97x to −1.46x realized volatility at 20 trading days. A redundancy check across all 6 combinations found no collapse. Served as a raw series today, not yet wired into this generic factor machinery.
/v1/eu/imbalance-price
ENTSO-E activated balancing price mean reversion - Germany, both flow directions Tier 1 - Core
Germany's real-time activated balancing-energy price, validated against its own mean reversion - full walk-forward confidence, both directions, confirmed not redundant with three other real balancing-market document types. Horizon deliberately narrowed to 1 and 5 trading days after a dedicated statistical-significance check ruled out a known random-walk artifact at longer horizons. −0.43x (A01) and −0.72x (A02) realized volatility at 5 trading days.
entsoe_activated_balancing_price
Raw EIA price series
Henry Hub, WTI (RWTC), Brent (RBRTE), and all 8 natural-gas-storage regions - the underlying data every factor above is computed from.
/v1/series
Raw ENTSO-E series
Sub-daily cross-zonal capacity and physical-flow readings behind the two EU factors above.
/v1/eu/capacity  /v1/eu/physical-flow
CAISO / NYISO wholesale power spark spread Research coverage
Currently used internally for research and not available through the commercial API (ERCOT's own spark spread already cleared both the legal and evidence bar - see the Tier 1 entry above). Legal review
—
EU transmission/interconnector unavailability (DK1, NO2) Research coverage
A real, deeply-backfilled ENTSO-E source (~6 years of history) with a genuinely mixed validation result - real predictive value for one border against forward imbalance-price change, partially redundant for the other. Kept internal pending further evidence, not a legal blocker. Factor catalogue
—
Rankings & screening
Sort subjects by a factor's latest value, or filter to a value range - the cross-sectional analog of a stock screener, for storage regions and weather zones instead of tickers.
/v1/rankings  /v1/screen
Source health
Per-source row count, last-updated timestamp, and a staleness verdict - open, no API key required.
/v1/health/sources

Full breakdown of every factor's own validation evidence and economic effect →

Pricing

Free during early access - pricing not final

Early access is genuinely free, not a bait-and-switch trial - the tiers below are the honest direction pricing is headed, not a live checkout.

Coming soon

Pro

Pricing on request
  • Higher rate limits
  • Extended history
  • Additional factor coverage
  • Commercial usage rights
  • Priority support
Register interest
Talk to us

Enterprise

Custom
  • Custom rate limits
  • Dedicated data requirements
  • Commercial licensing
  • Research / data partnerships
Contact us

Quickstart

From zero to your first factor score

1

Get an API key

Sign up below for a free self-service key - just an email address, no credit card.

shell
$ curl -X POST https://energy.ordinexdata.com/signup \ -H "Content-Type: application/json" \ -d '{"email": "you@example.com"}' {"api_key": "<your-key>", "name": "you@example.com"}
2

Call an endpoint

Send it as the X-API-Key header on every request.

shell
$ curl -H "X-API-Key: <your-key>" \ https://energy.ordinexdata.com/v1/rankings?factor=storage_percentile&limit=5
3

Read the response

The top 5 storage regions ranked by their latest percentile value, most recent observation on/before today.

200 OK
[ { "factor": "storage_percentile", "subject": "PACIFIC", "value": 88.0 }, { "factor": "storage_percentile", "subject": "R48", "value": 62.3 }, ... ]

Reference

Full endpoint reference, generated from the API itself

Every request/response shape below is generated straight from the running API, so it never drifts out of sync with what's actually deployed.

Swagger UI

Interactive - try a request directly from the browser.

Open /docs

ReDoc

A cleaner read-through reference, better for a first pass.

Open /redoc

Access

Start building with Ordinex

Free API access during early access. No credit card - start with the full public factor library.