TapHome

OKTE Spot árak

Packet Parser → HTTP
Beküldő
Utoljára frissítve: 03. 2026

Az OKTE (Organizátor krátkodobého trhu s elektrinou) a szlovák villamosenergia-piaci szervező. Másnapi piaci (DAM) spotárakat tesz közzé — az előző napi aukción meghatározott óránkénti nagykereskedelmi villamosenergia-árat EUR/MWh-ban.

A TapHome sablon ezeket az árakat az OKTE nyilvános API-jából (isot.okte.sk) kéri le HTTP Packet Parser segítségével. Biztosítja az aktuális óra árát, árrangsorolást, min/max/átlag számításokat és időablak-elemzést — minden automatikusan frissül óránként. Nincs szükség hitelesítésre.

Konfiguráció

A sablon az isot.okte.sk-hoz csatlakozik HTTPS-en (443-as port). Nem szükséges IP-cím vagy hitelesítő adat — a végpont nyilvános API.

A sablon importálásakor két opcionális egyéni változó állítható be:

  • Tól — egyéni időablak kezdő órája (0–23, alapértelmezett: 9)
  • Ig — egyéni időablak záró órája (0–23, alapértelmezett: 17)

Ezek a változók vezérlik az „időablakban" eszközvariánsokat. Az alapértékek (9–17) a szokásos munkaidőt fedik le. Ha nem szükségesek, hagyd az alapértékeken — az egész napos eszközök függetlenül működnek.

Működés

A modul óránként egyszer kérdezi le az OKTE DAM API-t (3600 s intervallum). Az API-kérés a mai dátumot használja:

1
GET /api/v1/dam/results?deliveryDayFrom={today}&deliveryDayTo={today}

A válasz árobjelekumok tömbjét tartalmazza, mindegyik egy period számmal és egy price értékkel EUR/MWh-ban. A napszaktól és az OKTE közzétételi ütemtervétől függően a válasz tartalmazhat árakat csak a mai napra (24 periódus) vagy akár 3 napra (72 periódus).

Minden eszközszkript ezt a JSON tömböt a PARSEJSON(output, "$..price") segítségével elemzi, és rendezési, szűrési vagy aggregálási függvényeket alkalmaz az érték kinyeréséhez.

Eszközképességek

A sablon 13 szenzoreszközt tesz elérhetővé. Mindegyik csak olvasható — az értékeket ugyanabból az API-válaszból származtatják.

Aktuális ár és rangsor
  • Aktuális ár — az aktuális óra spotára EUR/MWh-ban. A szkript a NOW() függvényből határozza meg az aktuális periódusindexet, és a tömbből a megfelelő árat adja vissza.
  • Aktuális periódus rangja — az aktuális óra árának rangja az összes elérhető periódus között (1 = legolcsóbb). Hasznos automatizálási szabályokhoz, mint például „a hőszivattyú csak akkor működjön, ha az aktuális óra a 8 legolcsóbb között van."
  • Aktuális periódus rangja időablakban — ugyanaz, mint fent, de a felhasználó által meghatározott Tól–Ig ablakra korlátozva. NaN-t ad vissza, ha az aktuális óra az ablakon kívül esik, vagy ha Tól >= Ig.
Árszélsőségek
  • Nap legmagasabb ára — a maximális spotár az összes elérhető periódusban
  • Nap legalacsonyabb ára — a minimális spotár az összes elérhető periódusban
  • Legmagasabb ár az időablakban — maximális ár a Tól–Ig ablakon belül
  • Legalacsonyabb ár az időablakban — minimális ár a Tól–Ig ablakon belül
Átlagok
  • Nap átlagos ára — az összes elérhető periódusár számtani átlaga
  • Átlagos ár az időablakban — számtani átlag a Tól–Ig ablakon belül
Periódus azonosítás
  • Nap legolcsóbb periódusa — a legolcsóbb óra 1-alapú periódusszáma (pl. 3 = 02:00–03:00)
  • Legolcsóbb hátralévő periódus — a legolcsóbb óra az aktuális órától kezdve. Dinamikusan frissül a nap folyamán.
Darabszámok
  • Periódusszám — az API-válaszban elérhető árperiódusok összesített száma (jellemzően 24 vagy 72)
  • Periódusszám az időablakban — periódusok száma a Tól–Ig ablakon belül

Szolgáltatás attribútumok

A modul legfeljebb 96 szolgáltatás attribútumot tesz elérhetővé (1. periódus – 96. periódus), mindegyik az adott óra spotárát mutatja „EUR" utótaggal. A gyakorlatban egy napra 24, három napra 72 attribútum van kitöltve.

Ezek az attribútumok teljes áridőtervet biztosítanak, amely a TapHome modul részletes nézetében látható.

Egyéni változók (Tól / Ig)

Több eszköznek van „időablakban" variánsa, amely az áradatokat az órák egy részhalmazára szűri. Az ablakot két, a sablonimportálás során beállított egyéni változó határozza meg:

  • Tól — a kezdő óra (beleértve), érték 0–23
  • Ig — a záró óra (nem beleértve), érték 0–23

Például a Tól=8 és Ig=16 beállítás csak a 08:00 és 16:00 közötti árakat elemzi. Ez hasznos, ha bizonyos órákban szeretnéd optimalizálni az energiafelhasználást — például csak a munkanapod legolcsóbb óráiban futtatni a háztartási gépeket.

Ha Tól >= Ig, minden ablakos eszköz NaN-t ad vissza.

Automatizálási példák

Eszközök futtatása a legolcsóbb órákban

Használd az Aktuális periódus rangja eszközt egy smart rule feltételben. Például egy medenceszivattyú futtatásához csak a nap 6 legolcsóbb órájában:

  • Feltétel: Aktuális periódus rangja <= 6
  • Művelet: Medenceszivattyú bekapcsolása
Csúcsárak elkerülése

Használd az Aktuális ár eszközt küszöbértékkel:

  • Feltétel: Aktuális ár > 150 (EUR/MWh)
  • Művelet: Nem létfontosságú fogyasztók kikapcsolása
Időablak-optimalizálás

Állítsd be Tól=22, Ig=6 egy éjszakai ablak meghatározásához, majd használd a Legalacsonyabb ár az időablakban vagy Aktuális periódus rangja időablakban eszközt az akkumulátortöltés vagy a vízmelegítő üzemeltetésének ütemezéséhez a legolcsóbb éjszakai órákban.

Hibaelhárítás

Minden eszköz nullát vagy semmilyen adatot nem mutat
  1. Ellenőrizd a TapHome Core internetkapcsolatát — a sablon kimenő HTTPS-hozzáférést igényel az isot.okte.sk-hoz
  2. Ellenőrizd, hogy az API válaszol-e — nyisd meg a https://isot.okte.sk/api/v1/dam/results?deliveryDayFrom=2026-03-28&deliveryDayTo=2026-03-28 címet a böngészőben
  3. A másnapi DAM-árak jellemzően 12:45 CET után kerülnek közzétételre. Közzététel előtt a holnapi dátumra vonatkozó kérések üres eredményt adnak.
Az ablakos eszközök NaN-t adnak vissza
  1. Ellenőrizd, hogy Tól < Ig a sablon import paramétereiben
  2. Ellenőrizd, hogy az aktuális óra a Tól–Ig tartományba esik-e (az Aktuális periódus rangja időablakban esetében)
  3. Ne feledd, hogy a Tól és Ig 24 órás formátumot használ (0–23)
Az árértékek tévesnek tűnnek

Az OKTE az árakat EUR/MWh-ban teszi közzé. EUR/kWh-ra (háztartási léptékre) való átváltáshoz oszd el 1000-rel. A sablon az API nyers értékeit jeleníti meg konverzió nélkül.

Elérhető eszközök

OKTE Spot árak Modul
Szerviz attribútumok
Period 1
Period 2
Period 3
Period 4
Period 5
Period 6
Period 7
Period 8
Period 9
Period 10
Period 11
Period 12
Period 13
Period 14
Period 15
Period 16
Period 17
Period 18
Period 19
Period 20
Period 21
Period 22
Period 23
Period 24
Period 25
Period 26
Period 27
Period 28
Period 29
Period 30
Period 31
Period 32
Period 33
Period 34
Period 35
Period 36
Period 37
Period 38
Period 39
Period 40
Period 41
Period 42
Period 43
Period 44
Period 45
Period 46
Period 47
Period 48
Period 49
Period 50
Period 51
Period 52
Period 53
Period 54
Period 55
Period 56
Period 57
Period 58
Period 59
Period 60
Period 61
Period 62
Period 63
Period 64
Period 65
Period 66
Period 67
Period 68
Period 69
Period 70
Period 71
Period 72
Period 73
Period 74
Period 75
Period 76
Period 77
Period 78
Period 79
Period 80
Period 81
Period 82
Period 83
Period 84
Period 85
Period 86
Period 87
Period 88
Period 89
Period 90
Period 91
Period 92
Period 93
Period 94
Period 95
Period 96
Egyéni változók
From (numeric) = 9Start hour (0–23) of the time window for windowed price ranking and statistics
To (numeric) = 17End hour (0–23) of the time window for windowed price ranking and statistics

okte.sk

Olvasás (modul)
VAR today := tostring(NOW(), "yyyy-MM-dd");;
VAR response := SENDHTTPREQUEST("/api/v1/dam/results?deliveryDayFrom=" + today + "&deliveryDayTo=" + today);
IF response.IsSuccess
    output := response.Content;
ELSE
    ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Szerviz attribútumok
Perióda 1
PARSEJSON(output, "$[?(@.period == 1)].price") + " EUR"
Perióda 2
PARSEJSON(output, "$[?(@.period == 2)].price") + " EUR"
Perióda 3
PARSEJSON(output, "$[?(@.period == 3)].price") + " EUR"
Perióda 4
PARSEJSON(output, "$[?(@.period == 4)].price") + " EUR"
Perióda 5
PARSEJSON(output, "$[?(@.period == 5)].price") + " EUR"
Perióda 6
PARSEJSON(output, "$[?(@.period == 6)].price") + " EUR"
Perióda 7
PARSEJSON(output, "$[?(@.period == 7)].price") + " EUR"
Perióda 8
PARSEJSON(output, "$[?(@.period == 8)].price") + " EUR"
Perióda 9
PARSEJSON(output, "$[?(@.period == 9)].price") + " EUR"
Perióda 10
PARSEJSON(output, "$[?(@.period == 10)].price") + " EUR"
Perióda 11
PARSEJSON(output, "$[?(@.period == 11)].price") + " EUR"
Perióda 12
PARSEJSON(output, "$[?(@.period == 12)].price") + " EUR"
Perióda 13
PARSEJSON(output, "$[?(@.period == 13)].price") + " EUR"
Perióda 14
PARSEJSON(output, "$[?(@.period == 14)].price") + " EUR"
Perióda 15
PARSEJSON(output, "$[?(@.period == 15)].price") + " EUR"
Perióda 16
PARSEJSON(output, "$[?(@.period == 16)].price") + " EUR"
Perióda 17
PARSEJSON(output, "$[?(@.period == 17)].price") + " EUR"
Perióda 18
PARSEJSON(output, "$[?(@.period == 18)].price") + " EUR"
Perióda 19
PARSEJSON(output, "$[?(@.period == 19)].price") + " EUR"
Perióda 20
PARSEJSON(output, "$[?(@.period == 20)].price") + " EUR"
Perióda 21
PARSEJSON(output, "$[?(@.period == 21)].price") + " EUR"
Perióda 22
PARSEJSON(output, "$[?(@.period == 22)].price") + " EUR"
Perióda 23
PARSEJSON(output, "$[?(@.period == 23)].price") + " EUR"
Perióda 24
PARSEJSON(output, "$[?(@.period == 24)].price") + " EUR"
Perióda 25
PARSEJSON(output, "$[?(@.period == 25)].price") + " EUR"
Perióda 26
PARSEJSON(output, "$[?(@.period == 26)].price") + " EUR"
Perióda 27
PARSEJSON(output, "$[?(@.period == 27)].price") + " EUR"
Perióda 28
PARSEJSON(output, "$[?(@.period == 28)].price") + " EUR"
Perióda 29
PARSEJSON(output, "$[?(@.period == 29)].price") + " EUR"
Perióda 30
PARSEJSON(output, "$[?(@.period == 30)].price") + " EUR"
Perióda 31
PARSEJSON(output, "$[?(@.period == 31)].price") + " EUR"
Perióda 32
PARSEJSON(output, "$[?(@.period == 32)].price") + " EUR"
Perióda 33
PARSEJSON(output, "$[?(@.period == 33)].price") + " EUR"
Perióda 34
PARSEJSON(output, "$[?(@.period == 34)].price") + " EUR"
Perióda 35
PARSEJSON(output, "$[?(@.period == 35)].price") + " EUR"
Perióda 36
PARSEJSON(output, "$[?(@.period == 36)].price") + " EUR"
Perióda 37
PARSEJSON(output, "$[?(@.period == 37)].price") + " EUR"
Perióda 38
PARSEJSON(output, "$[?(@.period == 38)].price") + " EUR"
Perióda 39
PARSEJSON(output, "$[?(@.period == 39)].price") + " EUR"
Perióda 40
PARSEJSON(output, "$[?(@.period == 40)].price") + " EUR"
Perióda 41
PARSEJSON(output, "$[?(@.period == 41)].price") + " EUR"
Perióda 42
PARSEJSON(output, "$[?(@.period == 42)].price") + " EUR"
Perióda 43
PARSEJSON(output, "$[?(@.period == 43)].price") + " EUR"
Perióda 44
PARSEJSON(output, "$[?(@.period == 44)].price") + " EUR"
Perióda 45
PARSEJSON(output, "$[?(@.period == 45)].price") + " EUR"
Perióda 46
PARSEJSON(output, "$[?(@.period == 46)].price") + " EUR"
Perióda 47
PARSEJSON(output, "$[?(@.period == 47)].price") + " EUR"
Perióda 48
PARSEJSON(output, "$[?(@.period == 48)].price") + " EUR"
Perióda 49
PARSEJSON(output, "$[?(@.period == 49)].price") + " EUR"
Perióda 50
PARSEJSON(output, "$[?(@.period == 50)].price") + " EUR"
Perióda 51
PARSEJSON(output, "$[?(@.period == 51)].price") + " EUR"
Perióda 52
PARSEJSON(output, "$[?(@.period == 52)].price") + " EUR"
Perióda 53
PARSEJSON(output, "$[?(@.period == 53)].price") + " EUR"
Perióda 54
PARSEJSON(output, "$[?(@.period == 54)].price") + " EUR"
Perióda 55
PARSEJSON(output, "$[?(@.period == 55)].price") + " EUR"
Perióda 56
PARSEJSON(output, "$[?(@.period == 56)].price") + " EUR"
Perióda 57
PARSEJSON(output, "$[?(@.period == 57)].price") + " EUR"
Perióda 58
PARSEJSON(output, "$[?(@.period == 58)].price") + " EUR"
Perióda 59
PARSEJSON(output, "$[?(@.period == 59)].price") + " EUR"
Perióda 60
PARSEJSON(output, "$[?(@.period == 60)].price") + " EUR"
Perióda 61
PARSEJSON(output, "$[?(@.period == 61)].price") + " EUR"
Perióda 62
PARSEJSON(output, "$[?(@.period == 62)].price") + " EUR"
Perióda 63
PARSEJSON(output, "$[?(@.period == 63)].price") + " EUR"
Perióda 64
PARSEJSON(output, "$[?(@.period == 64)].price") + " EUR"
Perióda 65
PARSEJSON(output, "$[?(@.period == 65)].price") + " EUR"
Perióda 66
PARSEJSON(output, "$[?(@.period == 66)].price") + " EUR"
Perióda 67
PARSEJSON(output, "$[?(@.period == 67)].price") + " EUR"
Perióda 68
PARSEJSON(output, "$[?(@.period == 68)].price") + " EUR"
Perióda 69
PARSEJSON(output, "$[?(@.period == 69)].price") + " EUR"
Perióda 70
PARSEJSON(output, "$[?(@.period == 70)].price") + " EUR"
Perióda 71
PARSEJSON(output, "$[?(@.period == 71)].price") + " EUR"
Perióda 72
PARSEJSON(output, "$[?(@.period == 72)].price") + " EUR"
Perióda 73
PARSEJSON(output, "$[?(@.period == 73)].price") + " EUR"
Perióda 74
PARSEJSON(output, "$[?(@.period == 74)].price") + " EUR"
Perióda 75
PARSEJSON(output, "$[?(@.period == 75)].price") + " EUR"
Perióda 76
PARSEJSON(output, "$[?(@.period == 76)].price") + " EUR"
Perióda 77
PARSEJSON(output, "$[?(@.period == 77)].price") + " EUR"
Perióda 78
PARSEJSON(output, "$[?(@.period == 78)].price") + " EUR"
Perióda 79
PARSEJSON(output, "$[?(@.period == 79)].price") + " EUR"
Perióda 80
PARSEJSON(output, "$[?(@.period == 80)].price") + " EUR"
Perióda 81
PARSEJSON(output, "$[?(@.period == 81)].price") + " EUR"
Perióda 82
PARSEJSON(output, "$[?(@.period == 82)].price") + " EUR"
Perióda 83
PARSEJSON(output, "$[?(@.period == 83)].price") + " EUR"
Perióda 84
PARSEJSON(output, "$[?(@.period == 84)].price") + " EUR"
Perióda 85
PARSEJSON(output, "$[?(@.period == 85)].price") + " EUR"
Perióda 86
PARSEJSON(output, "$[?(@.period == 86)].price") + " EUR"
Perióda 87
PARSEJSON(output, "$[?(@.period == 87)].price") + " EUR"
Perióda 88
PARSEJSON(output, "$[?(@.period == 88)].price") + " EUR"
Perióda 89
PARSEJSON(output, "$[?(@.period == 89)].price") + " EUR"
Perióda 90
PARSEJSON(output, "$[?(@.period == 90)].price") + " EUR"
Perióda 91
PARSEJSON(output, "$[?(@.period == 91)].price") + " EUR"
Perióda 92
PARSEJSON(output, "$[?(@.period == 92)].price") + " EUR"
Perióda 93
PARSEJSON(output, "$[?(@.period == 93)].price") + " EUR"
Perióda 94
PARSEJSON(output, "$[?(@.period == 94)].price") + " EUR"
Perióda 95
PARSEJSON(output, "$[?(@.period == 95)].price") + " EUR"
Perióda 96
PARSEJSON(output, "$[?(@.period == 96)].price") + " EUR"
Aktuális ár Változó Csak olvasható

Az aktuális óra spotára EUR/MWh-ban — dinamikusan meghatározva az ártömbből az aktuális idő alapján

numeric Egység: EUR json_path

Aktuális ár

Olvasás
var prices := PARSEJSON(output, "$..price");
VAR date := NOW();
var periodHour := LENGTH(prices) / 24;	
var actualperiod := FLOOR(((date.hour * 60) + date.minute) * periodHour / 60);

GETAT(prices, actualperiod)
Aktuális periódus rangja Változó Csak olvasható

Az aktuális óra árának rangja az összes periódus között (1 = a nap legolcsóbb órája)

numeric json_path

Aktuális periódus rangja

Olvasás
var prices := PARSEJSON(output, "$..price");
var byPrice := ORDERINDEX(prices);
VAR date := NOW();
var periodHour := LENGTH(prices) / 24;	
var actualperiod := FLOOR(((date.hour * 60) + date.minute) * periodHour / 60);

INDEXOF(byPrice, actualperiod) + 1
Aktuális periódus rangja időablakban Változó Csak olvasható

Az aktuális óra árának rangja a felhasználó által meghatározott Tól–Ig időablakon belül — NaN-t ad vissza az ablakon kívül

numeric json_path

Aktuális periódus rangja időablakban

Olvasás
VAR date := NOW();
IF date.hour < From or date.hour > To or From >= To
	RETURN(NaN);
ELSE
	var prices := PARSEJSON(output, "$..price");
	var periodHour := LENGTH(prices) / 24;
	var windowPrices := COPY(prices, From * periodHour, (To - From) * periodHour);
	var byPrice := ORDERINDEX(windowPrices);
	
	var actualperiod := FLOOR(((date.hour * 60) + date.minute) * periodHour / 60);

	RETURN(INDEXOF(byPrice, actualperiod - From * periodHour) +1);
END
Nap legmagasabb ára Változó Csak olvasható

Maximális spotár az összes elérhető periódusban (EUR/MWh)

numeric Egység: EUR json_path

Nap legmagasabb ára

Olvasás
var prices := PARSEJSON(output, "$..price");
GETAT(ORDERDESC(prices), 0)
Legmagasabb ár az időablakban Változó Csak olvasható

Maximális spotár a felhasználó által meghatározott Tól–Ig időablakon belül (EUR/MWh)

numeric Egység: EUR json_path

Legmagasabb ár az időablakban

Olvasás
VAR date := NOW();
IF From >= To
	RETURN(NaN);
ELSE
	var prices := PARSEJSON(output, "$..price");
	var periodHour := LENGTH(prices) / 24;	
	var actualperiod := FLOOR(((date.hour * 60) + date.minute) * periodHour / 60);
	var windowPrices := COPY(prices, From * periodHour, (To - From) * periodHour);
	var byPrice := ORDERDESC(windowPrices);

	RETURN(GETAT(byPrice, 0));
END
Nap legalacsonyabb ára Változó Csak olvasható

Minimális spotár az összes elérhető periódusban (EUR/MWh)

numeric Egység: EUR json_path

Nap legalacsonyabb ára

Olvasás
var prices := PARSEJSON(output, "$..price");
GETAT(ORDER(prices), 0)
Legalacsonyabb ár az időablakban Változó Csak olvasható

Minimális spotár a felhasználó által meghatározott Tól–Ig időablakon belül (EUR/MWh)

numeric Egység: EUR json_path

Legalacsonyabb ár az időablakban

Olvasás
VAR date := NOW();
IF From >= To
	RETURN(NaN);
ELSE
	var prices := PARSEJSON(output, "$..price");
	var periodHour := LENGTH(prices) / 24;	
	#var actualperiod := FLOOR(((date.hour * 60) + date.minute) * periodHour / 60);
	var windowPrices := COPY(prices, From * periodHour, (To - From) * periodHour);
	var byPrice := ORDER(windowPrices);

	RETURN(GETAT(byPrice, 0));
END
Nap legolcsóbb periódusa Változó Csak olvasható

A nap legolcsóbb órájának 1-alapú periódusszáma (pl. 3 = 02:00–03:00)

numeric json_path

Nap legolcsóbb periódusa

Olvasás
var prices := PARSEJSON(output, "$..price");
GETAT(ORDERINDEX(prices), 0) +1
Legolcsóbb hátralévő periódus Változó Csak olvasható

A legolcsóbb óra 1-alapú periódusszáma az aktuális órától kezdve

numeric json_path

Legolcsóbb hátralévő periódus

Olvasás
var prices := PARSEJSON(output, "$..price");
VAR date := NOW();
var periodHour := LENGTH(prices) / 24;	
var actualperiod := FLOOR(((date.hour * 60) + date.minute) * periodHour / 60);
var remainingPrices := COPY(prices, actualperiod, LENGTH(prices) - actualperiod);
var byPrice := ORDERINDEX(remainingPrices);

GETAT(byPrice, 0) + actualperiod +1
Periódusszám Változó Csak olvasható

Az API-válaszban elérhető óránkénti árperiódusok összesített száma (jellemzően 24 vagy 72)

numeric json_path

Periódusszám

Olvasás
var prices := PARSEJSON(output, "$..price");
LENGTH(prices);
Periódusszám az időablakban Változó Csak olvasható

Óránkénti árperiódusok száma a felhasználó által meghatározott Tól–Ig időablakon belül

numeric json_path

Periódusszám az időablakban

Olvasás
VAR date := NOW();
IF From >= To
	RETURN(NaN);
ELSE
	var prices := PARSEJSON(output, "$..price");
	var periodHour := LENGTH(prices) / 24;
	var windowPrices := COPY(prices, From * periodHour, (To - From) * periodHour);

	RETURN(LENGTH(windowPrices));
END
Nap átlagos ára Változó Csak olvasható

Az összes elérhető periódusár számtani átlaga (EUR/MWh)

numeric Egység: EUR json_path

Nap átlagos ára

Olvasás
var prices := PARSEJSON(output, "$..price");
AVG(prices)
Átlagos ár az időablakban Változó Csak olvasható

A spotárak számtani átlaga a felhasználó által meghatározott Tól–Ig időablakon belül (EUR/MWh)

numeric Egység: EUR json_path

Átlagos ár az időablakban

Olvasás
VAR date := NOW();
IF From >= To
	RETURN(NaN);
ELSE
	var prices := PARSEJSON(output, "$..price");
	var periodHour := LENGTH(prices) / 24;	
	#var actualperiod := FLOOR(((date.hour * 60) + date.minute) * periodHour / 60);
	var windowPrices := COPY(prices, From * periodHour, (To - From) * periodHour);

	RETURN(AVG(windowPrices));
END
Kapcsolat: Packet Parser → HTTP