Prognoză înghețată (forward)
Cifra pe care o poate crede un analist: prognoza a fost înghețată înainte să se știe răspunsul, apoi punctată când a apărut prețul realizat. Nimic nu se re-antrenează după fapt.
D+1 și D+2 nu sunt același lucru
D+1 se produce după închiderea licitației pentru mâine — prețul day-ahead e deja stabilit, deci e validare, nu decizie. D+2 se emite când licitația pentru poimâine nu s-a ținut încă: e predicția pe care se operează efectiv. Când cele două diferă, D+2 e cifra care contează, și e cea mai greu de nimerit.
Ce nu ține încă
Banda D+2 acoperă sub ținta de 80% pe Bulgaria (BG), 65,9%, Grecia (GR), 44,2%, Ungaria (HU), 58,6% și România (RO), 61,2%.
Cifra totală nu spune în ce parte ratează banda, iar asta decide reparația — de aceea o descompunem pe ore, în tabelul de mai jos, recalculat la fiecare regenerare. Definiția cere ca prețul să treacă peste P90 în 10% din sferturi și sub P10 în alte 10%. Pe tot eșantionul: în Bulgaria (BG), 31,2% peste P90 și 2,9% sub P10; în Grecia (GR), 47,7% peste P90 și 8,1% sub P10; în Ungaria (HU), 36,3% peste P90 și 5,2% sub P10; în România (RO), 35,6% peste P90 și 3,3% sub P10.
Când ratările sunt aproape toate în sus, problema nu e lățimea benzii, ci poziția ei: prognoza de mijloc stă sub preț. Pe aceleași serii, P50 a stat în medie cu 17,6% în Bulgaria (BG), cu 22,0% în Grecia (GR), cu 18,2% în Ungaria (HU) și cu 20,4% în România (RO) sub prețul realizat.
Contează fiindcă schimbă reparația. Corecția de azi adaugă aceeași cantitate în ambele părți ale benzii. Când ratarea e într-o singură direcție, o bandă mai largă ar acoperi mai mult fără să mute prognoza acolo unde e prețul — ar ascunde defectul, nu l-ar repara. Până la reparație, cine dimensionează risc pe P10–P90 la D+2 să citească tabelul de mai jos: pe orele în care prețul trece des peste P90, coada de sus e subestimată.
| Ora | Bulgaria (BG) · peste P90 | Bulgaria (BG) · sub P10 | Grecia (GR) · peste P90 | Grecia (GR) · sub P10 | Ungaria (HU) · peste P90 | Ungaria (HU) · sub P10 | România (RO) · peste P90 | România (RO) · sub P10 |
|---|---|---|---|---|---|---|---|---|
| 00 | 46,9% | 0,0% | 67,0% | 0,0% | 40,6% | 1,1% | 50,6% | 0,3% |
| 01 | 37,2% | 0,0% | 62,5% | 0,0% | 45,6% | 0,0% | 49,7% | 0,8% |
| 02 | 30,2% | 0,0% | 72,2% | 0,0% | 38,3% | 0,0% | 46,4% | 1,1% |
| 03 | 26,4% | 0,0% | 76,1% | 0,0% | 37,8% | 0,0% | 41,1% | 1,1% |
| 04 | 27,4% | 0,0% | 57,4% | 0,0% | 48,9% | 0,0% | 35,6% | 1,1% |
| 05 | 36,5% | 0,0% | 57,4% | 0,0% | 54,4% | 0,0% | 43,9% | 0,6% |
| 06 | 41,0% | 0,0% | 58,5% | 0,0% | 47,2% | 1,7% | 48,1% | 0,6% |
| 07 | 33,7% | 3,8% | 44,9% | 6,2% | 37,2% | 6,7% | 47,8% | 3,3% |
| 08 | 31,2% | 19,4% | 34,1% | 21,6% | 30,0% | 20,0% | 41,4% | 7,8% |
| 09 | 20,5% | 13,9% | 17,6% | 23,9% | 20,6% | 18,9% | 27,2% | 12,2% |
| 10 | 26,7% | 5,2% | 23,9% | 15,9% | 20,0% | 18,3% | 23,9% | 9,4% |
| 11 | 27,1% | 5,2% | 19,3% | 19,9% | 22,8% | 13,9% | 19,4% | 8,3% |
| 12 | 32,6% | 4,9% | 20,5% | 19,3% | 20,6% | 17,2% | 19,4% | 7,8% |
| 13 | 31,2% | 6,2% | 22,2% | 22,7% | 21,1% | 11,1% | 18,1% | 8,1% |
| 14 | 31,9% | 4,2% | 19,3% | 24,4% | 23,3% | 9,4% | 21,1% | 5,8% |
| 15 | 29,5% | 2,1% | 19,9% | 27,3% | 22,8% | 5,6% | 19,4% | 3,3% |
| 16 | 20,8% | 3,1% | 36,9% | 13,1% | 37,8% | 1,1% | 21,9% | 3,9% |
| 17 | 19,8% | 1,0% | 59,1% | 0,6% | 35,0% | 0,0% | 37,2% | 3,1% |
| 18 | 19,1% | 0,3% | 48,9% | 0,0% | 44,4% | 0,0% | 35,3% | 0,3% |
| 19 | 18,8% | 0,0% | 35,8% | 0,0% | 33,3% | 0,0% | 30,0% | 0,3% |
| 20 | 31,9% | 0,3% | 56,8% | 0,0% | 34,4% | 0,0% | 35,3% | 0,0% |
| 21 | 42,4% | 0,0% | 75,6% | 0,0% | 54,4% | 0,0% | 43,6% | 0,0% |
| 22 | 50,3% | 0,0% | 80,1% | 0,0% | 52,8% | 0,0% | 50,8% | 0,0% |
| 23 | 36,1% | 0,0% | 79,0% | 0,0% | 47,7% | 0,0% | 46,7% | 0,0% |
Ora e cea locală a fiecărei piețe. Ținta e 10% în fiecare coloană. Zile punctate: Bulgaria (BG) 72, Grecia (GR) 44 (eșantion subțire), Ungaria (HU) 45 (eșantion subțire), România (RO) 90. Aceeași regulă ca tabelul de sus: intră doar zilele cu prețul realizat complet.
Una dintre ele stă sub țintă din alt motiv decât celelalte, și merită spus: în Grecia (GR), regenerabilul acoperă în medie 54,9% din consum, față de 22,5% pe restul zonelor. Modelul se sprijină pe residual load — consumul minus regenerabilul — iar la penetrarea asta el devine diferența dintre două numere mari: aceeași eroare absolută în intrări dă o eroare relativă mult mai mare în ieșire. În 16,6% din sloturi regenerabilul chiar depășește consumul prognozat, deci residual load e negativ — un regim pe care istoricul de antrenare aproape nu-l conține (în RO, 0,5%). Nu e o problemă de reglaj, e o proprietate a intrării; de aceea nu o reparăm cu o recalibrare și nu o ascundem până o reparăm.
Acoperirea, lună de lună
Tot istoricul punctat, fără perioade scoase. Februarie 2026 e în grafic exact ca iulie: dacă publici doar lunile bune, n-ai publicat un track record.
Prognoze înghețate
Fiecare rând de aici a fost înghețat în bază înainte să se știe răspunsul, apoi punctat când a apărut prețul realizat. Nimeni nu le mai poate atinge — nici noi. Asta e dovada pe care o susține pagina.
| Zonă | Orizont | Zile | Perioadă | Acoperire P10–P90 | P50→P90 | P10→P50 | rMAE P50 |
|---|---|---|---|---|---|---|---|
| Bulgaria (BG)eșantion subțire | D+1 | 46 | 2026-08-28 → 2026-10-12 | 69,2% | 32,0% | 31,4% | 24,0% |
| Bulgaria (BG) | D+2 | 72 | 2026-08-02 → 2026-10-12 | 65,9% | 32,0% | 30,0% | 25,4% |
| Grecia (GR)eșantion subțire | D+1 | 44 | 2026-08-29 → 2026-10-12 | 57,5% | 28,6% | 33,5% | 27,1% |
| Grecia (GR)eșantion subțire | D+2 | 44 | 2026-08-29 → 2026-10-12 | 44,2% | 29,0% | 32,0% | 33,8% |
| Ungaria (HU)eșantion subțire | D+1 | 45 | 2026-08-28 → 2026-10-12 | 66,1% | 32,8% | 23,2% | 23,4% |
| Ungaria (HU)eșantion subțire | D+2 | 45 | 2026-08-28 → 2026-10-12 | 58,6% | 31,2% | 25,5% | 26,6% |
| România (RO)eșantion subțire | D+1 | 45 | 2026-08-28 → 2026-10-12 | 59,4% | 26,5% | 25,9% | 25,7% |
| România (RO) | D+2 | 90 | 2026-07-14 → 2026-10-12 | 61,2% | 30,7% | 27,8% | 27,2% |
P50→P90 și P10→P50 sunt cele două margini ale benzii, fiecare ca procent din prețul mediu al perioadei. Stau lângă acoperire fiindcă acoperirea singură se poate crește oricând lățind banda — una destul de largă acoperă 100% și nu spune nimic. Și stau separat, nu însumate: când ratarea e într-o singură direcție, corecția potrivită mișcă o singură margine. Pe o cifră totală, reparația țintită și lățirea comodă arată identic. Aici se vede care s-a mișcat. Un „—” înseamnă că ediția respectivă e dinaintea măsurării pe margini; nu o completăm retroactiv acolo unde n-o putem recalcula.
Seriile marcate „eșantion subțire” au sub 60 zile punctate. Le publicăm fiindcă există, nu fiindcă susțin o concluzie.
Validare, nu prognoză
Aceleași zile, dar prognoza a fost emisă seara, după închiderea licitației — când prețul zilei următoare era deja publicat. Nu se putea tranzacționa pe ea, și n-o numim prognoză. E util să știi cât de bine prinde modelul o zi pe care o are deja aproape sub ochi, dar e o întrebare despre model, nu un instrument.
| Zonă | Orizont | Zile | Perioadă | Acoperire P10–P90 | P50→P90 | P10→P50 | rMAE P50 |
|---|---|---|---|---|---|---|---|
| Bulgaria (BG) | D+1 | 73 | 2026-08-01 → 2026-10-12 | 73,6% | 31,0% | 30,1% | 22,3% |
| Grecia (GR)eșantion subțire | D+1 | 45 | 2026-08-28 → 2026-10-12 | 59,3% | 29,1% | 33,3% | 26,7% |
| Ungaria (HU)eșantion subțire | D+1 | 46 | 2026-08-27 → 2026-10-12 | 67,3% | 31,6% | 25,0% | 22,7% |
| România (RO) | D+1 | 91 | 2026-07-13 → 2026-10-12 | 69,3% | 28,9% | 28,7% | 23,2% |
Și cum s-ar fi comportat pe istoric
Reconstrucție: pentru fiecare zi din trecut, un model antrenat strict pe zilele dinaintea ei, comparat cu prețul realizat. Antrenarea e cauzală — dar intrările nu sunt, și asta schimbă cum trebuie citită cifra. Modelul citește vremea din baza noastră, iar acolo arhiva meteo realizată a înlocuit, între timp, prognoza disponibilă atunci. Reconstrucția „prognozează” deci o zi a cărei vreme o cunoaște.
Cât valorează avantajul, măsurat pe perechi: pentru fiecare serie de mai jos, exact zilele care au și prognoză înghețată, reconstruite acum și comparate una câte una. Nu e sezonul — perioada e identică prin construcție. Zilele în care prognoza înghețată a rulat pe alt model decât cel pe care îl alege reconstrucția azi sunt excluse, nu amestecate.
| Serie | Avantajul reconstrucției (puncte) | Zile comparate | Reconstrucția acoperă mai bine în |
|---|---|---|---|
| România (RO), D+2 | +10,2 [+4,9; +15,5] | 47 | 30 |
| România (RO), D+1 | +4,7 [+0,8; +8,5] | 44 | 21 |
Măsurat la 2026-08-28. Se recalculează când seria crește; nu se scrie de mână.
Cele două coloane din dreapta se citesc împreună. Când avantajul mediu e pozitiv, dar reconstrucția acoperă mai bine în mai puțin de jumătate din zile, avantajul stă în câteva zile, nu în comportamentul obișnuit — iar media, singură, ar spune altceva. O parte din diferență vine și din cod, fiindcă prognozele înghețate au rulat cu versiunea de atunci; nu putem încă separa cele două cauze, și nu pretindem că putem.
Concluzia, spusă simplu: cifra de mai jos nu prezice unde va ajunge produsul. Rămâne publicată fiindcă e singura măsurătoare care acoperă un an întreg — inclusiv februarie 2026, cea mai proastă lună din tot jurnalul — și fiindcă un backtest ascuns e mai rău decât unul explicat. Nu se compară rând cu rând cu tabelele de sus.
| Zonă | Orizont | Zile | Perioadă | Acoperire P10–P90 | P50→P90 | P10→P50 | rMAE P50 |
|---|---|---|---|---|---|---|---|
| România (RO) | D+1 | 264 | 2025-10-22 → 2026-07-12 | 78,9% | — | — | 29,5% |
| România (RO) | D+2 | 258 | 2025-10-29 → 2026-07-13 | 79,2% | — | — | 33,7% |
Cum se măsoară
- Adevărul e prețul spot al fiecărei piețe, raportat pe ENTSO-E Transparency Platform, în valuta pieței; pentru România, convertit în RON la cursul oficial BNR. Nu comparăm prognoza cu altă prognoză.
- Acoperirea e fracțiunea de intervale de 15 minute în care prețul realizat a căzut între P10 și P90. Ținta prin construcție e 80%.
- rMAE e eroarea absolută medie pe P50, raportată la prețul mediu realizat al zilei. Un rMAE mare pe o lună cu prețuri mici nu înseamnă neapărat o lună proastă.
- Modelul se re-antrenează de la zero în fiecare zi, fără greutăți acumulate. Nu există un moment în care „modelul a fost calibrat”; există doar comportamentul lui, zi după zi.
Cum publicăm
- Cadență: zilnic, regenerată din jurnal. O zi se punctează doar când prețul realizat e complet; una parțială se amână, nu se punctează pe jumătate — o zi punctată pe jumătate arată ca una întreagă.
- Ediția publicată e imuabilă. Datele-sursă se pot recalcula — o corecție venită de la ENTSO-E, o reprocesare — și nu pretindem altceva. Ce nu se poate schimba e ediția: fiecare regenerare produce un artefact cu amprentă proprie, verificabil fără noi (vedeți mai jos). Dacă ați salvat o ediție, puteți dovedi singur că e chiar cea publicată atunci — iar când o cifră se schimbă între ediții, diferența e vizibilă prin construcție. Și dacă n-ați salvat-o, v-o întoarcem noi: fiecare regenerare se arhivează integral, iar ediția se cere înapoi cu amprenta ei la voltaraj.com/verificare, fără cont — exact octeții publicați atunci, ca să-i puteți verifica singur. Pentru edițiile publicate înainte de pornirea arhivei păstrăm amprenta, nu pagina, iar verificarea vă spune care e cazul. Separat, ora emiterii se scrie în bază înainte de închiderea licitației: de aceea „înainte de gate” nu e o etichetă aleasă după ce s-a văzut rezultatul.
- Toate zonele, toate orizonturile, toate emiterile — de la prima zi punctată, marcate „eșantion subțire” sub 60 de zile, și inclusiv seriile care stau sub țintă. Fereastra nu se alege după rezultat: un prag de publicare devine, în ziua în care cifra scade, un mecanism de ascuns.
- Acoperirea nu se publică singură. Lângă ea stă lățimea benzii, raportată la nivelul prețului — altfel promisiunea se poate onora lățind banda până nu mai spune nimic. Iar ce se publică se raportează și pe oră, nu doar global: un total la țintă poate ascunde două defecte opuse.
Amprenta acestei ediții
Pagina se regenerează zilnic, iar ediția de azi o înlocuiește pe cea de ieri. Ca să nu depindeți de cuvântul nostru pentru ce scria aici la o dată anume, fiecare ediție e sigilată: e22e79af6915efa0441048f5f5df0a3548a418663ef72966aaaa722d5072e369. Se verifică offline, fără noi — salvați pagina, înlocuiți amprenta din rândul ăsta cu @@AMPRENTA-SHA256@@ și recalculați SHA-256 pe fișier (sau rulați scripts/verifica_amprenta.py). Ori lipiți-o la voltaraj.com/verificare, fără cont, care spune și când a fost publicată prima oară. Orice octet schimbat schimbă amprenta.
Ce nu spune pagina asta
Acoperirea istorică descrie comportamentul trecut pe date deja realizate și nu garantează performanța viitoare — la fel cum scrie și în Termeni, art. 3.1–3.2. Piața se poate comporta atipic față de perioada de antrenare. O bandă calibrată e un instrument de planificare, nu o promisiune.