Ieso#

Module Contents#

Classes Summary#

IESO

Independent Electricity System Operator (IESO)

Attributes Summary#

CERTIFICATES_CHAIN_FILE

LOAD CONSTANTS

CURRENT_DIR

FUEL_MIX_INDEX_URL

FUEL_MIX_TEMPLATE_URL

HISTORICAL_FUEL_MIX_INDEX_URL

HISTORICAL_FUEL_MIX_TEMPLATE_URL

HOUR_INTERVAL

LOAD_FORECAST_URL

ZONAL LOAD FORECAST CONSTANTS

LOAD_INDEX_URL

LOAD_TEMPLATE_URL

LOAD FORECAST CONSTANTS

MAXIMUM_DAYS_IN_FUTURE_FOR_ZONAL_LOAD_FORECAST

REAL TIME FUEL MIX CONSTANTS

MAXIMUM_DAYS_IN_PAST_FOR_COMPLETE_GENERATOR_REPORT

HISTORICAL FUEL MIX CONSTANTS

MAXIMUM_DAYS_IN_PAST_FOR_LOAD

MAXIMUM_DAYS_IN_PAST_FOR_ZONAL_LOAD_FORECAST

MINUTES_INTERVAL

NAMESPACES_FOR_XML

ZONAL_LOAD_FORECAST_INDEX_URL

ZONAL_LOAD_FORECAST_TEMPLATE_URL

Contents#

gridstatus.ieso.CERTIFICATES_CHAIN_FILE[source]#

LOAD CONSTANTS

gridstatus.ieso.CURRENT_DIR[source]#
gridstatus.ieso.FUEL_MIX_INDEX_URL = 'https://reports-public.ieso.ca/public/GenOutputCapability/'[source]#
gridstatus.ieso.FUEL_MIX_TEMPLATE_URL[source]#
gridstatus.ieso.HISTORICAL_FUEL_MIX_INDEX_URL = 'https://reports-public.ieso.ca/public/GenOutputbyFuelHourly/'[source]#
gridstatus.ieso.HISTORICAL_FUEL_MIX_TEMPLATE_URL[source]#
gridstatus.ieso.HOUR_INTERVAL = 1[source]#
class gridstatus.ieso.IESO[source]#

Bases: gridstatus.base.ISOBase

Independent Electricity System Operator (IESO)

Attributes

default_timezone

EST

iso_id

ieso

name

Independent Electricity System Operator

status_homepage

https://www.ieso.ca/en/Power-Data

Methods

get_fuel_mix

Hourly output and capability for each fuel type (summed over all generators)

get_generator_report_hourly

Hourly output for each generator for a given date or from date to end.

get_load

Get 5-minute load for the Market and Ontario for a given date or from

get_load_forecast

Get forecasted load for Ontario. Supports only "latest" and "today" because

get_resource_adequacy_report

Retrieve and parse the Resource Adequacy Report for a given date.

get_zonal_load_forecast

Get forecasted load by forecast zone (Ontario, East, West) for a given date

get_fuel_mix(date: str | datetime.date | datetime.datetime, end: datetime.date | datetime.datetime | None = None, verbose: bool = False)[source]#

Hourly output and capability for each fuel type (summed over all generators) for a given date or from date to end. Variable generators (solar and wind) have a forecast.

Parameters:
  • date (datetime.date | datetime.datetime | str) – The date to get the load for Can be a datetime.date or datetime.datetime object, or a string with the values “today” or “latest”. If end is None, returns only data for this date.

  • end (datetime.date | datetime.datetime, optional) – End date. Defaults None If provided, returns data from date to end date. The end can be a datetime.date or datetime.datetime object.

  • verbose (bool, optional) – Print verbose output. Defaults to False.

Returns:

fuel mix

Return type:

pd.DataFrame

get_generator_report_hourly(date: str | datetime.date | datetime.datetime, end: datetime.date | datetime.datetime | None = None, verbose: bool = False)[source]#

Hourly output for each generator for a given date or from date to end. Variable generators (solar and wind) have a forecast and available capacity. Non-variable generators have a capability.

Parameters:
  • date (datetime.date | datetime.datetime | str) – The date to get the load for Can be a datetime.date or datetime.datetime object, or a string with the values “today” or “latest”. If end is None, returns only data for this date.

  • end (datetime.date | datetime.datetime, optional) – End date. Defaults None If provided, returns data from date to end date. The end can be a datetime.date or datetime.datetime object.

  • verbose (bool, optional) – Print verbose output. Defaults to False.

Returns:

generator output and capability/available capacity

Return type:

pd.DataFrame

get_load(date: str | datetime.date | datetime.datetime, end: datetime.date | datetime.datetime | None = None, verbose: bool = False)[source]#

Get 5-minute load for the Market and Ontario for a given date or from date to end date.

Parameters:
  • date (datetime.date | datetime.datetime | str) – The date to get the load for Can be a datetime.date or datetime.datetime object, or a string with the values “today” or “latest”. If end is None, returns only data for this date.

  • end (datetime.date | datetime.datetime, optional) – End date. Defaults None If provided, returns data from date to end date. The end can be a datetime.date or datetime.datetime object.

  • verbose (bool, optional) – Print verbose output. Defaults to False.

  • frequency (str, optional) – Frequency of data. Defaults to “5min”.

Returns:

zonal load as a wide table with columns for each zone

Return type:

pd.DataFrame

get_load_forecast(date: str, verbose: bool = False)[source]#

Get forecasted load for Ontario. Supports only “latest” and “today” because there is only one load forecast.

Parameters:
  • date (str) – Either “today” or “latest”

  • verbose (bool, optional) – Print verbose output. Defaults to False.

Returns:

Ontario load forecast

Return type:

pd.DataFrame

get_resource_adequacy_report(date: str | datetime.date | datetime.datetime, end: datetime.date | datetime.datetime | None = None, vintage: Literal[all, latest] = 'latest', last_modified: str | datetime.date | datetime.datetime | None = None) pandas.DataFrame[source]#

Retrieve and parse the Resource Adequacy Report for a given date.

Parameters:
  • date (str | datetime.date | datetime.datetime) – The date for which to get the report

  • end (datetime.date | datetime.datetime | None) – The end date for the range of reports to get

  • vintage (Literal["all", "latest"]) – The version of the report to get

  • last_modified (str | datetime.date | datetime.datetime | None) – The last modified time after which to get report(s)

Returns:

The Resource Adequacy Report df for the given date

Return type:

pd.DataFrame

get_zonal_load_forecast(date: str | datetime.date | tuple[datetime.date, datetime.date], end: datetime.date | datetime.datetime | None = None, verbose: bool = False)[source]#

Get forecasted load by forecast zone (Ontario, East, West) for a given date or from date to end date. This method supports future dates.

Supports data 90 days into the past and up to 34 days into the future.

Parameters:
  • date (datetime.date | datetime.datetime | str) – The date to get the load for Can be a datetime.date or datetime.datetime object, or a string with the values “today” or “latest”. If end is None, returns only data for this date.

  • end (datetime.date | datetime.datetime, optional) – End date. Defaults None If provided, returns data from date to end date. The end can be a datetime.date or datetime.datetime object.

  • verbose (bool, optional) – Print verbose output. Defaults to False.

Returns:

forecasted load as a wide table with columns for each zone

Return type:

pd.DataFrame

gridstatus.ieso.LOAD_FORECAST_URL = 'https://www.ieso.ca/-/media/Files/IESO/Power-Data/Ontario-Demand-multiday.ashx'[source]#

ZONAL LOAD FORECAST CONSTANTS

gridstatus.ieso.LOAD_INDEX_URL = 'https://reports-public.ieso.ca/public/RealtimeConstTotals'[source]#
gridstatus.ieso.LOAD_TEMPLATE_URL[source]#

LOAD FORECAST CONSTANTS

gridstatus.ieso.MAXIMUM_DAYS_IN_FUTURE_FOR_ZONAL_LOAD_FORECAST = 34[source]#

REAL TIME FUEL MIX CONSTANTS

gridstatus.ieso.MAXIMUM_DAYS_IN_PAST_FOR_COMPLETE_GENERATOR_REPORT = 90[source]#

HISTORICAL FUEL MIX CONSTANTS

gridstatus.ieso.MAXIMUM_DAYS_IN_PAST_FOR_LOAD = 30[source]#
gridstatus.ieso.MAXIMUM_DAYS_IN_PAST_FOR_ZONAL_LOAD_FORECAST = 90[source]#
gridstatus.ieso.MINUTES_INTERVAL = 5[source]#
gridstatus.ieso.NAMESPACES_FOR_XML[source]#
gridstatus.ieso.ZONAL_LOAD_FORECAST_INDEX_URL = 'https://reports-public.ieso.ca/public/OntarioZonalDemand'[source]#
gridstatus.ieso.ZONAL_LOAD_FORECAST_TEMPLATE_URL[source]#