estimate

Подбор авторегрессионной интегрированной модели скользящего среднего значения (ARIMA) к данным

Описание

пример

EstMdl = estimate(Mdl,y) оценивает параметры частично заданной модели ARIMA (p, D, q) Mdl учитывая наблюдаемые одномерные временные ряды y использование максимальной вероятности. EstMdl - соответствующая полностью заданная модель ARIMA, которая хранит оценки параметров.

пример

EstMdl = estimate(Mdl,y,Name,Value) использует дополнительные опции, заданные одним или несколькими аргументами пары "имя-значение". Для примера, 'X',X включает линейный регрессионный компонент в модель для экзогенных данных в X.

пример

[EstMdl,EstParamCov,logL,info] = estimate(___) также возвращает дисперсионно-ковариационную матрицу, связанную с оцененными параметрами EstParamCov, оптимизированное значение целевой функции логарифмической правдоподобности logL, и сводную информацию info, использование любой комбинации входных аргументов в предыдущих синтаксисах.

Примеры

свернуть все

Подгонка модели ARMA (2,1) к моделируемым данным .

Симулируйте данные из известной модели

Предположим, что процесс генерации данных (DGP) является

yt=0.5yt-1-0.3yt-2+εt+0.2εt-1,

где εt - серия iid Гауссовых случайных переменных со средним значением 0 и отклонением 0,1.

Создайте модель ARMA (2,1), представляющую DGP.

DGP = arima('AR',{0.5,-0.3},'MA',0.2,...
    'Constant',0,'Variance',0.1)
DGP = 
  arima with properties:

     Description: "ARIMA(2,0,1) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 1
        Constant: 0
              AR: {0.5 -0.3} at lags [1 2]
             SAR: {}
              MA: {0.2} at lag [1]
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: 0.1

DGP является полностью заданным arima объект модели.

Симулируйте случайный путь 500 наблюдений из модели ARMA (2,1).

rng(5); % For reproducibility
T = 500;
y = simulate(DGP,T);

y является вектором-столбцом 500 на 1, представляющим путь симулированным откликом от модели ARMA (2,1) DGP.

Оценка модели

Создайте шаблон модели ARMA (2,1) для оценки.

Mdl = arima(2,0,1)
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,1) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 1
        Constant: NaN
              AR: {NaN NaN} at lags [1 2]
             SAR: {}
              MA: {NaN} at lag [1]
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Mdl является частично заданным arima объект модели. Заданы только обязательные, нестационарные параметры, которые определяют структуру модели. NaN-значенные свойства, включая ϕ1, ϕ2, θ1, c, и σ2, являются неизвестными параметрами модели, которые будут оценены.

Подгонка модели ARMA (2,1) к y.

EstMdl = estimate(Mdl,y)
 
    ARIMA(2,0,1) Model (Gaussian Distribution):
 
                  Value      StandardError    TStatistic      PValue  
                _________    _____________    __________    __________

    Constant    0.0089018       0.018417       0.48334         0.62886
    AR{1}         0.49563        0.10323        4.8013      1.5767e-06
    AR{2}        -0.25495       0.070155       -3.6341      0.00027897
    MA{1}         0.27737        0.10732        2.5846       0.0097492
    Variance      0.10004      0.0066577        15.027      4.9017e-51
EstMdl = 
  arima with properties:

     Description: "ARIMA(2,0,1) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 1
        Constant: 0.00890178
              AR: {0.495632 -0.254951} at lags [1 2]
             SAR: {}
              MA: {0.27737} at lag [1]
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: 0.100043

MATLAB® отображает таблицу, содержащую сводные данные оценок, которая включает оценки параметров и выводы. Для примера, Value столбец содержит соответствующие оценки максимальной вероятности и PValue столбец содержит p-values for the asymptotic t-тест нулевой гипотезы, что соответствующий параметр равен 0.

EstMdl является полностью заданным, предполагаемым arima объект модели; его оценки напоминают значения параметров ДГУ.

Подгонка модели AR (2) к моделируемым данным с сохранением постоянной модели фиксированной во время оценки .

Симулируйте данные из известной модели

Предположим, что DGP является

yt=0.5yt-1-0.3yt-2+εt,

где εt - серия iid Гауссовых случайных переменных со средним значением 0 и отклонением 0,1.

Создайте модель AR (2), представляющую DGP.

DGP = arima('AR',{0.5,-0.3},...
    'Constant',0,'Variance',0.1);

Симулируйте случайный путь 500 наблюдений от модели.

rng(5); % For reproducibility
T = 500;
y = simulate(DGP,T);

Создайте объект модели, задающий ограничение

Предположим, что среднее значение yt равен 0, что подразумевает, что c равен 0.

Создайте модель AR (2) для оценки. Наборc в 0.

Mdl = arima('ARLags',1:2,'Constant',0)
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 0
        Constant: 0
              AR: {NaN NaN} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Mdl является частично заданным arima объект модели. Заданные параметры включают все необходимые параметры и константу модели. NaN-значенные свойства, включая ϕ1, ϕ2, и σ2, являются неизвестными параметрами модели, которые будут оценены.

Оценка модели

Подгонка шаблона модели AR (2), содержащего ограничение, к y.

EstMdl = estimate(Mdl,y)
 
    ARIMA(2,0,0) Model (Gaussian Distribution):
 
                 Value      StandardError    TStatistic      PValue  
                ________    _____________    __________    __________

    Constant           0             0            NaN             NaN
    AR{1}        0.56342      0.044225          12.74      3.5474e-37
    AR{2}       -0.29355      0.041786        -7.0252       2.137e-12
    Variance     0.10022      0.006644         15.085      2.0476e-51
EstMdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 0
        Constant: 0
              AR: {0.563425 -0.293554} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: 0.100222

EstMdl является полностью заданным, предполагаемым arima объект модели; его оценки напоминают значения параметров модели AR (2) DGP. Значение c в сводных данных оценок и отображение объектов 0, и соответствующие выводы тривиальны или не применяются.

Поскольку модель ARIMA является функцией предыдущих значений, estimate требует предварительных данных для инициализации модели в начале периода дискретизации. Хотя, estimate backcasts для предварительных образцов данных по умолчанию, можно задать необходимые предварительные образцы данных. The P свойство arima объект модели задает необходимое количество предварительных наблюдений.

Загрузка данных

Загрузите набор данных индекса собственного капитала США Data_EquityIdx.

load Data_EquityIdx

Таблица DataTable включает переменную временных рядов NYSE, который содержит ежедневные комплексные цены закрытия NYSE с января 1990 года по декабрь 1995 года.

Преобразуйте таблицу в расписание.

dt = datetime(dates,'ConvertFrom','datenum','Format','yyyy-MM-dd');
TT = table2timetable(DataTable,'RowTimes',dt);
T = size(TT,1); % Total sample size

Создайте шаблон модели

Предположим, что модель ARIMA (1,1,1) подходит для моделирования составных рядов NYSE в течение периода дискретизации.

Создайте шаблон модели ARIMA (1,1,1) для оценки.

Mdl = arima(1,1,1)
Mdl = 
  arima with properties:

     Description: "ARIMA(1,1,1) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 1
               Q: 1
        Constant: NaN
              AR: {NaN} at lag [1]
             SAR: {}
              MA: {NaN} at lag [1]
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Mdl является частично заданным arima объект модели.

Выборка раздела

Создать векторы индексов, которые разбивают выборку на предварительный образец и периоды дискретизации оценки, так что предварительный образец происходит первым и содержит Mdl.P = 2 наблюдения, и выборка оценки содержит оставшиеся наблюдения.

presample = 1:Mdl.P;
estsample = (Mdl.P + 1):T;

Оценка модели

Подгонка модели ARIMA (1,1,1) к оценочной выборке. Задайте примитивные отклики .

EstMdl = estimate(Mdl,TT{estsample,"NYSE"},'Y0',TT{presample,"NYSE"});
 
    ARIMA(1,1,1) Model (Gaussian Distribution):
 
                 Value      StandardError    TStatistic     PValue 
                ________    _____________    __________    ________

    Constant     0.15775      0.097888         1.6115       0.10707
    AR{1}       -0.21984       0.15652        -1.4045       0.16016
    MA{1}        0.28529       0.15393         1.8534      0.063825
    Variance       17.17       0.20065         85.573             0

EstMdl является полностью заданным, предполагаемым arima объект модели.

Подгонка модели ARIMA (1,1,1) к ежедневному закрытию составного индекса NYSE. Задайте начальные значения параметров, полученные из анализа пилотной выборки.

Загрузка данных

Загрузите набор данных индекса собственного капитала США Data_EquityIdx.

load Data_EquityIdx

Таблица DataTable включает переменную временных рядов NYSE, который содержит ежедневные комплексные цены закрытия NYSE с января 1990 года по декабрь 1995 года.

Преобразуйте таблицу в расписание.

dt = datetime(dates,'ConvertFrom','datenum','Format','yyyy-MM-dd');
TT = table2timetable(DataTable,'RowTimes',dt);

Подгонка модели к пилотной выборке

Предположим, что модель ARIMA (1,1,1) подходит для моделирования составных рядов NYSE в течение периода дискретизации.

Создайте шаблон модели ARIMA (1,1,1) для оценки.

Mdl = arima(1,1,1);

Mdl является частично заданным arima объект модели.

Обработайте первые два года как пилотную выборку для получения начальных значений параметров при подгонке модели к оставшимся трем годам данных. Подбор модели к пилотной выборке.

endPilot = datetime(1991,12,31);
pilottr = timerange(TT.Time(1),endPilot,'days');

EstMdl0 = estimate(Mdl,TT{pilottr,"NYSE"},'Display','off');

EstMdl0 является полностью заданным, предполагаемым arima объект модели.

Оценка модели

Подгонка модели ARIMA (1,1,1) к оценочной выборке. Задайте оценочные параметры из выборки пилота подгонки как начальные значения для оптимизации .

esttr = timerange(endPilot + days(1),TT.Time(end),'days');

c0 = EstMdl0.Constant;
ar0 = EstMdl0.AR;
ma0 = EstMdl0.MA;
var0 = EstMdl0.Variance;

EstMdl = estimate(Mdl,TT{esttr,"NYSE"},'Constant0',c0,'AR0',ar0,...
   'MA0',ma0,'Variance0',var0);
 
    ARIMA(1,1,1) Model (Gaussian Distribution):
 
                 Value     StandardError    TStatistic    PValue 
                _______    _____________    __________    _______

    Constant    0.17424       0.11648         1.4959      0.13468
    AR{1}       -0.2262       0.18587         -1.217      0.22362
    MA{1}       0.29047       0.18276         1.5893      0.11199
    Variance     20.053       0.27603          72.65            0

EstMdl является полностью заданным, предполагаемым arima объект модели.

Подбор модели ARIMAX к моделируемым данным временных рядов.

Симулируйте данные предиктора и отклика

Создайте модель ARIMAX (2,1,0) для DGP, представленную yt в уравнении

(1-0.5L+0.3L2)(1-L)1yt=2+1.5x1,t+2.6x2,t-0.3x3,t+εt,

где εt - серия iid Гауссовых случайных переменных со средним значением 0 и отклонением 0,1.

DGP = arima('AR',{0.5,-0.3},'D',1,'Constant',2,...
    'Variance',0.1,'Beta',[1.5 2.6 -0.3]);

Предположим, что экзогенные переменные x1,t, x2,t, и x3,t представлены процессами AR (1)

x1,t=0.1x1,t-1+η1,tx2,t=0.2x2,t-1+η2,tx3,t=0.3x3,t-1+η3,t,

где ηi,t следует Гауссову распределению со средним 0 и отклонением 0.01 для i{1,2,3}. Создайте модели ARIMA, которые представляют экзогенные переменные.

MdlX1 = arima('AR',0.1,'Constant',0,'Variance',0.01);
MdlX2 = arima('AR',0.2,'Constant',0,'Variance',0.01);
MdlX3 = arima('AR',0.3,'Constant',0,'Variance',0.01);

Симулируйте длину 1000 экзогенных серий из моделей AR. Сохраните моделируемые данные в матрице.

T = 1000;
rng(10); % For reproducibility
x1 = simulate(MdlX1,T);
x2 = simulate(MdlX2,T);
x3 = simulate(MdlX3,T);
X = [x1 x2 x3];

X - матрица 1000 на 3 моделируемых данных временных рядов. Каждая строка соответствует наблюдению во временных рядах, и каждый столбец соответствует экзогенной переменной.

Симулируйте длину 1000 серий из DGP. Задайте моделируемые экзогенные данные.

y = simulate(DGP,T,'X',X);

y является вектором отклика 1000 на 1 данные.

Оценка модели

Создайте шаблон модели ARIMA (2,1,0) для оценки.

Mdl = arima(2,1,0)
Mdl = 
  arima with properties:

     Description: "ARIMA(2,1,0) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 3
               D: 1
               Q: 0
        Constant: NaN
              AR: {NaN NaN} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Описание модели (Description свойство) и значение Beta предположим, что частично заданная arima объект модели Mdl является агностиком экзогенных предикторов.

Оцените модель ARIMAX (2,1,0); задайте экзогенные данные предиктора. Потому что estimate backcasts for presample responses (процесс, который требует предикторных данных предиктора для моделей ARIMAX), подгонка модели к последней T – Mdl.P ответы. (Кроме того, можно задать примитивные отклики при помощи 'Y0' аргумент пары "имя-значение".)

EstMdl = estimate(Mdl,y((Mdl.P + 1):T),'X',X);
 
    ARIMAX(2,1,0) Model (Gaussian Distribution):
 
                 Value      StandardError    TStatistic      PValue   
                ________    _____________    __________    ___________

    Constant      1.7519       0.021143        82.859                0
    AR{1}        0.56076       0.016511        33.963      7.9616e-253
    AR{2}       -0.26625       0.015966       -16.676       1.9646e-62
    Beta(1)       1.4764        0.10157        14.536       7.1227e-48
    Beta(2)       2.5638        0.10445        24.547      4.6628e-133
    Beta(3)     -0.34422       0.098623       -3.4903       0.00048249
    Variance     0.10673      0.0047273        22.577       7.316e-113

EstMdl является полностью заданным, предполагаемым arima объект модели.

Когда вы оцениваете модель при помощи estimate и предоставить экзогенные данные путем определения 'X' аргумент пары "имя-значение", MATLAB ® распознает модель как модель ARIMAX (2,1,0) и включает компонент линейной регрессии для экзогенных переменных.

Предполагаемая модель

(1-0.56L+0.27L2)(1-L)1yt=1.75+1.48x1,t+2.56x2,t-0.34x3,t+εt,

который напоминает DGP, представленный Mdl0. Поскольку MATLAB возвращает коэффициенты AR модели, выраженные в обозначении разностного уравнения, их знаки противоположны в уравнении.

Загрузите набор данных индекса собственного капитала США Data_EquityIdx.

load Data_EquityIdx

Таблица DataTable включает переменную временных рядов NYSE, который содержит ежедневные комплексные цены закрытия NYSE с января 1990 года по декабрь 1995 года.

Преобразуйте таблицу в расписание.

dt = datetime(dates,'ConvertFrom','datenum','Format','yyyy-MM-dd');
TT = table2timetable(DataTable,'RowTimes',dt);

Предположим, что модель ARIMA (1,1,1) подходит для моделирования составных рядов NYSE в течение периода дискретизации

Подгонка модели ARIMA (1,1,1) к данным и возвращение оцененной ковариационной матрицы параметра.

Mdl = arima(1,1,1);
[EstMdl,EstParamCov] = estimate(Mdl,TT{:,"NYSE"});
 
    ARIMA(1,1,1) Model (Gaussian Distribution):
 
                 Value      StandardError    TStatistic     PValue 
                ________    _____________    __________    ________

    Constant     0.15745      0.097831         1.6094       0.10753
    AR{1}       -0.21996       0.15642        -1.4062       0.15965
    MA{1}         0.2854       0.15382         1.8554      0.063533
    Variance      17.159       0.20038         85.632             0
EstParamCov
EstParamCov = 4×4

    0.0096   -0.0002    0.0002    0.0023
   -0.0002    0.0245   -0.0240   -0.0060
    0.0002   -0.0240    0.0237    0.0057
    0.0023   -0.0060    0.0057    0.0402

EstMdl является полностью заданным, предполагаемым arima объект модели. Строки и столбцы EstParamCov соответствуют строкам в таблице оценок и выводов; для примера, Covˆ(ϕˆ1,θˆ1)=-0.024.

Вычислите оцененные стандартные ошибки параметра путем взятия квадратного корня из диагональных элементов ковариационной матрицы.

estParamSE = sqrt(diag(EstParamCov))
estParamSE = 4×1

    0.0978
    0.1564
    0.1538
    0.2004

Вычислите интервал 95% доверия на основе Wald ϕ.

T = size(TT,1); % Effective sample size
phihat = EstMdl.AR{1};
sephihat = estParamSE(2);
ciphi = phihat + tinv([0.025 0.975],T - 3)*sephihat
ciphi = 1×2

   -0.5267    0.0867

Интервал содержит 0, что предполагает, что ϕ незначительна.

Загрузите набор данных индекса собственного капитала США Data_EquityIdx.

load Data_EquityIdx

Таблица DataTable включает переменную временных рядов NYSE, который содержит ежедневные комплексные цены закрытия NYSE с января 1990 года по декабрь 1995 года.

Преобразуйте таблицу в расписание.

dt = datetime(dates,'ConvertFrom','datenum','Format','yyyy-MM-dd');
TT = table2timetable(DataTable,'RowTimes',dt);
T = size(TT,1);

Предположим, что модель ARIMA (1,1,1) подходит для моделирования составных рядов NYSE в течение периода дискретизации .

Подбор модели ARIMA (1,1,1) к данным. Укажите необходимый перед выборкой и отключите отображение оценки.

Mdl = arima(1,1,1);

preidx = 1:Mdl.P;
estidx = (Mdl.P + 1):T;
EstMdl = estimate(Mdl,TT{estidx,"NYSE"},...
    'Y0',TT{preidx,"NYSE"},'Display','off');    

Вывод невязок εtˆ из расчетной модели задайте необходимый перед выборкой.

resid = infer(EstMdl,TT{estidx,"NYSE"},...
    'Y0',TT{preidx,"NYSE"});

resid является a (T – Mdl.P) -by-1 вектор невязок.

Вычислите установленные значения ytˆ.

yhat = TT{estidx,"NYSE"} - resid;

Постройте график наблюдений и настроенных значений на том же графике.

plot(TT.Time(estidx),TT{estidx,"NYSE"},'r',TT.Time(estidx),yhat,'b--','LineWidth',2)

Figure contains an axes. The axes contains 2 objects of type line.

Подобранные значения внимательно отслеживают наблюдения.

Постройте график невязок от подобранных значений.

plot(yhat,resid,'.')
ylabel('Residuals')
xlabel('Fitted values')

Figure contains an axes. The axes contains an object of type line.

Остаточное отклонение выглядит большей для больших подобранных значений. Одним из средств для этого поведения является применение преобразования журнала к данным.

Входные параметры

свернуть все

Частично заданная модель ARIMA используется для указания ограниченных и оценочных параметров модели, заданных как arima объект модели, возвращенный arima или estimate. Свойства Mdl описать структуру модели и задать параметры.

estimate не определено (NaN-значен) параметры к данным y.

estimate рассматривает указанные параметры как ограничения равенства во время оценки.

Один путь данных отклика, к которому Mdl модель подходит, задается в виде числа вектора-столбца. Последнее наблюдение y - последнее наблюдение.

Типы данных: double

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'Y0',Y0,'X',X использует вектор Y0 в качестве примитивных откликов, необходимых для оценки, и включает линейный регрессионый компонент для данных экзогенного предиктора в X.
Опции оценки

свернуть все

Экзогенные данные предиктора для линейного регрессионого компонента, заданные как разделенная разделенными запятой парами, состоящая из 'X' и матрицу.

Столбцы X являются отдельными, синхронизированными временными рядами. Последняя строка содержит последние наблюдения.

Если вы не задаете предварительные данные отклика с помощью 'Y0' Аргумент пары "имя-значение", количество строк X должен быть по крайней мере numel(y) + Mdl.P. В противном случае количество строк X должна быть, по крайней мере, длиной y.

Если количество строк X превышает необходимое число, estimate использует только последние наблюдения.

estimate синхронизирует X и y так, что последние наблюдения (последние строки) происходят одновременно.

По умолчанию, estimate не оценивает коэффициенты регрессии, независимо от их наличия в Mdl.

Типы данных: double

Опции оптимизации, заданные как разделенная разделенными запятой парами, состоящая из 'Options' и optimoptions контроллер оптимизации. Для получения дополнительной информации об изменении значений по умолчанию см. optimoptions или fmincon в Optimization Toolbox™.

Например, чтобы изменить допуск ограничений на 1e-6, задать Options = optimoptions(@fmincon,'ConstraintTolerance',1e-6,'Algorithm','sqp'). Затем передайте Options в estimate использование 'Options',Options.

По умолчанию estimate использует те же опции по умолчанию, что и fmincon, кроме Algorithm является 'sqp' и ConstraintTolerance является 1e-7.

Параметр отображения Командного окна, заданная как разделенная разделенными запятой парами, состоящая из 'Display' и одно или несколько значений в этой таблице.

ЗначениеОтображаемая информация
'diagnostics'Диагностика оптимизации
'full'Максимальные оценки параметров правдоподобия, стандартные ошибки, t статистика, итерационная информация оптимизации и диагностика оптимизации
'iter'Итерационная информация оптимизации
'off'Ничего
'params'Максимальные оценки параметров правдоподобия, стандартные ошибки и t статистика

Пример: 'Display','off' хорошо подходит для выполнения симуляции, которая оценивает многие модели.

Пример: 'Display',{'params','diagnostics'} отображает все результаты оценки и диагностику оптимизации.

Типы данных: char | cell | string

Предварительный образец спецификаций

свернуть все

Предварительный пример данных отклика для инициализации модели, заданный как разделенная разделенными запятой парами, состоящая из 'Y0' и числовой вектор-столбец.

Длина Y0 должен быть по крайней мере Mdl.P. Если Y0 имеет дополнительные строки, estimate использует только последние Mdl.P Примитивные отклики. Последняя строка содержит последние ответы presample.

По умолчанию estimate обратные прогнозы (backcasts) для необходимого количества предварительных примеров откликов.

Для получения дополнительной информации о разбиении данных для оценки смотрите Разделы основы времени для оценки модели ARIMA.

Типы данных: double

Предварительный пример инноваций ε t для инициализации модели, заданный как разделенная запятой пара, состоящий из 'E0' и числовой вектор-столбец.

Длина E0 должен быть по крайней мере Mdl.Q. Если E0 имеет дополнительные строки, estimate использует только последние Mdl.Q предварительный образец инноваций. Последняя строка содержит последние нововведения presample.

Если Mdl.Variance является объектом модели условного отклонения, таким как garch модель, estimate может потребовать больше, чем Mdl.Q предварительный образец инноваций.

По умолчанию, estimate устанавливает все необходимые нововведения presample, чтобы 0Это их подлость.

Типы данных: double

Предварительная выборка условных отклонений σ2t для инициализации любой модели условного отклонения, заданная как разделенная разделенными запятой парами, состоящая из 'V0' и числовой положительный вектор-столбец.

Длина V0 должно быть по крайней мере количество наблюдений, необходимых для инициализации модели условного отклонения (см. estimate). Если V0 имеет дополнительные строки, estimate использует только последние наблюдения. Последняя строка содержит последнее наблюдение.

Если отклонение постоянно, estimate игнорирует V0.

По умолчанию, estimate устанавливает необходимые предварительные условные отклонения в среднее значение квадратов выводимых инноваций.

Типы данных: double

Спецификации начальных значений

свернуть все

Начальная оценка константы модели c, заданная как разделенная разделенными запятой парами, состоящая из 'Constant0' и числовой скаляр.

По умолчанию, estimate выводит начальные оценки с помощью стандартных методов временных рядов.

Типы данных: double

Начальные оценки несезональных полиномиальных коэффициентов AR ϕ(L), заданная как разделенная разделенными запятой парами, состоящая из 'AR0' и числовой вектор.

Длина AR0 должно равняться количеству лагов, сопоставленных с ненулевыми коэффициентами в несезонной AR- полинома. Элементы AR0 соответствуют элементам Mdl.AR.

По умолчанию, estimate выводит начальные оценки с помощью стандартных методов временных рядов.

Типы данных: double

Начальные оценки сезонных авторегрессионных полиномиальных коэффициентов Φ(L), заданная как разделенная разделенными запятой парами, состоящая из 'SAR0' и числовой вектор.

Длина SAR0 должно равняться количеству лагов, сопоставленных с ненулевыми коэффициентами в сезонном авторегрессивном полиноме SARLags. Элементы SAR0 соответствуют элементам Mdl.SAR.

По умолчанию, estimate выводит начальные оценки с помощью стандартных методов временных рядов.

Типы данных: double

Начальные оценки несезональных полиномиальных коэффициентов скользящего среднего значения θ(L), заданная как разделенная разделенными запятой парами, состоящая из 'MA0' и числовой вектор.

Длина MA0 должно равняться количеству лагов, сопоставленных с ненулевыми коэффициентами в несезонном полиноме скользящего среднего значения MALags. Элементы MA0 соответствуют элементам Mdl.MA.

По умолчанию, estimate выводит начальные оценки с помощью стандартных методов временных рядов.

Типы данных: double

Начальные оценки сезонных полиномиальных коэффициентов скользящего среднего значения Θ(L), заданная как разделенная разделенными запятой парами, состоящая из 'SMA0' и числовой вектор.

Длина SMA0 должно равняться количеству лагов, сопоставленных с ненулевыми коэффициентами в сезонном полиноме скользящего среднего значения SMALags. Элементы SMA0 соответствуют элементам Mdl.SMA.

По умолчанию, estimate выводит начальные оценки с помощью стандартных методов временных рядов.

Типы данных: double

Начальные оценки коэффициентов регрессии β, заданные как разделенная разделенными запятой парами, состоящая из 'Beta0' и числовой вектор.

Длина Beta0 должно равняться количеству столбцов X. Элементы Beta0 соответствуют переменным предиктора, представленным столбцами X.

По умолчанию, estimate выводит начальные оценки с помощью стандартных методов временных рядов.

Типы данных: double

Первоначальная оценка t - параметр степеней свободы распределения ν, определенный как разделенная запятой пара, состоящая из 'DoF0' и положительная скалярная величина. DoF0 должно превышать 2.

Типы данных: double

Начальные оценки отклонений инноваций, заданные как разделенная разделенными запятой парами, состоящая из 'Variance0' и положительная скалярная величина или камера вектор аргументов пары "имя-значение".

Mdl.Variance ЗначениеОписание'Variance0' Значение
Числовой скаляр или NaNПостоянное отклонениеПоложительная скалярная величина
garch, egarch, или gjr объект моделиМодель условного отклоненияВектор камеры аргументов пары "имя-значение" для определения начальных оценок, см. estimate функция объектов модели условного отклонения

По умолчанию, estimate выводит начальные оценки с помощью стандартных методов временных рядов.

Пример: Для модели с постоянным отклонением задайте 'Variance0',2 для определения начальной оценки отклонений в 2.

Пример: Для составной условной модели среднего и отклонения задайте 'Variance0',{'Constant0',2,'ARCH0',0.1} для определения начальной оценки 2 для константы модели условных отклонений и начальной оценки 0.1 для коэффициента задержки 1 в полиноме ARCH.

Типы данных: double | cell

Примечание

NaNs во входных данных указывает на отсутствующие значения. estimate использует listwise deletion, чтобы удалить все выбранные значения времени (строки) во входных данных, содержащих по крайней мере одно отсутствующее значение. В частности, estimate выполняет следующие шаги:

  1. Синхронизируйте или объедините предварительные наборы данных E0, V0, и Y0 и эффективные выборочные данные X и y чтобы создать отдельные наборы Presample и EffectiveSample.

  2. Удалите все строки из Presample и EffectiveSample содержит, по меньшей мере, один NaN.

Листовое удаление уменьшает размер выборки и может создать неправильные временные ряды.

Выходные аргументы

свернуть все

Предполагаемая модель ARIMA, возвращенная как arima объект модели.

EstMdl является копией Mdl который имеет NaN значения заменены оценками параметров. EstMdl полностью задан.

Оцененная ковариационная матрица максимальных оценок правдоподобия, известная оптимизатору, возвращена в виде положительной полуопределенной числовой матрицы.

Строки и столбцы содержат ковариации оценок параметров. Стандартная ошибка каждой оценки параметра является квадратным корнем основных диагональных элементов.

Строки и столбцы, соответствующие любым параметрам, удерживаемым в качестве ограничений равенства, являются нулевыми векторами.

Параметры, соответствующие строкам и столбцам EstParamCov появляются в следующем порядке:

  • Постоянный

  • Ненулевые AR коэффициенты при положительных лагах, от наименьшей до наибольшей задержки

  • Ненулевые SAR коэффициенты при положительных лагах, от наименьшей до наибольшей задержки

  • Ненулевые MA коэффициенты при положительных лагах, от наименьшей до наибольшей задержки

  • Ненулевые SMA коэффициенты при положительных лагах, от наименьшей до наибольшей задержки

  • Коэффициенты регрессии (когда вы задаете экзогенные данные X), упорядоченная по столбцам X

  • Параметры отклонения, скаляр для моделей постоянных отклонений и вектор для моделей условных отклонений (см. estimate для порядка параметров)

  • Степени свободы (только t -инновационное распределение)

Типы данных: double

Оптимизированное логарифмической правдоподобностью значение целевой функции, возвращаемое как числовой скаляр.

Типы данных: double

Сводные данные оптимизации, возвращенная как массив структур с полями, описанными в этой таблице.

ОбластьОписание
exitflagФлаг выхода оптимизации (см. fmincon в Optimization Toolbox)
optionsКонтроллер опций оптимизации (см. optimoptions и fmincon в Optimization Toolbox)
XВектор окончательных оценок параметров
X0Вектор начальных оценок параметров

Для примера можно отобразить вектор окончательных оценок путем ввода info.X в Командном окне.

Типы данных: struct

Совет

  • Для доступа к значениям результатов оценки, включая количество свободных параметров в модели, передайте EstMdl на summarize.

Алгоритмы

  • estimate выводит инновации и условные отклонения (при наличии) базового ряда откликов, а затем использует ограниченную максимальную правдоподобность, чтобы соответствовать модели Mdl к данным отклика y.

  • Поскольку можно задать предварительный образец входов данных Y0, E0, и V0 различной длины, estimate принимает, что все заданные наборы имеют следующие характеристики:

    • Окончательное наблюдение (строка) в каждом наборе происходит одновременно.

    • Первое наблюдение в выборке оценки немедленно следует последнему наблюдению в предварительной выборке относительно частоты дискретизации.

  • Если вы задаете 'Display' Аргумент пары "имя-значение" значение переопределяет Diagnostics и Display настройки 'Options' аргумент пары "имя-значение". В противном случае estimate отображает информацию об оптимизации с помощью 'Options' настройки.

  • estimate использует векторное произведение градиентов (OPG), чтобы выполнить ковариацию матрицы.

Ссылки

[1] Box, George E. P., Gwilym M. Jenkins, and Gregory C. Reinsel. Анализ временных рядов: прогнозирование и управление. 3-й эд. Englewood Cliffs, Нью-Джерси: Prentice Hall, 1994.

[2] Эндерс, Уолтер. Прикладные эконометрические временные ряды. Hoboken, NJ: John Wiley & Sons, Inc., 1995.

[3] Грин, Уильям. H. Эконометрический анализ. 6th ed. Upper Saddle River, NJ: Prentice Hall, 2008.

[4] Гамильтон, Джеймс Д. Анализ временных рядов. Princeton, NJ: Princeton University Press, 1994.

Введенный в R2012a