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.