mirror of
https://github.com/Akkudoktor-EOS/EOS.git
synced 2026-08-31 12:46:38 +00:00
feat(elecprice): serve native 15-minute Tibber prices for the quarter-hour grid
Request QUARTER_HOURLY exchange prices from Tibber and store them at their native resolution instead of pre-averaging to hourly values. EOS resamples the stored records onto the optimization grid on demand (key_to_array), so keeping the native step size lets both the hourly (interval=3600) and the 15-minute (interval=900) optimizer be fed the correct grid automatically. - GraphQL: priceInfoRange resolution HOURLY -> QUARTER_HOURLY (last 960). - _hourly_series -> _normalize_series: dedupe by timestamp (mean) + sort, no 1h aggregation; add _resolution_seconds (median of timestamp diffs, fallback 3600s). - Resolution-agnostic ETS extrapolation: seasonal windows and history thresholds are scaled by slots_per_hour, needed forecast length and the prediction index step are computed in slots. Hourly behaviour is unchanged (slots_per_hour=1 -> 168/24 seasonal periods, hourly steps). - Tests: replace the 1h-averaging test with resolution-preserving + dedup tests, assert QUARTER_HOURLY in the query, add a 15-min end-to-end test (native storage stays 15min, slot-based seasonal periods = 96, 15-min forecast index). Hourly backward-compat tests stay green unchanged.
This commit is contained in:
@@ -20,6 +20,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
|
||||
default 3600 s interval keeps the previous hourly behaviour. The new sub-hourly PV
|
||||
providers (pvnode, Forecast.Solar, Solcast) feed their native resolution straight
|
||||
into the quarter-hour grid.
|
||||
- The Tibber electricity price provider now requests native 15-minute exchange prices
|
||||
(`priceInfoRange(resolution: QUARTER_HOURLY)`) and stores them at their native
|
||||
resolution, so both the hourly and the 15-minute optimizer are fed the correct
|
||||
grid. The seasonal price extrapolation is resolution-agnostic and stays identical
|
||||
at the default hourly resolution.
|
||||
|
||||
## 0.3.0 (2026-03-17)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user