Caiso ========================== .. py:module:: gridstatus.caiso Module Contents --------------- Classes Summary ~~~~~~~~~~~~~~~ .. autoapisummary:: gridstatus.caiso.CAISO Attributes Summary ~~~~~~~~~~~~~~~~~~~ .. autoapisummary:: gridstatus.caiso.iso Contents ~~~~~~~~~~~~~~~~~~~ .. py:class:: CAISO Bases: :py:obj:`gridstatus.base.ISOBase` California Independent System Operator (CAISO) **Attributes** .. list-table:: :widths: 15 85 :header-rows: 0 * - **default_timezone** - US/Pacific * - **interconnection_homepage** - https://rimspub.caiso.com/rimsui/logon.do * - **iso_id** - caiso * - **markets** - None * - **name** - California ISO * - **status_homepage** - https://www.caiso.com/TodaysOutlook/Pages/default.aspx * - **trading_hub_locations** - ['TH_NP15_GEN-APND', 'TH_SP15_GEN-APND', 'TH_ZP26_GEN-APND'] **Methods** .. autoapisummary:: :nosignatures: gridstatus.caiso.CAISO.get_as_prices gridstatus.caiso.CAISO.get_as_procurement gridstatus.caiso.CAISO.get_curtailment gridstatus.caiso.CAISO.get_fuel_mix gridstatus.caiso.CAISO.get_gas_prices gridstatus.caiso.CAISO.get_ghg_allowance gridstatus.caiso.CAISO.get_interconnection_queue gridstatus.caiso.CAISO.get_lmp gridstatus.caiso.CAISO.get_load gridstatus.caiso.CAISO.get_load_forecast gridstatus.caiso.CAISO.get_pnodes gridstatus.caiso.CAISO.get_stats gridstatus.caiso.CAISO.get_status gridstatus.caiso.CAISO.get_storage .. py:method:: get_as_prices(date, end=None, sleep=4, verbose=False) Return AS prices for a given date for each region Arguments: date: date to return data end: 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: dataframe of AS prices .. py:method:: get_as_procurement(date, end=None, market='DAM', sleep=4, verbose=False) Get ancillary services procurement data from CAISO. Arguments: date: date to return data end: last date of range to return data. if None, returns only date. Defaults to None. market: DAM or RTM. Defaults to DAM. Returns: dataframe of ancillary services data .. py:method:: get_curtailment(date, verbose=False) 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 Arguments: date: date to return data end: 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: dataframe of curtailment data .. py:method:: get_fuel_mix(date, end=None, verbose=False) Get fuel mix in 5 minute intervals for a provided day Arguments: date (datetime or str): "latest", "today", or an object that can be parsed as a datetime for the day to return data. start (datetime or str): start of date range to return. alias for `date` parameter. Only specify one of `date` or `start`. end (datetime or 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): print verbose output. Defaults to False. Returns: pd.Dataframe: dataframe with columns: Time and columns for each fuel type .. py:method:: get_gas_prices(date, end=None, fuel_region_id='ALL', sleep=4, verbose=False) Return gas prices at a previous date Arguments: date: date to return data end: 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: dataframe of gas prices .. py:method:: get_ghg_allowance(date, end=None, sleep=4, verbose=False) Return ghg allowance at a previous date Arguments: date: date to return data end: last date of range to return data. if None, returns only date. Defaults to None. .. py:method:: get_interconnection_queue(verbose=False) .. py:method:: get_lmp(date, market: str, locations: list = None, sleep: int = 5, end=None, verbose=False) Get day ahead LMP pricing starting at supplied date for a list of locations. Arguments: date: 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. 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 dataframe of pricing data .. py:method:: get_load(date, end=None, verbose=False) Return load at a previous date in 5 minute intervals .. py:method:: get_load_forecast(date, end=None, sleep=4, verbose=False) Returns load forecast for a previous date in 1 hour intervals Arguments: date(datetime, pd.Timestamp, or 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. .. py:method:: get_pnodes() .. py:method:: get_stats(verbose=False) .. py:method:: get_status(date='latest', verbose=False) -> str Get Current Status of the Grid. Only date="latest" is supported Known possible values: Normal, Restricted Maintenance Operations, Flex Alert .. py:method:: get_storage(date, verbose=False) Return storage charging or discharging for today in 5 minute intervals Negative means charging, positive means discharging Arguments: date: date to return data .. py:data:: iso