Dataframe: CAISO:caiso_lmp_day_ahead_hourly - CAISO LMP Day-Ahead Hourly#
Description#
Hourly locational marginal prices (LMPs) from the CAISO Day-Ahead Market, the auction held the day before delivery that sets one price per hour per grid location. The LMP is decomposed into its energy, congestion, loss, and greenhouse-gas components.
This dataset is the day-ahead (DAM) leg for the project’s spread work: DAM-RT spreads against the real-time LMP datasets, location spreads between trading hubs, time spreads within an operating day, and TBx (top-minus-bottom x hours) storage-value calculations.
Data Dictionary#
interval_start_utc:
datetime64[ns]Interval start, UTC (naive).interval_end_utc:
datetime64[ns]Interval end = start + 1 hour, UTC (naive).market:
strMarket identifier;DAY_AHEAD_HOURLYin all sampled rows.location:
strNode, AP node, or trading hub ID (long format, one location per row).location_type:
strLocation category, e.g.NodeorAP Node. Trading hubs useTH_*APNode IDs.lmp:
float64Locational marginal price, $/MWh. Identity: lmp = energy + congestion + loss + ghg.energy:
float64System marginal energy component, $/MWh.congestion:
float64Congestion component, $/MWh.loss:
float64Loss component, $/MWh.ghg:
float64Greenhouse-gas component, $/MWh. Zero for locations outside California.
Notes#
The LMP decomposition identity holds exactly:
lmp = energy + congestion + loss + ghg.Coverage: the five hub APNodes - NP15 (
TH_NP15_GEN-APND), SP15 (TH_SP15_GEN-APND), ZP26 (TH_ZP26_GEN-APND), PACE (TH_PACE_GEN-APND), PACW (TH_PACW_GEN-APND) - with history cached from 2023-05-11, the OASIS retention floor, onward.PACE and PACW (PacifiCorp East/West BAAs, WEIM/EDAM) begin exactly at midnight Pacific on 2026-05-01. That is the market go-live date for those hub APNodes, not a data gap.
Timestamps are stored as naive UTC. Any local-time (US/Pacific) view is computed at analysis time, never stored on disk.
Data Preview#
Rows: 92,349 Â |Â Columns: 10 Â |Â Cache: data/opensource/caiso_lmp_day_ahead_hourly.parquet
Sample rows#
First and latest 5 rows by interval_start_utc.
interval_start_utc |
interval_end_utc |
market |
location |
location_type |
lmp |
energy |
congestion |
loss |
ghg |
|---|---|---|---|---|---|---|---|---|---|
2023-05-11 07:00 |
2023-05-11 08:00 |
DAY_AHEAD_HOURLY |
TH_ZP26_GEN-APND |
Trading Hub |
8.815 |
9.281 |
0.0 |
-0.466 |
0.0 |
2023-05-11 07:00 |
2023-05-11 08:00 |
DAY_AHEAD_HOURLY |
TH_SP15_GEN-APND |
Trading Hub |
9.049 |
9.281 |
0.0 |
-0.232 |
-0.0 |
2023-05-11 07:00 |
2023-05-11 08:00 |
DAY_AHEAD_HOURLY |
TH_NP15_GEN-APND |
Trading Hub |
8.912 |
9.281 |
0.0 |
-0.368 |
-0.0 |
2023-05-11 08:00 |
2023-05-11 09:00 |
DAY_AHEAD_HOURLY |
TH_ZP26_GEN-APND |
Trading Hub |
6.788 |
7.129 |
0.0 |
-0.342 |
0.0 |
2023-05-11 08:00 |
2023-05-11 09:00 |
DAY_AHEAD_HOURLY |
TH_SP15_GEN-APND |
Trading Hub |
6.954 |
7.129 |
0.0 |
-0.175 |
-0.0 |
… |
… |
… |
… |
… |
… |
… |
… |
… |
… |
2026-08-27 06:00 |
2026-08-27 07:00 |
DAY_AHEAD_HOURLY |
TH_NP15_GEN-APND |
Trading Hub |
56.341 |
55.758 |
-9.463 |
-2.288 |
12.334 |
2026-08-27 06:00 |
2026-08-27 07:00 |
DAY_AHEAD_HOURLY |
TH_PACE_GEN-APND |
AP Node |
60.347 |
62.326 |
0.085 |
-2.063 |
0.0 |
2026-08-27 06:00 |
2026-08-27 07:00 |
DAY_AHEAD_HOURLY |
TH_PACW_GEN-APND |
AP Node |
48.277 |
55.758 |
-6.84 |
-0.641 |
0.0 |
2026-08-27 06:00 |
2026-08-27 07:00 |
DAY_AHEAD_HOURLY |
TH_SP15_GEN-APND |
Trading Hub |
72.623 |
55.758 |
7.085 |
-2.553 |
12.334 |
2026-08-27 06:00 |
2026-08-27 07:00 |
DAY_AHEAD_HOURLY |
TH_ZP26_GEN-APND |
Trading Hub |
54.455 |
55.758 |
-10.722 |
-2.914 |
12.334 |
Column summary#
Column |
Dtype |
Nulls |
Min |
Max |
|---|---|---|---|---|
|
|
0 |
2023-05-11 07:00 |
2026-08-27 06:00 |
|
|
0 |
2023-05-11 08:00 |
2026-08-27 07:00 |
|
|
0 |
DAY_AHEAD_HOURLY |
DAY_AHEAD_HOURLY |
|
|
0 |
TH_NP15_GEN-APND |
TH_ZP26_GEN-APND |
|
|
0 |
AP Node |
Trading Hub |
|
|
0 |
-68.009 |
1247.634 |
|
|
0 |
-42.086 |
1215.39 |
|
|
0 |
-289.548 |
193.603 |
|
|
0 |
-70.703 |
4.027 |
|
|
0 |
-0.0 |
33.399 |
DataFrame Glimpse#
Rows: 92349
Columns: 10
$ interval_start_utc <datetime[ns]> 2026-08-27 06:00:00
$ interval_end_utc <datetime[ns]> 2026-08-27 07:00:00
$ market <str> 'DAY_AHEAD_HOURLY'
$ location <str> 'TH_ZP26_GEN-APND'
$ location_type <str> 'Trading Hub'
$ lmp <f64> 54.45514
$ energy <f64> 55.75814
$ congestion <f64> -10.72246
$ loss <f64> -2.91433
$ ghg <f64> 12.33379
Dataframe Manifest#
Dataframe Name |
CAISO LMP Day-Ahead Hourly |
|---|---|
Dataframe ID |
|
Data Sources |
CAISO OASIS (PRC_LMP, DAM) |
Data Providers |
CAISO |
Links to Providers |
|
Topic Tags |
Lmp, Day-Ahead, Spreads |
Type of Data Access |
|
How is data pulled? |
src/pulls/pull_caiso_lmp_day_ahead_hourly.py via the open-source gridstatus library |
Data available up to (min) |
N/A |
Data available up to (max) |
N/A |
Dataframe Path |
data\opensource\caiso_lmp_day_ahead_hourly.parquet |
Linked Charts:
Pipeline Manifest#
Pipeline Name |
Project-Lab-Energy-Weather-Natgas-Quanto-CAISO |
|---|---|
Pipeline ID |
|
Lead Pipeline Developer |
Brian Nguyen |
Contributors |
Brian Nguyen, Claire Kim |
Git Repo URL |
|
Pipeline Web Page |
|
Date of Last Code Update |
2026-08-27 10:08:05 |
OS Compatibility |
Windows, Linux, macOS |
Linked Dataframes |
CAISO:caiso_lmp_day_ahead_hourly |
Build Commands:
doit