SmoothingParameterMode: HPSmoothingParameterModeType;
Свойство SmoothingParameterMode определяет способ задания параметра сглаживания.
В зависимости от значения SmoothingParameterMode для задания параметра сглаживания используйте различные свойства:
SmoothingParameterMode = HPSmoothingParameterModeType.SetByFrequencyRule. Параметр сглаживания определяется значением степени: ISmHodrickPrescottFilter.Power;
SmoothingParameterMode = HPSmoothingParameterModeType.EditDirectly. Значение по умолчанию. Параметр сглаживания определяется значением лямбды: ISmHodrickPrescottFilter.SmoothingParameter.
В примере описано задание параметров и расчет фильтра Ходрика-Прескотта для ряда данных, заданного вещественным массивом «s». Для выполнения примера необходимо добавить ссылку на системную сборку «Stat».
Sub UserProc;
Var
HP: SmHodrickPrescottFilter;
s: Array Of Double;
res: Integer;
Sub Print(Data: Array Of Double);
Var
i: Integer;
CI: ICultureInfo;
Begin
CI := CultureInfo.Current;
Debug.WriteLine("---Begin---");
For i := 0 To Data.Length - 1 Do
If Double.IsNan(Data[i]) Then
Debug.WriteLine("---empty---");
Else
Debug.WriteLine(i.ToString + ", " + CI.FormatDoublePrec(Data[i], 4));
End If;
End For;
Debug.WriteLine("---End---");
End Sub Print;
Begin
s := New Double[15]; s[07] := 1064.74;
s[00] := 670.2; s[08] := 1033.3;
s[01] := 576.06; s[09] := 780.8;
s[02] := 717.64; s[10] := 657.5;
s[03] := 856.9; s[11] := 654.5;
s[04] := 885.4; s[12] := 678.23;
s[05] := 1011; s[13] := 642.41;
s[06] := 995.44; s[14] := 751.9;
HP := New SmHodrickPrescottFilter.Create;
HP.Serie.Value := s;
HP.ModelPeriod.FirstPoint := 1;
HP.ModelPeriod.LastPoint := 15;
HP.MissingData.Method := MissingDataMethod.SampleAverage;
HP.Frequency := 12;
HP.SmoothingParameterMode := HPSmoothingParameterModeType.SetByFrequencyRule;
HP.Power := 5;
res := HP.Execute;
If res <> 0 Then
Debug.WriteLine(HP.Errors);
Else
Debug.WriteLine("Сглаженный ряд");
Print(HP.Fitted);
End If;
End Sub UserProc;
После выполнения примера в окно консоли будет выведен сглаженный ряд. Расчеты будут сделаны на месячных данных, параметр сглаживания будет определяться значением степени.
См. также: