Grid Energy Logic

The high-resolution energy oracle for autonomous trading

Short-horizon nodal signals and grid analytics—grounded in wholesale pricing (PJM) and meteorological context (NOAA)—exposed through auditable API contracts.

Problem framing

Nodal prices live in a coupled physical–economic system

Wholesale electricity is not a single scalar: it is a high-dimensional field over pricing nodes, shaped by unit commitment, reserve products, transmission limits, and loss models. At sub-hourly resolution, LMP trajectories exhibit jumps, mean reversion, and cross-node dependence that naive spot-temperature regressions fail to capture.

Meanwhile, radiation and cloud fields modulate distributed generation and cooling load, linking mesoscale meteorology to balancing stress within minutes to hours. Any credible short-horizon oracle must therefore fuse ISO price discovery with numerically stable weather features—not folklore correlations.

Sketch of the conditioning structure (informal)

Q^τ(p,ω,θ)E[Yp,τPtp,Φt(wx)(ω),θ]\hat{Q}_{\tau}(p,\omega,\theta) \approx \mathbb{E}\bigl[\, Y_{p,\tau} \,\big|\, P_t^{\,p},\, \Phi_t^{(\mathrm{wx})}(\omega),\, \theta \,\bigr]
Y
Target nodal quantity (e.g., short-horizon outcome at pricing node).
P, Φ
ISO price / system state and NWP-derived meteorological features (engineered offline from public archives).
θ, τ
Fixed calibration / hyperparameters and decision horizon.

Notation is illustrative. Estimators, regularity conditions, and scoring rules belong in your model card and backtest appendix—not in this sketch.

Built for credibility

GRENL separates concerns the way serious infrastructure teams do: a focused API service for data contracts and inference, typed Python boundaries, and automated quality gates. The landing surface you are reading is intentionally thin—serious logic ships in core-api.

  • Node intelligence

    Map human-readable hubs and zones to PJM pricing nodes; serve consistent identifiers so estimators and risk systems agree on the same pnode key.

  • Low-latency cache

    Hot-path LMP materialized in Redis with explicit TTL semantics—so bursty agent fleets do not stampede primary ISO feeds.

  • Machine-native access

    Optional x402-style payment headers for machine-to-machine metering; current public implementation is a placeholder gate designed for integration testing.

Interactive

Signal lab

Tune toy parameters, drag levers on a synthetic trace, and skim guided cards—nothing here calls production services; it is all in-browser for intuition.

Synthetic signal

Control deck

Primary curve is a synthetic imbalance proxy; cyan curve is a transformed response after weather and horizon conditioning. It is structured, but not a validated market forecast.

Imbalance

58

Ramp risk

62

Spread

±35 MW

RawConditioned
Price stress72%
Wx blend45%
Horizon gain55m

Play with scalars

Live conditioning sketch

Drag the controls—notation updates in real time. Values are illustrative only; they do not connect to production models.

Implied output

40.3 a.u.

Sketch confidence

65%

Q-hat(tau, p, omega, theta) is estimated from price state, weather coupling, and calibration settings.

tau=30 min, theta=0.42, omega=0.65

Guided tour

Four lenses on the stack

Use arrows, dots, or keyboard ← →. Each card is a compressed narrative—deep dives live in integration docs and onboarding materials.

Markets

LMP is a field, not a thermometer

Realtime nodal prices fold in congestion, losses, and commitment. GRENL treats ISO feeds as the primary discovery channel and maps human-readable hubs to stable pnode keys so agents share one coordinate system.

Technical depth

Scientific & engineering substrate

Select a focus area. Copy is written for readers comfortable with ISO markets, numerical weather prediction, and basic statistical decision theory.

Organized wholesale markets clear at locational marginal prices (LMPs)—nodal valuations that aggregate generator offers, load bids, and the shadow prices of binding transmission constraints. In PJM-class footprints, realtime LMP therefore encodes congestion rents, loss allocation, and commitment outcomes at the pricing node.

GRENL's ingestion path treats ISO-published realtime quotes as the primary price-discovery channel for short-horizon inference, with explicit mapping from human-readable hubs to pnode identifiers so downstream estimators see a stable coordinate system across sessions.

Lens selector

Same stack, different emphasis

Choose how you want the narrative framed. This does not change product behavior—it reorganizes what we highlight for your role.

Emphasis on nodal LMP as a high-frequency state variable, cross-node coherence, and deterministic signals suitable for execution logic and risk limits—not hand-wavy “AI alpha.”

  • Stable pnode IDs and cache-friendly quote paths for agentic workflows.
  • Surrogate outputs treated as features into your own portfolio constraints.
  • Roadmap: probabilistic bands with explicit scoring-rule evaluation.

Provenance

Data lineage & ingestion posture

We bias toward sources you can cite in a methods section: ISO primary feeds, NOAA open data, and durable relational stores—not screenshots or unversioned spreadsheets.

  • PJM Data Miner / API Portal

    Realtime and archival LMP series as published by the ISO. Authentication via subscription key; rate limits treated as part of the control problem, not an afterthought.

  • NOAA NODD — HRRR-class fields

    Mesoscale analyses and short-range forecasts from NOAA’s open dissemination pathways (e.g., Registry of Open Data on AWS). GRIB/Zarr pipelines favor reproducible, citable inputs over opaque scrapers.

  • TimescaleDB + Redis

    Runtime quote cache uses explicit TTL (300s) in Redis. The core API data layer is Postgres/Timescale-compatible for deployment-specific historical retention policies.

Data governance

Cadence, retention, and failure handling

Public behavior is explicit: every source has a cadence, a retention window, and deterministic error surfacing. No silent fallbacks.

PJM realtime LMP

Cadence
Fetched on-demand per prediction request; Redis cache TTL 300s.
Retention
Cached quote retained up to 5 minutes, then expired automatically.
Failure mode
PJM 429 => HTTP 503 with retry metadata; malformed/upstream errors => HTTP 502.

Node reference mapping

Cadence
Loaded from versioned node mapping file at service startup.
Retention
Versioned in source history; runtime copy replaced on deploy.
Failure mode
Unknown slug => HTTP 404; raw numeric pnode IDs still accepted.

Weather inputs

Cadence
Provided by caller per request in current public build.
Retention
Not persisted by default in the public runtime path.
Failure mode
Invalid bounds/type => HTTP 422 request validation errors.

Security posture

Access, secrets, and operational controls

Auth model

Default API mode is contract-driven access with optional x402-style payment gate when PAYMENTS_ENABLED is enabled for a deployment.

Key handling

Provider credentials (for example PJM subscription keys) are server-side environment secrets. Keys are never shipped in browser bundles.

Logging policy

Log verbosity is environment-configurable. Operational logs focus on request outcomes and errors, with a policy to avoid secret material in logs.

Compliance posture

No blanket SOC 2 / ISO 27001 attestation is claimed on this page. Control requirements are handled in customer-specific onboarding and agreements.

Formal trust targets and support response windows are summarized on the Trust page.

Architecture snapshot

Async-first FastAPI workers, structured logging hooks, and container builds verified in CI. The stack is chosen for latency, auditability, and operational simplicity—not novelty for its own sake.

API
Python 3.11 + FastAPI (async I/O)
Cache
Redis — TTL-bound hot quotes
Historical
Postgres/Timescale-ready schema for time-series backtests
Quality
Ruff + Mypy + Pytest in GitHub Actions
Deploy
Multi-stage Docker — non-root runtime
Edge
Next.js landing — Route Handlers for health checks

FAQ

Definitions & disclaimers

  • A pnode is the ISO’s discrete identifier for a locational marginal price. It may represent a hub, zone aggregate, or specific injection/withdrawal point depending on market rules. GRENL resolves human labels (e.g., hub nicknames) to these IDs so your estimators always join on the same key the ISO uses for settlement-quality data.

Integration

Request onboarding

Tell us your deployment profile and we will return an onboarding plan with API scope, expected limits, and rollout checkpoints.

Request onboarding

Share your integration profile and we will scope endpoints, limits, and rollout steps.

Primary channel: api@grenl.com