Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: exchange capacity parsing for the ENTSO-E parser #5203

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

VIKTORVAV99
Copy link
Member

@VIKTORVAV99 VIKTORVAV99 commented Mar 15, 2023

Description

Adds exchange capacity parsing for the ENTSO-E parser using the day-ahead capacity information (A61).

This still need some testing and such but it's open for comments.
Unfortunately, less zones than I was initially expecting had live capacity data for exchanges, but it does work well when it is available, and it will gracefully fall back if it's not.

One thing to note is that I needed to add 2 api calls to get this data so we might have to plan for that in the rate limits and wait for ELE-1595 until we merge this (1 api call if there is no data).

Also, just to note: This is technically forecasted capacity data but it should be orders of magnitudes more accurate than the static factors.

Preview

 {'capacity': [-2300.0, 3653.0],
  'datetime': datetime.datetime(2023, 3, 13, 18, 0, tzinfo=tzutc()),
  'netFlow': 2528.0,
  'sortedZoneKeys': 'ES->FR',
  'source': 'entsoe.eu'}

Double check

  • I have tested my parser changes locally with poetry run test_parser "zone_key"
  • I have run pnpx prettier --write . and poetry run format to format my changes.

@VIKTORVAV99
Copy link
Member Author

FYI: @FelixDQ, @pierresegonne, @madsnedergaard

@madsnedergaard
Copy link
Member

This looks very nice! We should definitely get the rate-limiting fixed, so we can implement this! :)

@VIKTORVAV99
Copy link
Member Author

This looks very nice! We should definitely get the rate-limiting fixed, so we can implement this! :)

I think we should try and split it into its own parser function as well before we actually merge this. While the current implementation works and provides a good proof of concept it has some limitations:

  1. There is no way to run it independently from the exchange parser.
  2. It's only run for the exchanges using the ENTSO-E parser.
  3. It's always run for the exchanges using the ENTOS-E parser regardless of data availability.
  4. It does not return future values (would give even more value in regards to guiding estimations.)

(I also think it would make sense to run this just once per hour if implemented and not every 15ish min like the exchange parsers.)

@VIKTORVAV99
Copy link
Member Author

@unitrium is this something we want to proceed with now that we have added the historical endpoint for ENTOS-E which free up some API calls?

Or should we add a new "capacity" endpoint to the parsers so capacity can be parsed individually from exchange data first?

@VIKTORVAV99 VIKTORVAV99 mentioned this pull request Oct 27, 2023
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants