Skip to main content

Pythonic access to the Alberta (Canada) Electric System Operator (AESO) Energy Trading System (ETS).

Project description

======
pyaeso
======

pyaeso is a python package that makes access to the Alberta Electric System
Operator's (AESO) Energy Trading System (ETS) easier.

The Alberta Electric Systems Operator (AESO) <http://en.wikipedia.org/wiki/AESO>
operates the Canadian province of Alberta's deregulated electricity
market. AESO provides price, demand, and other valuable information
through the publically accessible Energy Trading System (ETS) website
[http://ets.aeso.ca]. 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 the data will feed statistical methods, heuristics, and system
models to provide useful analysis of the Alberta electric system.


Requirements
============
* *Python 2.4 or better* - Available at <http://python.org/download>
(2009-11-25).

* *pytz* - "World timezone definitions, modern and historical".
Available at <http://pypi.python.org/pypi/pytz> (2009-11-14).


Installation
============

Extracting the archive, enter the recovered directory and type:

``python setup.py install``


Usage
=====

Some code samples that use pyaeso are availble in the ``examples``
directory. One sample is listed here::

'''Print yesterday's market clearing price/demand points and exit.'''

# Standard library imports
import sys
from StringIO import StringIO
import datetime
from pprint import pprint

# 3rd Party Libraries
from pyaeso import ets

def main():
end_date = datetime.date.today()
start_date = end_date - datetime.timedelta(1)

f = StringIO()
ets.dump_pool_price(f, start_date, end_date)
f.seek(0)
#print f.getvalue()
data = list(ets.parse_pool_price_file(f))
f.close()

pprint('''Yesterday's market clearing price/demand points.''')
for d in data:
# Time calculations are easier when done in UTC so that no timezone
# conversions or daylist-savings time conversions need to be made. For
# this reason all times yielded by pyaeso are UTC.
#
# UTC times are converted to local times when they are displayed to the
# user.
print '{0} ${1} {2}MW'.format(d.t.astimezone(ets.ALBERTA_TZ),
d.price, d.demand)

return(0)


if __name__ == '__main__':
sys.exit(main())



Known Incompatibilities
=======================
* *Python < 2.4* - untested on these versions of python. There does not
appear to be a technical reason why Python 2.3 will not work, but use
at your own risk. Pyaeso makes extensive use of the Decimal class
which was distributed beginning with Python 2.3. The underlying pytz
library supports Python 2.3 and above. Trying to use pyaeso with
Python 2.2 or below will definately fail out-of-the box.

* *Python 3* - pyaeso uses the pytz package which has no Python 3 version
(2009-11-14).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

pyaeso-0.2.zip (350.7 kB view details)

Uploaded Source

pyaeso-0.2.tar.gz (347.5 kB view details)

Uploaded Source

pyaeso-0.2.tar.bz2 (352.8 kB view details)

Uploaded Source

File details

Details for the file pyaeso-0.2.zip.

File metadata

  • Download URL: pyaeso-0.2.zip
  • Upload date:
  • Size: 350.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pyaeso-0.2.zip
Algorithm Hash digest
SHA256 dc930265624cb0cec768e22f0b926f0e4f21a77fe2f06d188d438329d501d9aa
MD5 a525f7f376d22ca72bc547f8c8d29a52
BLAKE2b-256 b90aa6d819c53b81959fe17e9102b92eb21d5ff9bb23b7aae91c427c592af922

See more details on using hashes here.

File details

Details for the file pyaeso-0.2.tar.gz.

File metadata

  • Download URL: pyaeso-0.2.tar.gz
  • Upload date:
  • Size: 347.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pyaeso-0.2.tar.gz
Algorithm Hash digest
SHA256 58220c4b3cf78ade5c12df02836036e73357daca65f08a3d16ee849c82dd2463
MD5 de74fbd8f510792a55b853b92969936d
BLAKE2b-256 d35862e2f961cda089d97617e982a3511912cef0cd8a9b44cdc0d53d1393621d

See more details on using hashes here.

File details

Details for the file pyaeso-0.2.tar.bz2.

File metadata

  • Download URL: pyaeso-0.2.tar.bz2
  • Upload date:
  • Size: 352.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pyaeso-0.2.tar.bz2
Algorithm Hash digest
SHA256 a03247d9554c9d8a97fd8de899dd0d2d071c8073fb1e6a4fc8f05ae7e51e4ebe
MD5 f565bb896b7bfa100ed286e6aa18d632
BLAKE2b-256 bbc97ef65c3e78ea5543f98299354434bb045018d7f08ebb607f0287c94ad8ff

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page