pywind.elexon

http://www.elexonportal.co.uk/themes/elexonv2/public/images/theme_v2logo.gif

Warning

Use of the Elexon API requires registration and use of an API key. Registration is free.

Details of the Elexon API can be found in https://www.elexon.co.uk/wp-content/uploads/2016/10/Application-Programming-Interfaces-API-and-Data-Push-user-guide.pdf

pywind.elexon.api

Information taken from the Elexon API User Guide.

https://www.elexon.co.uk/wp-content/uploads/2016/10/Application-Programming-Interfaces-API-and-Data-Push-user-guide.pdf

class pywind.elexon.api.B1320(apikey)[source]

Bases: pywind.elexon.api.ElexonAPI

XML_MAPPING = ['timeSeriesID', 'settlementDate', 'settlementPeriod', 'quantity', 'flowDirection', 'reasonCode', 'documentType', 'processType', 'resolution', 'curveType', 'activeFlag', 'documentID', 'documentRevNum']
post_item_cleanup(item)[source]
rows()[source]
class pywind.elexon.api.B1330(apikey)[source]

Bases: pywind.elexon.api.ElexonAPI

XML_MAPPING = ['timeSeriesID', 'year', 'month', 'congestionAmount', 'documentType', 'processType', 'businessType', 'resolution', 'activeFlag', 'documentID', 'documentRevNum']
post_item_cleanup(item)[source]
rows()[source]
class pywind.elexon.api.B1420(apikey)[source]

Bases: pywind.elexon.api.ElexonAPI

XML_MAPPING = ['documentType', 'businessType', 'processType', 'timeSeriesID', 'powerSystemResourceType', 'year', 'bMUnitID', 'registeredResourceEICCode', 'nominal', 'nGCBMUnitID', 'registeredResourceName', 'activeFlag', 'documentID', 'implementationDate', 'powerSystemResourceType']
post_item_cleanup(item)[source]
rows()[source]
class pywind.elexon.api.B1610(apikey)[source]

Bases: pywind.elexon.api.ElexonAPI

post_item_cleanup(item)[source]
rows()[source]
class pywind.elexon.api.B1630(apikey)[source]

Bases: pywind.elexon.api.ElexonAPI

XML_MAPPING = ['documentType', 'businessType', 'processType', 'timeSeriesID', 'quantity', 'curveType', 'resolution', 'settlementDate', 'settlementPeriod', 'PSRType', 'powerSystemResourceType', 'registeredResourceEICCode', 'marketGenerationUnitEICCode', 'activeFlag', 'documentID', 'documentRevNum']
rows()[source]
class pywind.elexon.api.BMUNITSEARCH(apikey=None)[source]

Bases: pywind.elexon.api.ElexonAPI

Balancing Mechanism Unit Search

CATEGORIES = {'C': 'Additional Supplier', '2': 'Supplier', 'E': 'Embedded', 'T': 'Directly connected', 'G': 'Unknown', 'I': 'Interconnector', 'M': 'Miscellaneous', 'S': 'Unknown'}
XML_MAPPING = ['recordType', 'bmUnitID', 'bmUnitType', 'leadPartyName', 'ngcBMUnitName', 'activeFlag']
post_item_cleanup(item)[source]
class pywind.elexon.api.DERBMDATA(apikey=None)[source]

Bases: pywind.elexon.api.ElexonAPI

Derived Balancing Mechanism Data

MULTI_RESULTS = (('bav', '/response/responseBody/bav/responseList/item'), ('oav', '/response/responseBody/oav/responseList/item'), ('ipbav', '/response/responseBody/ipbav/responseList/item'), ('ipoav', '/response/responseBody/ipoav/responseList/item'), ('ipbc', '/response/responseBody/ipbc/responseList/item'), ('ipoc', '/response/responseBody/ipoc/responseList/item'))
post_item_cleanup(item)[source]
class pywind.elexon.api.DERSYSDATA(apikey=None)[source]

Bases: pywind.elexon.api.ElexonAPI

Derived System Data

post_item_cleanup(item)[source]
class pywind.elexon.api.ElexonAPI(apikey=None, report=None)[source]

Bases: object

MULTI_RESULTS = None
XML_MAPPING = None
get_data(**params)[source]

Get data from the Elexon servers and attempt to parse it into a series of dicts each representing a record. Parameters are passed as a dict. Multiple sets of data are created in the multi member, single sets in items.

post_item_cleanup(item)[source]

Holder for a subclassed function to transform the members of the basic dict into something more useful.

class pywind.elexon.api.FUELINST(apikey=None)[source]

Bases: pywind.elexon.api.ElexonAPI

Instant Generation by Fuel Type

XML_MAPPING = ['recordType', 'startTimeOfHalfHrPeriod', 'settlementPeriod', 'publishingPeriodCommencingTime', 'ccgt', 'oil', 'coal', 'nuclear', 'wind', 'ps', 'npshyd', 'ocgt', 'other', 'intfr', 'intirl', 'intned', 'intew', 'activeFlag']
post_item_cleanup(item)[source]
class pywind.elexon.api.UOU2T52W(apikey=None)[source]

Bases: pywind.elexon.api.ElexonAPI

National Output Useable by Fuel Type and BM Unit (2-52 Weeks Ahead)

pywind.elexon.api.make_elexon_url(report, version)[source]

pywind.elexon.unit

class pywind.elexon.unit.BalancingData(api_key)[source]

Bases: object

Parent class to hold data from the :mod:DERBMDATA API.

get_data(**params)[source]
class pywind.elexon.unit.BalancingPeriodData[source]

Bases: object

Class that holds the volume and cashflow totals for a single station/period.

add_data(element, item)[source]
bid_rate
offer_rate
class pywind.elexon.unit.BalancingUnitData(item)[source]

Bases: object

Class to hold information about a single station for multiple periods

add_data(element, item)[source]