Caiso#
Module Contents#
Classes Summary#
California Independent System Operator (CAISO) |
Functions#
if querying all must use 1d frequency |
|
Attributes Summary#
Contents#
- class gridstatus.caiso.CAISO[source]#
Bases:
gridstatus.base.ISOBaseCalifornia Independent System Operator (CAISO)
Attributes
default_timezone
US/Pacific
interconnection_homepage
iso_id
caiso
markets
None
name
California ISO
status_homepage
trading_hub_locations
[‘TH_NP15_GEN-APND’, ‘TH_SP15_GEN-APND’, ‘TH_ZP26_GEN-APND’]
Methods
Return AS prices for a given date for each region
Get ancillary services procurement data from CAISO.
Return curtailed non-operational generator report for a given date.
Return curtailment data for a given date
Get fuel mix in 5 minute intervals for a provided day
Return gas prices at a previous date
Return ghg allowance at a previous date
Get LMP pricing starting at supplied date for a list of locations.
Return load at a previous date in 5 minute intervals
Returns load forecast for a previous date in 1 hour intervals
Return data from OASIS for a given dataset
Get Current Status of the Grid. Only date="latest" is supported
Return storage charging or discharging for today in 5 minute intervals
- get_as_prices(date, end=None, market='DAM', sleep=4, verbose=False)[source]#
Return AS prices for a given date for each region
- Parameters:
date (datetime.date, str) – date to return data
end (datetime.date, str) – last date of range to return data. If None, returns only date. Defaults to None.
market (str) – DAM or HASP. Defaults to DAM.
verbose (bool, optional) – print out url being fetched. Defaults to False.
- Returns:
A DataFrame of AS prices
- Return type:
pandas.DataFrame
- get_as_procurement(date, end=None, market='DAM', sleep=4, verbose=False)[source]#
Get ancillary services procurement data from CAISO.
- Parameters:
date (datetime.date, str) – date to return data
end (datetime.date, str) – last date of range to return data. If None, returns only date. Defaults to None.
market – DAM or RTM. Defaults to DAM.
- Returns:
A DataFrame of ancillary services data
- Return type:
pandas.DataFrame
- get_curtailed_non_operational_generator_report(date, end=None, verbose=False)[source]#
- Return curtailed non-operational generator report for a given date.
Earliest available date is June 17, 2021.
- Parameters:
date (datetime.date, str) – date to return data
end (datetime.date, str) – last date of range to return data. If None, returns only date. Defaults to None.
verbose (bool, optional) – print out url being fetched. Defaults to False.
- Returns:
A DataFrame of curtailed non-operational generator report
column glossary: http://www.caiso.com/market/Pages/OutageManagement/Curtailed -OperationalGeneratorReportGlossary.aspx
if requesting multiple days, may want to run following to remove outages that get reported across multiple days: ```df.drop_duplicates(
subset=[“OUTAGE MRID”, “CURTAILMENT START DATE TIME”], keep=”last”)```
- Return type:
pandas.DataFrame
- get_curtailment(date, verbose=False)[source]#
Return curtailment data for a given date
Notes
requires java to be installed in order to run
Data available from June 30, 2016 to present
- Parameters:
date (datetime.date, str) – date to return data
end (datetime.date, str) – last date of range to return data. If None, returns only date. Defaults to None.
verbose – print out url being fetched. Defaults to False.
- Returns:
A DataFrame of curtailment data
- Return type:
pandas.DataFrame
- get_fuel_mix(date, start=None, end=None, verbose=False)[source]#
Get fuel mix in 5 minute intervals for a provided day
- Parameters:
date (datetime.date, str) – “latest”, “today”, or an object that can be parsed as a datetime for the day to return data.
start (datetime.date, str) – start of date range to return. alias for date parameter. Only specify one of date or start.
end (datetime.date, str) – “today” or an object that can be parsed as a datetime for the day to return data. Only used if requesting a range of dates.
verbose (bool, optional) – print verbose output. Defaults to False.
- Returns:
A DataFrame with columns - ‘Time’ and columns for each fuel type.
- Return type:
pandas.DataFrame
- get_gas_prices(date, end=None, fuel_region_id='ALL', sleep=4, verbose=False)[source]#
Return gas prices at a previous date
- Parameters:
date (datetime.date, str) – date to return data
end (datetime.date, str) – last date of range to return data. If None, returns only date. Defaults to None.
fuel_region_id (str, or list) – single fuel region id or list of fuel region ids to return data for. Defaults to ALL, which returns all fuel regions.
- Returns:
A DataFrame of gas prices
- Return type:
pandas.DataFrame
- get_ghg_allowance(date, end=None, sleep=4, verbose=False)[source]#
Return ghg allowance at a previous date
- Parameters:
date (datetime.date, str) – date to return data
end (datetime.date, str) – last date of range to return data. If None, returns only date. Defaults to None.
- get_lmp(date, market: str, locations: list = None, sleep: int = 5, end=None, verbose=False)[source]#
Get LMP pricing starting at supplied date for a list of locations.
- Parameters:
date (datetime.date, str) – date to return data
market – market to return from. supports:
locations (list) – list of locations to get data from. If no locations are provided, defaults to NP15, SP15, and ZP26, which are the trading hub locations. USE “ALL_AP_NODES” for all Aggregate Pricing Node. Use “ALL” to get all nodes. For a list of locations, call
CAISO.get_pnodes()sleep (int) – number of seconds to sleep before returning to avoid hitting rate limit in regular usage. Defaults to 5 seconds.
- Returns:
A DataFrame of pricing data
- Return type:
pandas.DataFrame
- get_load(date, end=None, verbose=False)[source]#
Return load at a previous date in 5 minute intervals
- get_load_forecast(date, end=None, sleep=4, verbose=False)[source]#
Returns load forecast for a previous date in 1 hour intervals
- Parameters:
date (datetime.date, pd.Timestamp, str) – day to return. If string, format should be YYYYMMDD e.g 20200623
sleep (int) – number of seconds to sleep before returning to avoid hitting rate limit in regular usage. Defaults to 5 seconds.
- get_oasis_dataset(dataset, date, end=None, params=None, raw_data=True, sleep=5, verbose=False)[source]#
Return data from OASIS for a given dataset
- Parameters:
dataset (str) – dataset to return data for. See CAISO.list_oasis_datasets for supported datasets
date (datetime.date, str) – date to return data
end (datetime.date, str) – last date of range to return data. If None, returns only date. Defaults to None.
params (dict) – dictionary of parameters to pass to dataset. See CAISO.list_oasis_datasets for supported parameters
raw_data (bool, optional) – return raw data from OASIS. Defaults to True.
sleep (int, optional) – number of seconds to sleep between requests. Defaults to 5.
verbose (bool, optional) – print out url being fetched. Defaults to False.
- Returns:
A DataFrame of OASIS data
- Return type:
pandas.DataFrame
- get_status(date='latest', verbose=False) str[source]#
Get Current Status of the Grid. Only date=”latest” is supported
Known possible values: Normal, Restricted Maintenance Operations, Flex Alert