DAO · dynamische stroomprijs

Gebruik stroomprijs-prognose in DAO

Deze koppeling is bedoeld voor DAO (Day Ahead Optimizer) wanneer je je normale officiële prijsbron wilt behouden, maar de resterende horizon wilt aanvullen met forecast-slots. Zodra officiële day-ahead data er is, blijft die leidend. Alleen de nog open uren worden aangevuld.

Belangrijk om eerlijk te zeggen

Dit is op dit moment nog geen upstream DAO-feature. Er is wel een werkende patch en een aparte publieke API-route, maar zolang het niet in het officiele DAO-repo gemerged is, blijft het een tijdelijke fork/patch-oplossing voor testers.

Wanneer is dit nuttig?

Vooral als DAO voor de volgende dag al moet plannen terwijl de officiële day-ahead-prijs nog niet gepubliceerd is. Heb je alleen optimalisatie nodig nadat de marktprijs officieel vastligt, dan voegt deze forecast-koppeling weinig toe.

Hoe deze koppeling werkt

Stap 1: officiële bron eerst DAO haalt eerst de normale officiële day-ahead bron op, bijvoorbeeld tibber, nordpool of entsoe.
Stap 2: forecast alleen als aanvulling Alleen uren die nog niet officieel gepubliceerd zijn, worden aangevuld via forecast extension provider: energypriceforecast. Die slots worden in DAO opgeslagen als da_ext.
Stap 3: DAO blijft optimizer De API beslist niet wanneer er geladen, verwarmd of geschakeld wordt. De endpoint levert alleen de prijsreeks, DAO doet de rest.

Daarmee voorkom je twee problemen tegelijk: DAO hoeft zelf geen forecast-logica te bouwen en de bestaande evcc-integratie wordt niet misbruikt als generieke bron voor ander verkeer.

Praktijktest · EV laden

Vrijdag aansluiten, maandagochtend klaar

Een DAO-tester heeft de forecast-extensie meerdere weken gebruikt in een echte Home Assistant- en DAO-installatie. Het doel: de auto op vrijdag aansluiten en DAO automatisch de goedkoopste laadkwartieren van het hele weekend laten kiezen, zonder het laden handmatig in losse delen op te splitsen.

1
Normaal 24 uur extra

Door de week vraagt DAO 24 uur extra prijsprognose op. Daardoor kan laden tot de volgende ochtend al worden gepland voordat alle officiële prijzen voor morgen beschikbaar zijn.

2
In het weekend 48 uur extra

Een Home Assistant-automatisering zet forecast extension hours op vrijdag op 48 en op zondag terug op 24.

3
Laaddoel schuift veilig mee

Zolang maandag 08:00 nog buiten de beschikbare DAO-horizon ligt, gebruikt de automatisering het einde van de actuele horizon. Zodra nieuwe prognoses binnenkomen, schuift het doel automatisch door tot maandag 08:00.

Projectdoel bereiktDAO gebruikt goedkope uren van het hele beschikbare weekend in plaats van pas te starten zodra alle officiële prijzen bekend zijn.
Geen gemiste goedkope urenDe planning kan al overdag beginnen, ook als het uiteindelijke gewenste eindtijdstip nog buiten de huidige horizon ligt.
Niet alleen voor de EVDe langere prijsreeks is beschikbaar voor alle apparaten die DAO in dezelfde optimalisatie meeneemt.
“De gebruiker hoeft het laden niet meer handmatig in stukken op te delen. Nu heeft de gebruiker hier geen omkijken meer naar. Projectdoel bereikt.” DAO-tester Tom, na de duurtest
De prijsreeks is niet de enige grens

DAO heeft ook meteodata nodig. De kortste beschikbare reeks bepaalt de echte optimalisatiehorizon. Met harmonie is ongeveer twee dagen gebruikelijk; voor duidelijk langere planning kan gfs nodig zijn.

Wat is al klaar?

Publieke DAO-endpoint /api/v1/dao/prices is live op api.energypriceforecast.eu.
Gescheiden traffic DAO-verkeer wordt apart geclassificeerd in interne usage-rapportage.
Patch beschikbaar Er is een tijdelijke patch voor DAO met forecast-extensie via energypriceforecast.

Snelstart voor testers

  1. Clone het DAO-repo lokaal.
  2. Download de tijdelijke patch van deze pagina.
  3. Pas de patch toe met git apply dao_energypriceforecast.patch.
  4. Laat prices.source day ahead op je officiële bron staan, bijvoorbeeld tibber.
  5. Zet forecast extension provider op energypriceforecast en kies hoeveel extra uren je wilt aanvullen.
  6. Gebruik optioneel een expliciete marktcode zoals nl, de of dk1.
git clone https://github.com/corneel27/day-ahead.git
cd day-ahead
curl -L https://energypriceforecast.eu/downloads/dao_energypriceforecast.patch -o dao_energypriceforecast.patch
git apply dao_energypriceforecast.patch

Gebruik je liever geen curl, download het patchbestand gewoon via de knop bovenaan en zet het in de root van je DAO-clone voordat je git apply uitvoert.

Voorbeeldconfiguratie in DAO

Onderstaand blok laat alleen de relevante extra regels zien. De rest van je bestaande DAO-config blijft gewoon staan.

"prices": {
  "source day ahead": "tibber",
  "forecast extension provider": "energypriceforecast",
  "forecast extension hours": 24,
  "energypriceforecast-extension-api-url": "https://api.energypriceforecast.eu/api/v1/dao/prices",
  "energypriceforecast-extension-api-key": "!secret energypriceforecast_api_key",
  "energypriceforecast-extension-country": "nl"
}

De API-key is optioneel. Laat de regel weg als maximaal 48 uur voldoende is. Gebruik je een key, sla die dan op in DAO via !secret en niet rechtstreeks in je configuratiebestand.

Wanneer heb je een API-key nodig?

Zonder API-key blijft de DAO-feed bruikbaar, maar de server begrenst de geleverde prijsreeks op maximaal 48 uur vanaf het moment van de aanvraag. Voor een weekendplanning kan de gewenste eindtijd daardoor buiten de beschikbare reeks vallen.

Free

Zonder API-key

  • maximaal 48 uur totale API-horizon
  • geschikt om de koppeling te testen
  • geen sleutel nodig
"energypriceforecast_api_key": "JOUW_PERSOONLIJKE_API_KEY"

Dit voorbeeld hoort in DAO secrets. De instelling forecast extension hours bepaalt wat DAO aanvraagt; meta.allowed_horizon_hours in de API-respons laat zien wat jouw toegang daadwerkelijk toestaat.

Direct in de browser testen

Dit is de dedicated DAO-feed. Ze geeft een compacte prijsreeks met bronlabel per uur terug. DAO gebruikt voor de forecast-extensie in de praktijk de forecast-only variant.

https://api.energypriceforecast.eu/api/v1/dao/prices?country=nl&hours=48
https://api.energypriceforecast.eu/api/v1/dao/prices?country=nl&hours=24&mode=forecast_only

Belangrijkste velden:

Veld Betekenis
formatAltijd dao-prices.
source.providerBij gemengde reeksen meestal mixed.
source.day_ahead_entriesAantal uren dat al door officiële day-ahead is afgedekt.
source.forecast_entriesAantal uren dat nog uit forecast komt.
entries[].sourceday_ahead of forecast per tijdslot.

Ondersteunde markten voor de DAO-feed

Op dit moment is de publieke prijsfeed voor DAO bedoeld voor dezelfde markten als de openbare prijs-API:

Nu publiekDE, NL, BE, FR, CZ, PL, FI, SE1 t/m SE4, DK1, DK2, AT en NO1 t/m NO5.
Let op DenemarkenGebruik altijd dk1 of dk2, niet alleen dk.
Noordelijk EuropaNO1 t/m NO5, FI en SE1 t/m SE4 zijn nu ook beschikbaar op deze DAO-route.

Veelgestelde vragen

Is dit nu al een officiele DAO-feature?

Nee. Op dit moment is het een tijdelijke patch/fork-route. Pas als het upstream gemerged wordt, kun je het als officiele DAO-optie beschouwen.

Vervangt forecast de officiële day-ahead prijs?

Nee. Dat is juist niet de bedoeling. Zodra officiële day-ahead beschikbaar is, blijft die leidend. Forecast wordt alleen gebruikt als aanvulling voor nog open uren.

Moet ik source day ahead op energypriceforecast zetten?

Nee. In de huidige patch juist niet. Je laat daar je officiële bron staan en activeert Energy Price Forecast EU via forecast extension provider.

Geeft dit mijn exacte eindprijs inclusief belastingen?

Nee. De DAO-route levert markt- of forecastprijzen in EUR/kWh. DAO en jouw eigen contractlogica blijven verantwoordelijk voor eventuele belastingen, toeslagen of andere eigen aannames.

Waarom krijg ik ondanks 96 ingestelde uren maar 48 uur terug?

De DAO-instelling bepaalt de aanvraag, maar de API past daarna de toegestane horizon van jouw toegang toe. Zonder API-key is dat maximaal 48 uur. Met Private Pro kan de API maximaal 120 uur leveren. De uiteindelijke DAO-planning kan alsnog korter zijn als de meteodata eerder eindigt.

Waarom niet gewoon de evcc-endpoint hergebruiken?

Omdat we DAO-verkeer apart willen kunnen meten en beoordelen. Zo blijft evcc-verkeer zuiver en kunnen we later ook DAO-specifieke analyses of limieten invoeren zonder andere gebruikers te raken.

Huidige status

De endpoint is live en de volledige route is inmiddels in een echte DAO-installatie langdurig getest: ophalen, opslaan als da_ext, combineren met officiële prijzen en gebruiken in een meerdaagse optimalisatie. De wijziging staat nog als pull request open en is daarom nog geen officiële upstream DAO-feature.