Files
ems/docs/studies/hu1-spot-realistic.md
Dusan Vojacek 826c776c34 HU1: realistická studie přechodu na spot (den-po-dni solver_v2, 2 roky OTE)
scripts/harness/hu1_realistic_eval.py — realistická simulace BESS 128 kWh/36 kW
na spotu místo perfect hindsight: D−1 plán přes solve_dispatch_v2 (informační
množina = ceny zítřka z OTE D−1 13:30), SoC řetězené mezi dny, parametry
baterie/grid z DB site 5 (fn_planning_site_context). Scénáře fix/spot ×
bez/s baterií, Kč/den po měsících a sezónách, roční projekce, citlivosti
(degradace 0.15/0.5/1.0, spread compression −30 %), GAP vs 7denní hindsight.
Varianty běží paralelně (ProcessPoolExecutor). HU1 nemá telemetrii →
parametrizovaný průmyslový odběr (konstanty v hlavičce, přepsat čísly
od majitele); fixní cena = proxy BA81 (--fix-buy).

Výsledky (788 dní 2024-04-14…2026-06-12, 2 zimy): D−B (přechod na spot
s baterií) −163,6 tis. Kč/rok base, konzervativně −110,1 tis.; léto −629,
zima −254 Kč/den, nejhorší měsíc (12/2024) −41 Kč/den — stále úspora.
GAP realistic vs hindsight ≈ 0 (ceny jsou D−1 známé) → dřívější horní mez
byla nadhodnocená sezónností, ne neznalostí budoucnosti.

Doc: docs/studies/hu1-spot-realistic.md (generuje skript, opakovatelné);
README harness doplněn.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-12 21:56:03 +02:00

8.0 KiB
Raw Blame History

HU1 (hulin-bess) — přechod na spot: realistická studie

Generováno skriptem scripts/harness/hu1_realistic_eval.py (2026-06-12). Opakovatelně spustitelné — viz hlavička skriptu.

Otázka

Majitel HU1 (128 kWh / 36 kW BESS, průmyslový odběr, bez FVE/EV/TČ) rozhoduje o přechodu z fixní nákupní ceny na spotovou smlouvu. Dřívější perfect-hindsight studie (hu1_bess_study.py) dala horní mez; tady je realistické roční číslo — simulace den po dni tak, jak by jel plánovač.

Metodika

  • D1 plán: solve_dispatch_v2 (produkční čisté jádro v2) s informační množinou OTE D1 13:30 = ceny celého zítřka, nic za půlnoc. Terminal SoC shadow price (faktor 0.9 z DB) oceňuje energii na konci dne.
  • SoC řetězené mezi dny (konec dne N = start dne N+1); start 50 %.
  • Žádný perfect hindsight v hlavních číslech; hindsight (7denní okna, plná znalost) běží zvlášť jen kvůli GAPu.
  • Parametry přesně z DB site 5: baterie 128 kWh, 36 kW nabíjení/vybíjení, η 0.95/0.95, SoC 1095 %, degradace 0.15 Kč/kWh; grid import 43 kW / export 42 kW povolen (no_export=false), block_export_on_negative_sell=true (při záporné výkupní ceně se neexportuje).
  • Náklady včetně degradace (0.5 × throughput × Kč/kWh) a SoC-adjusted (změna SoC dne oceněna průměrnou denní nákupní cenou).
  • Spot ceny: raw OTE + marže z site_market_config site 5 (buy +0.05, sell -0.02 Kč/kWh; poplatky 0.00).

Předpoklady (nahradit reálnými čísly!)

  • Fixní nákupní cena 3.38 Kč/kWh — site 5 má v DB režim spot/spot, skutečná dnešní fixní smluvní cena NENÍ v DB (default = proxy z BA81 fixu). Přepsat přes --fix-buy.
  • Odběrový profil parametrizovaný — HU1 nemá telemetrii (0 řádků v telemetry_inverter): bazál 4 kW 24/7 + špička +16 kW 618 h popá (konstanty v hlavičce skriptu).
  • Scénáře s fixem prodávají přebytek na spotu (jako BA81) — ověřit, zda to dnešní fixní smlouva vůbec umožňuje.
  • Svátky modelovány jako pracovní dny.

Data

  • OTE 15min raw ceny (market_interval_price, OTE_CZ): 2024-04-14 … 2026-06-12, 788 kompletních pražských dní; díry: 2025-03-30, 2025-07-04. Pokrývá 2 zimy (2024/25, 2025/26) — hlavní riziko arbitráže.
  • HU1 telemetrie/audit: žádná skutečná spotřeba ani provoz (site v MANUAL, bez sběru dat).

Výsledky

Scénáře (Kč/den, kladné = náklad): A fix bez baterie · B fix + baterie (dnešní stav) · C spot bez baterie · D spot + baterie (návrh).

Kč/den po sezónách

období dní A fix bez bat B fix+bat C spot bez bat D spot+bat DA DB
léto (49) 425 789 760 460 131 -658 -629
zima (103) 363 789 744 736 490 -300 -254

Kč/den po měsících (SoC-adjusted, vč. degradace)

období dní A fix bez bat B fix+bat C spot bez bat D spot+bat DA DB
2024-04 17 783 780 458 226 -556 -553
2024-05 31 806 804 394 130 -676 -673
2024-06 30 757 734 448 147 -610 -587
2024-07 31 806 788 425 135 -671 -653
2024-08 31 785 739 498 159 -626 -580
2024-09 30 779 736 493 181 -598 -555
2024-10 31 806 778 581 290 -516 -488
2024-11 30 779 692 839 594 -185 -98
2024-12 31 785 687 904 647 -138 -41
2025-01 31 806 754 851 635 -171 -119
2025-02 28 788 750 833 635 -153 -115
2025-03 30 779 753 585 277 -502 -476
2025-04 30 800 791 457 110 -690 -680
2025-05 31 785 773 385 36 -749 -737
2025-06 30 779 743 395 16 -763 -728
2025-07 30 800 771 527 312 -489 -459
2025-08 31 764 743 402 100 -664 -643
2025-09 30 800 719 558 136 -664 -583
2025-10 31 806 746 636 300 -506 -445
2025-11 30 757 723 717 506 -251 -216
2025-12 31 806 797 701 577 -229 -220
2026-01 31 785 739 878 669 -116 -70
2026-02 28 788 785 689 546 -242 -240
2026-03 31 785 728 622 218 -566 -510
2026-04 30 800 782 449 29 -772 -753
2026-05 31 764 717 485 75 -689 -641
2026-06 12 865 823 631 344 -521 -479

Roční projekce (posledních 365 simulovaných dní)

metrika Kč/rok
A fix bez baterie 287615
B fix + baterie (dnešní stav) 273979
C spot bez baterie 218077
D spot + baterie (návrh) 110392
DB: přechod na spot (s baterií) -163587
DA: spot+baterie vs fix bez baterie -177223
CA: jen změna smlouvy, bez baterie -69538
CD: hodnota baterie na spotu +107685

Interval nejistoty DB: -163587 … -110069 Kč/rok (konzervativní = spready 30 % + degradace 0.50 Kč/kWh na obou stranách).

GAP realistic vs perfect hindsight (scénář D)

realistic 296.2 vs hindsight 296.2 Kč/den; GAP -0.1 Kč/den (-51 Kč za 788 dní)

Citlivosti (roční projekce, Kč/rok)

varianta Kč/rok
D deg 0.15 110392
D deg 0.50 130657
D deg 1.00 153008
D compress 30 % 153358
D compress 30 % + deg 0.50 170648
B compress 30 % 280717
C compress 30 % 220469

Interpretace a doporučení

  • GAP realistic hindsight ≈ 0: OTE ceny jsou D1 známé a odběr je v modelu deterministický → reálný D1 plánovač o (téměř) nic nepřichází proti dokonalému vícedennímu výhledu. Rozdíl proti dřívější hindsight studii tedy dělá hlavně sezónnost (jarní spready), ne neznalost budoucnosti. V reálu přibude chyba predikce odběru — s reálným diagramem studii přegenerovat.
  • Zima je slabší, ale zůstává kladná: sezónní rozpad DB — léto (49): -629 Kč/den; zima (103): -254 Kč/den. Nejslabší měsíc v datech (2024-12): DB -41 Kč/den — ani v zimě s malými spready nebyl přechod na spot ztrátový.
  • Doporučení (za předpokladů výše): přechod na spot dává base úsporu -163587 Kč/rok (DB), konzervativně -110069 Kč/rok. Před podpisem smlouvy doplnit data od majitele (níže) a studii přegenerovat — čísla škálují s odběrovým profilem a fixní cenou.

Co chybí od majitele (zpřesnění)

  1. Skutečný odběrový diagram (ideálně 15min/hodinová data z fakturačního elektroměru za 12 měsíců) → nahradit parametrický profil.
  2. Dnešní fixní cena (Kč/kWh bez DPH, vč. případného VT/NT rozlišení) a regulované složky (distribuce, POZE) — zde modelována jen silová energie.
  3. Návrh spotové smlouvy: marže dodavatele na nákup i výkup (zde +0.05/-0.02 Kč/kWh), měsíční platy.
  4. Smí dnešní fixní smlouva exportovat? (scénář B předpokládá spot výkup).
  5. Rezervovaná kapacita / penalizace za překročení — ovlivní peak shaving.