[comment]: # translation:outdated

[comment]: # attributes: notoc

[comment]: # (terms: forecast, timeleft )

[comment]: # ({ee75c9cc-2e2a1a06})
# 8 Функције предвиђања

Све функције наведене овде су подржане у:

- [Изрази окидача](/manual/config/triggers/expression)
- [Израчунате ставке](/manual/config/items/itemtypes/calculated)

Функције су наведене без додатних информација. Кликните на функцију да бисте видели све детаље.

|Function|Description|
|--|--------|
|[forecast](#forecast)|Будућа вредност, макс, мин, делта или просек ставке.|
|[timeleft](#timeleft)|Време у секундама потребно да ставка достигне наведени праг.|

[comment]: # ({/ee75c9cc-2e2a1a06})

[comment]: # ({7bb9caf7-4d343eb8})
##### Заједнички параметри

-       `/host/key` је заједнички обавезни први параметар за функције
    које се референцирају на историју ставке домаћина
-       `(sec|#num)<:time shift>` је заједнички други параметар за
    функције које упућују на историју ставке домаћина, где је:
    -      **sec** - максимум [периода
        евалуације](/manual/config/triggers#evaluation_period) у секундама
        (могу се користити време [суфикси](/manual/appendix/suffixes)) или
    -       **\#num** - максимум [опсег
    евалуације ](/manual/config/triggers#evaluation_period) у најновијем
        прикупљању вредности (ако им претходи хеш ознака)
    -       **time shift** (опционо) омогућава померање тачке евалуације
        назад у време. Погледајте [више
        детаља](/manual/config/triggers/expression#time_shift) за
        навођење временског померања.

[comment]: # ({/7bb9caf7-4d343eb8})

[comment]: # ({c645f0e4-f3b63bc1})
### Детаљи функције

Неке опште напомене о параметрима функције:

- Параметри функције су одвојени зарезом
- Опциони параметри функције (или делови параметара) су означени са
   `<` `>`
- Параметри специфични за функцију описани су уз сваку функцију
- `/host/key` и `(sec|#num)<:time shift>` параметри никада не смеју бити
   под наводницима

[comment]: # ({/c645f0e4-f3b63bc1})

[comment]: # ({8a873b31-e4452b37})
##### forecast(/host/key,(sec|#num)<:time shift>,time,<fit>,<mode>) {#forecast}

Будућа вредност, max, min, delta или просек ставке.<br>
Подржани типови вредности: *Float*, *Integer*.

Параметри:

-   Види [уобичајени параметри](#common-parameters);<br>
-   **time** - хоризонт прогнозирања у секундама (могу се користити временски суфикси); подржане су негативне вредности;<br>
-   **fit** (опционо; мора бити под двоструким наводницима) - функција која се користи за уклапање историјских података. Подржани режими:<br>*linear* - линеарна функција (подразумевано)<br>*polynomialN* - полином степена N (1 <= N <= 6)<br>*exponential* - експоненцијална функција<br>*logarithmic* - логаритамска функција<br>*power* - степена функција<br>Имајте на уму да је *polynomial1* еквивалентан *linear*;
-   **mode** (опционо; мора бити под двоструким наводницима) - захтевани излаз. Подржани режими:<br>*value* - вредност (подразумевано)<br>*max* - максимум<br>*min* - минимум<br>*delta* - *max*-*min*<br>*avg* - просек<br>Имајте на уму да *value* процењује вредност ставке у тренутку `now` + `time`; *max*, *min*, *delta* и *avg* истражују процењену вредност ставке у интервалу између `now` и `now` + `time`.

Коментари:

-   Ако је вредност коју треба вратити већа од 1.7976931348623158E+308 или мања од -1.7976931348623158E+308, враћена вредност се скраћује на 1.7976931348623158E+308 или -1.7976931348623158E+308 одговарајуће;
-   Постаје неподржано само ако се погрешно користи у изразу (погрешан тип ставке, неважећи параметри), у супротном враћа -1 у случају грешака;
-   Погледајте такође додатне информације о [функцијама предиктивног окидача](/manual/config/triggers/prediction).

Примери:

forecast(/host/key,#10,1h) #прогнозира вредност ставке за један сат на основу последњих 10 вредности
forecast(/host/key,1h,30m) #прогноза вредности ставке за 30 минута на основу података из последњег сата
forecast(/host/key,1h:now-1d,12h) #прогноза вредности ставке за 12 сати на основу података из последњег сата пре једног дана
forecast(/host/key,1h,10m,"exponential") #прогноза вредности ставке за 10 минута на основу података из последњег сата и експоненцијалне функције
forecast(/host/key,1h,2h,"polynomial3","max") #прогноза максималне вредности коју ставка може достићи у наредна два сата на основу података из последњег сата и кубног (трећег степена) полинома
forecast(/host/key,#2,-20m) #процена вредности ставке пре 20 минута на основу последње две вредности (ово може бити прецизније него коришћење функције last(), посебно ако се ставка ретко ажурира, рецимо, једном на сат)

[comment]: # ({/8a873b31-e4452b37})

[comment]: # ({834aceba-9b065620})
##### timeleft(/host/key,(sec|#num)<:time shift>,threshold,<fit>) {#timeleft}

Време у секундама потребно да ставка достигне наведени праг.<br>Подржани типови вредности: *Float*, *Integer*.

Параметри:

-   Види [уобичајени параметри](#common-parameters);<br>
-   **threshold** - вредност коју треба достићи (могу се користити [sufixes of unit](/manual/appendix/suffixes));
-   **fit** (опционо; мора бити под двоструким наводницима) - види [forecast()](#forecast).

Коментари:

-   Ако је вредност коју треба вратити већа од 1.7976931348623158E+308, враћена вредност се скраћује на 1.7976931348623158E+308;
-   Враћа 1.7976931348623158E+308 ако се праг не може достићи;
-   Постаје неподржано само ако се погрешно користи у изразу (погрешан тип ставке, неважећи параметри), у супротном враћа -1 у случају грешака;
-   Погледајте и додатне информације о [предиктивним функцијама окидача](/manual/config/triggers/prediction).

Примери:

   timeleft(/host/key,#10,0) #време док вредност ставке не достигне нулу на основу последњих 10 вредности
   timeleft(/host/key,1h,100) #време док вредност ставке не достигне 100 на основу података из последњег сата
   timeleft(/host/key,1h:now-1d,100) #време док вредност ставке не достигне 100 на основу података из последњег сата
   timeleft(/host/key,1h,200,"polynomial2") #време док вредност ставке не достигне 200 на основу података из последњег сата и претпоставке да се ставка понаша као квадратни (други степен) полином

[comment]: # ({/834aceba-9b065620})

[comment]: # ({ba59dd3a-9958c480})
Погледајте [све подржане функције](/manual/appendix/functions).

[comment]: # ({/ba59dd3a-9958c480})
