IEmExponentialSmoothingSettings.Explained

Синтаксис Fore

Explained: IEmSerie;

Синтаксис Fore.NET

Explained: Prognoz.Platform.Interop.Modeller.IEmSerie;

Описание

Свойство Explained определяет сглаживаемый ряд.

Комментарии

Если не задан сглаживаемый ряд, то корректный расчёт метода «Экспоненциальное сглаживание» невозможен.

Пример Fore

Для выполнения примера добавьте ссылки на системные сборки «Modeller», «Stat».

Sub ExponentialSmoothing;
Var
    ExprMod: IExpressModeller;
    Ar: Array[14Of Double;
    Serie: IEmSerie;
    Sett: IEmExponentialSmoothingSettings;
    Period: IEmPeriodSettings;
Begin
    ExprMod := New ExpressModeller.Create;
    Sett := ExprMod.CreateExponentialSmoothingSettings;
    // Задаем сглаживаемый ряд
    Ar[0] := 56; Ar[1] := 45; Ar[2] := 23; Ar[3] := 45;
    Ar[4] := 65; Ar[5] := 23; Ar[6] := 54; Ar[7] := 87;
    Ar[8] := 67; Ar[9] := 98; Ar[10] := 89; Ar[13] := 79;
    Ar[11] := Double.Nan; Ar[12] := Double.Nan;
    Serie := ExprMod.Series.Add(Ar, "X1""Ряд данных 1");
    Sett.Explained := Serie;
    // Задаем тип сезонности
    Sett.Seasonality := SeasonalityType.Additive;
    // Задаем период сезонности 
    Sett.SeasonalityCycle := 4;
    // Задаем вид тренда
    Sett.Trend := TrendType.Linear;
    // Задаем коэффициенты сглаживания
    Sett.Alpha := 0.2;
    Sett.Delta := 0.5;
    Sett.Gamma := 0.7;
    //Задаем периоды расчёта
    Period := Sett.Period;
    Period.BeginPeriod := 0;
    Period.EndPeriod := 13;
    Period.EndFore := 4;
    // Выполняем расчёт для линейного тренда
    ExprMod.EvaluateMethod("C:\ExponentialSmoothing_Linear.html", Sett, True);
    // Задаем вид тренда
    Sett.Trend := TrendType.Damped;
    // Задаем коэффициенты сглаживания
    Sett.Alpha := 0.4;
    Sett.Gamma := 0.6;
    Sett.Phi := 0.4;
    // Выполняем расчёт для затухающего тренда
    ExprMod.EvaluateMethod("C:\ExponentialSmoothing_Damped.html", Sett, True);
End Sub ExponentialSmoothing;

Результат выполнения примера: будет выполнен расчёт метода «Экспоненциальное сглаживание» по заданным параметрам для двух моделей тренда. Отчёт о расчёте при линейном тренде будет сохранен в файл «C:\ExponentialSmoothing_Linear.html»; при затухающем тредне - в файл «C:\ExponentialSmoothing_Damped.html».

Пример Fore.NET

Imports Prognoz.Platform.Interop.Modeller;
Imports Prognoz.Platform.Interop.Stat;

Public Shared Sub ExponentialSmoothing();
Var
    ExprMod: IExpressModeller;
    Ar: Array[14Of Double;
    Serie: IEmSerie;
    Sett: IEmExponentialSmoothingSettings;
    Period: IEmPeriodSettings;
Begin
    ExprMod := New ExpressModeller.Create();
    Sett := ExprMod.CreateExponentialSmoothingSettings();
    // Задаем сглаживаемый ряд
    Ar[0] := 56; Ar[1] := 45; Ar[2] := 23; Ar[3] := 45;
    Ar[4] := 65; Ar[5] := 23; Ar[6] := 54; Ar[7] := 87;
    Ar[8] := 67; Ar[9] := 98; Ar[10] := 89; Ar[13] := 79;
    Ar[11] := Double.Nan; Ar[12] := Double.Nan;
    Serie := ExprMod.Series.Add(Ar, "X1""Ряд данных 1");
    Sett.Explained := Serie;
    // Задаем тип сезонности
    Sett.Seasonality := SeasonalityType.sstAdditive;
    // Задаем период сезонности 
    Sett.SeasonalityCycle := 4;
    // Задаем вид тренда
    Sett.Trend := TrendType.tdtLinear;
    // Задаем коэффициенты сглаживания
    Sett.Alpha := 0.2;
    Sett.Delta := 0.5;
    Sett.Gamma := 0.7;
    //Задаем периоды расчёта
    Period := Sett.Period;
    Period.BeginPeriod := 0;
    Period.EndPeriod := 13;
    Period.EndFore := 4;
    // Выполняем расчёт для линейного тренда
    ExprMod.EvaluateMethod("C:\ExponentialSmoothing_Linear.html", Sett, True);
    // Задаем вид тренда
    Sett.Trend := TrendType.tdtDamped;
    // Задаем коэффициенты сглаживания
    Sett.Alpha := 0.4;
    Sett.Gamma := 0.6;
    Sett.Phi := 0.4;
    // Выполняем расчёт для затухающего тренда
    ExprMod.EvaluateMethod("C:\ExponentialSmoothing_Damped.html", Sett, True);
End Sub ExponentialSmoothing;

Результат выполнения примера: будет выполнен расчёт метода «Экспоненциальное сглаживание» по заданным параметрам для двух моделей тренда. Отчёт о расчёте при линейном тренде будет сохранен в файл «C:\ExponentialSmoothing_Linear.html»; при затухающем тредне - в файл «C:\ExponentialSmoothing_Damped.html».

См. также:

IEmExponentialSmoothingSettings