Skip to main content

Core Concepts

Understanding these fundamental concepts will help you navigate the Enertel platform and make the most of our forecasting capabilities. These terms form the "language of Enertel forecasts" and appear throughout our API responses and documentation.

Targets

Targets represent the specific data series you want to forecast at a particular market level. A target combines a data series (like DALMP or RTLMP) with all relevant objects (price nodes, hubs, interfaces) within a specific Independent System Operator (ISO).

Key fields: target_description, target_id

Example: "ERCOT DALMP 72 hours ahead" would be a target that forecasts day-ahead locational marginal prices for all ERCOT price nodes.

Objects

Objects are the physical or logical entities within an electricity market that we analyze and forecast. These can include:

  • Price nodes: Specific locations where electricity is priced
  • Hubs: Aggregated pricing points representing multiple nodes
  • Interfaces: Transmission connections between regions
  • Power plants: Generation facilities
  • System-wide entities: Market-level aggregations

Key fields: object_name, object_id, object_type, iso

Data Series

Data Series represent specific measurements or market signals tracked over time. Common examples include:

  • DALMP: Day-ahead locational marginal prices
  • RTLMP: Real-time locational marginal prices
  • RegUp Price: Regulation up ancillary service prices
  • Generation by type: Non-market data like solar or wind generation
  • Load forecasts: Demand predictions

Key fields: series_name

Features

Features are the intersection of a single object and a single data series - they represent the specific time series we can query and forecast. For example, "day-ahead price at Houston North Hub" would be one feature.

Key fields: feature_id

Example: If you want to forecast DALMP at a specific price node, that combination creates a unique feature that can be queried through our APIs.

Models

Models are the machine learning algorithms and statistical methods that generate our forecasts. Each model is:

  • Trained on historical data for optimal performance
  • Target-specific - optimized for particular data series
  • Multi-object capable - can forecast for many objects simultaneously

Key fields: model_id, model_created_at, architecture

Models are continuously improved and retrained to maintain accuracy as market conditions evolve.

Scenarios

Scenarios capture the complete set of input conditions at a specific point in time. They represent:

  • Point-in-time snapshots of all relevant market inputs
  • Future-looking data as it existed when the scenario was created
  • Target-specific context including weather, demand, and market conditions

Key fields: scenario_id, created_at

When models run on scenarios, they generate forecasts based on the exact conditions captured in that scenario.

Model Inferences

Model Inferences are groups of forecasts generated simultaneously. Each inference file represents:

  • Single execution of one model on one scenario
  • Consistent timing - all forecasts in a file use the same input conditions (the scenario)
  • Complete coverage - includes forecasts for all objects in the target

Key fields: inference_id

Forecasts

Forecasts are the actual predictions generated by our models. Each forecast includes:

  • Probabilistic distributions with 13 different percentile levels (p01, p05, p10, p20, p30, p40, p50, p60, p70, p80, p90, p95, p99)
  • Point estimates for specific timestamps
  • Uncertainty quantification through the full distribution

Key fields: timestamp, p01 through p99, value

This probabilistic approach allows you to understand not just what we expect to happen, but the full range of possible outcomes and their likelihoods.

Relationships Between Concepts

Target (ERCOT DALMP)
├── Objects (Price Nodes, Hubs)
│ ├── Features (Object + Series combinations)
│ └── Models (Trained for this target)
├── Scenarios (Input conditions)
└── Model Inferences (Model + Scenario combinations)
└── Forecasts (Individual predictions)

Understanding these relationships helps you navigate our APIs and interpret the data structure in your applications.