LMP Pricing Data#

Support#

Below are the currently support LMP markets

Markets

Midcontinent ISO

REAL_TIME_5_MIN, DAY_AHEAD_HOURLY

California ISO

REAL_TIME_15_MIN, REAL_TIME_HOURLY, DAY_AHEAD_HOURLY

PJM

REAL_TIME_5_MIN, REAL_TIME_HOURLY, DAY_AHEAD_HOURLY

Electric Reliability Council of Texas

Southwest Power Pool

New York ISO

REAL_TIME_5_MIN, DAY_AHEAD_HOURLY

ISO New England

REAL_TIME_5_MIN, REAL_TIME_HOURLY, DAY_AHEAD_HOURLY

How to use#

We are currently adding Locational Marginal Price (LMP). Even though each BA offers different markets, but you can query them with a standardized API

import gridstatus
nyiso = gridstatus.NYISO()
nyiso.get_lmp(date="today", market="REAL_TIME_5_MIN", locations="ALL")
Time Market Location Location Type LMP Energy Congestion Loss
0 2022-10-28 00:05:00-04:00 REAL_TIME_5_MIN CAPITL Zone 32.94 31.70 0.00 1.24
1 2022-10-28 00:05:00-04:00 REAL_TIME_5_MIN CENTRL Zone 32.72 31.71 0.00 1.01
2 2022-10-28 00:05:00-04:00 REAL_TIME_5_MIN DUNWOD Zone 33.77 31.71 0.00 2.06
3 2022-10-28 00:05:00-04:00 REAL_TIME_5_MIN GENESE Zone 33.26 31.71 0.00 1.55
4 2022-10-28 00:05:00-04:00 REAL_TIME_5_MIN H Q Zone 31.23 31.70 0.00 -0.47
... ... ... ... ... ... ... ... ...
2590 2022-10-28 15:45:00-04:00 REAL_TIME_5_MIN NORTH Zone 40.60 40.84 0.00 -0.24
2591 2022-10-28 15:45:00-04:00 REAL_TIME_5_MIN NPX Zone 41.20 40.84 1.44 1.80
2592 2022-10-28 15:45:00-04:00 REAL_TIME_5_MIN O H Zone 39.74 40.84 0.00 -1.10
2593 2022-10-28 15:45:00-04:00 REAL_TIME_5_MIN PJM Zone 42.61 40.83 -0.14 1.64
2594 2022-10-28 15:45:00-04:00 REAL_TIME_5_MIN WEST Zone 40.80 40.84 0.00 -0.04

2595 rows × 8 columns

And here is querying CAISO

import gridstatus
caiso = gridstatus.CAISO()
locations = ["TH_NP15_GEN-APND", "TH_SP15_GEN-APND", "TH_ZP26_GEN-APND"]
caiso.get_lmp(date="today", market='DAY_AHEAD_HOURLY', locations=locations)
Time Market Location Location Type LMP Energy Congestion Loss
0 2022-10-28 00:00:00-07:00 DAY_AHEAD_HOURLY TH_NP15_GEN-APND Trading Hub 64.75486 66.42586 -0.64805 -1.02296
1 2022-10-28 00:00:00-07:00 DAY_AHEAD_HOURLY TH_SP15_GEN-APND Trading Hub 62.63366 66.42586 -1.42744 -2.36476
2 2022-10-28 00:00:00-07:00 DAY_AHEAD_HOURLY TH_ZP26_GEN-APND Trading Hub 64.45966 66.42586 0.00000 -1.96621
3 2022-10-28 01:00:00-07:00 DAY_AHEAD_HOURLY TH_NP15_GEN-APND Trading Hub 61.02912 62.07561 -0.14018 -0.90630
4 2022-10-28 01:00:00-07:00 DAY_AHEAD_HOURLY TH_SP15_GEN-APND Trading Hub 58.14009 62.07561 -1.79391 -2.14161
... ... ... ... ... ... ... ... ...
67 2022-10-28 22:00:00-07:00 DAY_AHEAD_HOURLY TH_SP15_GEN-APND Trading Hub 74.89360 78.67836 -0.26784 -3.51692
68 2022-10-28 22:00:00-07:00 DAY_AHEAD_HOURLY TH_ZP26_GEN-APND Trading Hub 76.34948 78.67836 0.00000 -2.32888
69 2022-10-28 23:00:00-07:00 DAY_AHEAD_HOURLY TH_NP15_GEN-APND Trading Hub 70.66335 70.93785 0.76119 -1.03569
70 2022-10-28 23:00:00-07:00 DAY_AHEAD_HOURLY TH_SP15_GEN-APND Trading Hub 66.47173 70.93785 -1.45836 -3.00777
71 2022-10-28 23:00:00-07:00 DAY_AHEAD_HOURLY TH_ZP26_GEN-APND Trading Hub 68.88066 70.93785 0.00000 -2.05720

72 rows × 8 columns

You can see what markets are available by accessing the markets property of an iso. For, example

caiso.markets
[<Markets.REAL_TIME_15_MIN: 'REAL_TIME_15_MIN'>,
 <Markets.REAL_TIME_HOURLY: 'REAL_TIME_HOURLY'>,
 <Markets.DAY_AHEAD_HOURLY: 'DAY_AHEAD_HOURLY'>]

The possible lmp query methods are ISO.get_latest_lmp, ISO.get_lmp_today, and ISO.get_lmp.