Сравнение моделей условных отклонений с использованием информационных критериев

В этом примере показано, как задать и подгонять модель GARCH, EGARCH и GJR к возвратам. Сравните модели с помощью AIC и BIC.

Шаг 1. Загрузите данные.

Загрузите данные валютного курса, включенные в тулбокс. Преобразуйте курс швейцарского франка в возвраты.

load Data_FXRates
y = DataTable.CHF;
r = price2ret(y);
T = length(r);

logL = zeros(1,3); % Preallocate
numParams = logL;  % Preallocate

figure
plot(r)
xlim([0,T])
title('Swiss Franc Exchange Rate Returns')

Figure contains an axes. The axes with title Swiss Franc Exchange Rate Returns contains an object of type line.

Серия возвратов, по-видимому, демонстрирует некоторую кластеризацию волатильности.

Шаг 2. Подбор модели GARCH (1,1

).

Задайте, а затем подгоните модель GARCH (1,1) к ряду возвратов. Верните значение целевой функции логарифмической правдоподобности .

Mdl1 = garch(1,1);
[EstMdl1,EstParamCov1,logL(1)] = estimate(Mdl1,r);
 
    GARCH(1,1) Conditional Variance Model (Gaussian Distribution):
 
                  Value       StandardError    TStatistic      PValue  
                __________    _____________    __________    __________

    Constant    1.6295e-06     4.3755e-07        3.7242      0.00019591
    GARCH{1}       0.91373      0.0068849        132.71               0
    ARCH{1}       0.058514      0.0050005        11.702      1.2482e-31
numParams(1) = sum(any(EstParamCov1)); % Number of fitted parameters

Шаг 3. Подбор модели EGARCH (1,1

).

Задайте, а затем подгоните модель EGARCH (1,1) к ряду возвратов. Верните значение целевой функции логарифмической правдоподобности .

Mdl2 = egarch(1,1);
[EstMdl2,EstParamCov2,logL(2)] = estimate(Mdl2,r);
 
    EGARCH(1,1) Conditional Variance Model (Gaussian Distribution):
 
                     Value      StandardError    TStatistic      PValue  
                   _________    _____________    __________    __________

    Constant        -0.29251       0.045942       -6.3669      1.9294e-10
    GARCH{1}         0.96976      0.0046786        207.27               0
    ARCH{1}          0.12292       0.012052        10.199      2.0113e-24
    Leverage{1}    -0.013229      0.0049498       -2.6726       0.0075267
numParams(2) = sum(any(EstParamCov2));

Шаг 4. Подбор модели GJR (1,1

).

Задайте, а затем подгоните модель GJR (1,1) к ряду возвратов. Верните значение целевой функции логарифмической правдоподобности .

Mdl3 = gjr(1,1);
[EstMdl3,EstParamCov3,logL(3)] = estimate(Mdl3,r);
 
    GJR(1,1) Conditional Variance Model (Gaussian Distribution):
 
                     Value       StandardError    TStatistic      PValue  
                   __________    _____________    __________    __________

    Constant       1.7103e-06     4.5113e-07        3.7912      0.00014993
    GARCH{1}          0.91135      0.0072292        126.06               0
    ARCH{1}          0.058905      0.0068695        8.5748      9.9219e-18
    Leverage{1}     0.0013398      0.0072836       0.18395         0.85406
numParams(3) = sum(any(EstParamCov3));

Термин рычага в модели GJR статистически не значим.

Шаг 5. Сравните модели с помощью AIC и BIC.

Вычислите значения AIC и BIC для моделей GARCH, EGARCH и GJR. Модель GARCH имеет три параметра; каждая из моделей EGARCH и GJR имеет четыре параметра.

[aic,bic] = aicbic(logL,numParams,T)
aic = 1×3
104 ×

   -3.3329   -3.3321   -3.3327

bic = 1×3
104 ×

   -3.3309   -3.3295   -3.3301

Модели GARCH (1,1) и EGARCH (1,1) не вложены, поэтому вы не можете сравнить их, проведя тест коэффициента вероятности. GARCH (1,1) вложен в модель GJR (1,1), однако, поэтому можно использовать тест коэффициента вероятности для сравнения этих моделей.

Используя AIC и BIC, модель GARCH (1,1) имеет несколько меньшие (более отрицательные) значения AIC и BIC. Таким образом, модель GARCH (1,1) является предпочтительной моделью согласно этим критериям.

См. также

Объекты

Функции

Похожие примеры

Подробнее о