Forecast: IForecast;
Свойство Forecast определяет параметры ряда прогнозирования.
Sub Main;
Sub PrinResult(a, b: Integer; Rez: Array Of Double);
Var
i : Integer;
d0 : Double;
Begin
For i := a To b Do
d0 := Rez[i];
Debug.WriteLine(i.ToString + ", " + d0.ToString);
End For;
End Sub PrinResult;
Var
ARIMA: SmArima;
Fact: Array Of Double;
i: Integer;
Forecast: IForecast;
Begin
ARIMA := New SmArima.Create;
Fact := New Double[9];
For i := 0 To 8 Do
Fact[i] := 1230 + i*326;
End For;
ARIMA.Serie.Value := Fact;
Forecast := ARIMA.Forecast;
Forecast.LastPoint := 12;
ARIMA.MaxIteration := 50;
ARIMA.Execute;
Debug.WriteLine("=== Модельный ряд ===");
PrinResult(0, ARIMA.ModelPeriod.LastPoint - 1, ARIMA.Fitted);
Debug.WriteLine("=== Прогнозные значения ===");
PrinResult(ARIMA.ModelPeriod.LastPoint, Forecast.Value.Length - 1, Forecast.Value);
End Sub Main;
После выполнения примера в окно консоли будут выведены следующие результаты:
Module execution started
=== Модельный ряд ===
0, 1.#QNAN
1, 1391.715692710864
2, 1753.2609726376277
3, 2032.7215062738107
4, 2394.2583938796165
5, 2673.7273189787293
6, 3035.2558159795462
7, 3314.7331308257944
8, 3676.2532389372418
=== Прогнозные значения ===
9, 3955.7389418151824
10, 3907.7756602557702
11, 3861.4304509811454
Module execution finished
См. также: