pyaeso Introduction

pyaeso is a python package that makes access to the Alberta[, Canada,] Electric System Operator’s (AESO) Energy Trading System (ETS) easier.

The Alberta Electric Systems Operator (AESO) <> operates Alberta’s deregulated electricity market. AESO provides price, demand, and other valuable information through public reports on the Energy Trading System (ETS) website <>. This information is useful for economic analysis, power trading, electric system study, and electric system forecasting. The first step in using such information is to download it and parse it into useful data structures - a task performed by this library. Typically data output by this library is used to generate graphs and feed statistical methods, heuristics, and system models to provide useful analysis of the Alberta electric system.

The pyaeso project is hosted at <> and releases are made via the Python Package Index at <>. Online documentation is made available at <>.


A basic knowledge of the Python programming language is required to use this library. Python is an easy to learn, powerful language. An excellent introductory tutorial is available at <>.


AESO generally reports time in mountain standard/daylight time [1]. This is problematic because many time frameworks break when comparing two times across daylight-savings-time (DST) boundaries. Another difficulty comes in comparing times between two different system operators: both need to be converted to the same timezone for the comparison to be meaningful. Even comparing AESO times between two reports is made difficult by inconsistencies in the way the reports handle the beginning [2] and end [3] of DST. pyaeso expends considerable effort on your behalf to convert all times returned by AESO reports to UTC.


[1]Though the AESO pool-price and available transfer capacity reports are in MST/MDT they count hours from 1-24 instead of the more typical 0-23. This will break many strptime based parsers.
[2]On the morning daylight-savings-time begins the AESO pool-price report counts the hours 1, 3, 4, 5, 6 whereas the available transfer capacity reports count the hours 1, 2, 4, 5, 6.
[3]When daylight-savings-time (DST) ends, the AESO pool-price report counts the hours 1, 2, 2*, 3, 4, 5, 6 whereas the available transfer capacity report counts the hours 1, 2, 25, 3, 4, 5, 6.

Table Of Contents

Previous topic

pyaeso Documentation

Next topic

What’s New in pyaeso

This Page