Эти примеры показывают, как оценить, имеет ли серия кластеризацию волатильности с помощью Econometric Modeler приложения. Методы включают проверку коррелограмм квадратов невязок и тестирование на значительные лаги ARCH. Набор данных, хранящийся в Data_EquityIdx.mat
, содержит серию ежедневных цен закрытия NASDAQ с 1990 по 2001 год.
Этот пример показывает, как визуально определить, имеет ли ряд значительные эффекты ARCH, путем построения графика автокорреляционной функции (ACF) и частичной автокорреляционной функции (PACF) ряда квадратов невязок.
В командной строке загрузите Data_EquityIdx.mat
набор данных.
load Data_EquityIdx
Набор данных содержит таблицу цен на закрытие NASDAQ и NYSE, среди других переменных. Для получения дополнительной информации о наборе данных введите Description
в командной строке.
Преобразуйте таблицу DataTable
к расписанию (для получения дополнительной информации см. раздел «Подготовка данных временных рядов для приложения Econometric Modeler»).
dates = datetime(dates,'ConvertFrom','datenum',... 'Format','ddMMMyyyy'); % Convert dates to datetimes DataTable.Properties.RowNames = {}; % Clear row names DataTable = table2timetable(DataTable,'RowTimes',dates); % Convert table to timetable
В командной строке откройте приложение Econometric Modeler.
econometricModeler
Также откройте приложение из галереи Apps (см. Econometric Modeler).
Импортируйте DataTable
в приложение:
На вкладке Econometric Modeler, в разделе Import, нажмите.
В Import Data окне в столбце Import? установите флажок для DataTable
переменная.
Нажмите Import.
Переменные появляются на панели Time Series, а график временных рядов всех рядов появляется в Time Series Plot(NASDAQ) окне рисунка.
Преобразуйте ежедневное закрытие индексной серии NASDAQ в процентную возвратную серию, взяв журнал серии, затем взяв первое различие регистрируемой серии:
На панели Time Series выберите NASDAQ
.
На вкладке Econometric Modeler, в разделе Transforms, нажмите Log.
С NASDAQLog
выделенный, в Transforms разделе, нажмите Difference.
На панели Time Series переименуйте NASDAQLogDiff
переменная, дважды кликнув ее, чтобы выбрать ее имя и ввести NASDAQReturns
.
График временных рядов возвратов NASDAQ появляется в Time Series Plot(NASDAQReturns) окне рисунка.
Возвраты, по-видимому, колеблются вокруг постоянного уровня, но демонстрирует волатильность кластеризации. Большие изменения в возвратах, как правило, кластеризуются вместе, а небольшие изменения, как правило, кластеризуются вместе. То есть серия проявляет условную гетероскедастичность.
Вычисление квадратов невязок:
Экспорт NASDAQReturns
в MATLAB® Рабочая область:
На панели Time Series щелкните правой кнопкой мыши NASDAQReturns
.
В контекстном меню выберите Export.
NASDAQReturns
появляется в Рабочем пространстве MATLAB.
В командной строке:
Для числовой устойчивости масштабируйте возвраты в 100 раз.
Создайте остаточный ряд путем удаления среднего значения из масштабируемого ряда возвратов. Поскольку вы взяли первое различие в ценах NASDAQ, чтобы создать возвраты, первый элемент возвратов отсутствует. Поэтому, чтобы оценить среднее значение выборки серии, вызовите mean(NASDAQReturns,'omitnan')
.
Квадрат невязок.
Добавьте квадратные невязки как новую переменную к DataTable
timetable.
NASDAQReturns = 100*NASDAQReturns;
NASDAQResiduals = NASDAQReturns - mean(NASDAQReturns,'omitnan');
NASDAQResiduals2 = NASDAQResiduals.^2;
DataTable.NASDAQResiduals2 = NASDAQResiduals2;
В Econometric Modeler, импорт DataTable
:
На вкладке Econometric Modeler, в разделе Import, нажмите.
В диалоговом окне Econometric Modeler нажмите OK, чтобы удалить все переменные и документы в приложении.
В Import Data окне в столбце Import? установите флажок для DataTable
.
Нажмите Import.
Постройте график ACF и PACF:
На панели Time Series выберите NASDAQResiduals2
временные ряды.
Перейдите на вкладку Plots и нажмите ACF.
Перейдите на вкладку Plots и нажмите PACF.
Закройте Time Series Plot(NASDAQ) окно рисунка. Затем расположите ACF(NASDAQResiduals2) окно рисунка над PACF(NASDAQResiduals2) окном рисунка.
Выборки ACF и PACF показывают значительную автокорреляцию в квадрате невязок. Этот результат указывает, что кластеризация волатильности присутствует.
Этот пример показывает, как протестировать квадратные невязки на значительные эффекты ARCH с помощью Q-теста Ljung-Box.
В командной строке:
Загрузите Data_EquityIdx.mat
набор данных.
Преобразуйте цены NASDAQ в возвраты. Чтобы сохранить правильную временную основу, подготовьте результат возвратов с помощью NaN
значение.
Масштабирование возвращаемых значений NASDAQ.
Вычислите невязки путем удаления среднего значения из масштабированных возвратов.
Квадрат невязок.
Добавьте вектор квадратов невязок как переменную к DataTable
.
Преобразование DataTable
от таблицы к расписанию.
Для получения дополнительной информации о шагах см. «Просмотр коррелограмм квадратов невязок» для эффектов ARCH.
load Data_EquityIdx NASDAQReturns = 100*price2ret(DataTable.NASDAQ); NASDAQReturns = [NaN; NASDAQReturns]; NASDAQResiduals2 = (NASDAQReturns - mean(NASDAQReturns,'omitnan')).^2; DataTable.NASDAQResiduals2 = NASDAQResiduals2; dates = datetime(dates,'ConvertFrom','datenum'); DataTable.Properties.RowNames = {}; DataTable = table2timetable(DataTable,'RowTimes',dates);
В командной строке откройте приложение Econometric Modeler.
econometricModeler
Также откройте приложение из галереи Apps (см. Econometric Modeler).
Импортируйте DataTable
в приложение:
На вкладке Econometric Modeler, в разделе Import, нажмите.
В Import Data окне в столбце Import? установите флажок для DataTable
переменная.
Нажмите Import.
Переменные появляются на панели Time Series, а график временных рядов всех рядов появляется в Time Series Plot(NASDAQ) окне рисунка.
Протестируйте нулевую гипотезу о том, что первые m = 5 автокорреляционных лагов квадратов невязок совместно равны нулю при помощи Q-теста Ljung-Box. Затем проверьте нулевую гипотезу, что первые m = 10 автокорреляционных лагов квадратов невязок совместно равны нулю.
На панели Time Series выберите NASDAQResiduals2
временные ряды.
На вкладке Econometric Modeler, в разделе Tests, нажмите New Test > Ljung-Box Q-Test.
На вкладке LBQ, в разделе Parameters, установите и Number of Lags, и DOF 5
. Чтобы сохранить уровень значимости 0,05 для двух тестов, установите Significance Level равным 0,025.
В Tests разделе нажмите Run Test.
Повторите шаги 3 и 4, но установите и Number of Lags, и DOF равными 10
вместо этого.
Результаты тестирования отображаются в таблице Results документа LBQ(NASDAQResiduals2).
Нулевая гипотеза отклонена для двух тестов. Значение p для каждого теста равняется 0. Результаты показывают, что не каждая автокорреляция до лага 5 (или 10) равна нулю, что указывает на кластеризацию волатильности в квадратах невязок.
В этом примере показано, как протестировать невязки на значительные эффекты ARCH с помощью теста ARCH Engle.
В командной строке:
Загрузите Data_EquityIdx.mat
набор данных.
Преобразуйте цены NASDAQ в возвраты. Чтобы сохранить правильную временную основу, подготовьте результат возвратов с помощью NaN
значение.
Масштабирование возвращаемых значений NASDAQ.
Вычислите невязки путем удаления среднего значения из масштабированных возвратов.
Добавьте вектор невязок как переменную к DataTable
.
Преобразование DataTable
от таблицы к расписанию.
Для получения дополнительной информации о шагах см. «Просмотр коррелограмм квадратов невязок» для эффектов ARCH.
load Data_EquityIdx NASDAQReturns = 100*price2ret(DataTable.NASDAQ); NASDAQReturns = [NaN; NASDAQReturns]; NASDAQResiduals = NASDAQReturns - mean(NASDAQReturns,'omitnan'); DataTable.NASDAQResiduals = NASDAQResiduals; dates = datetime(dates,'ConvertFrom','datenum'); DataTable.Properties.RowNames = {}; DataTable = table2timetable(DataTable,'RowTimes',dates);
В командной строке откройте приложение Econometric Modeler.
econometricModeler
Также откройте приложение из галереи Apps (см. Econometric Modeler).
Импортируйте DataTable
в приложение:
На вкладке Econometric Modeler, в разделе Import, нажмите.
В Import Data окне в столбце Import? установите флажок для DataTable
переменная.
Нажмите Import.
Переменные появляются на панели Time Series, а график временных рядов всех рядов появляется в Time Series Plot(NASDAQ) окне рисунка.
Протестируйте нулевую гипотезу о том, что серия невязок NASDAQ не показывает эффектов ARCH при помощи теста ARCH Engle. Задайте, что ряд невязок является моделью ARCH (2).
На панели Time Series выберите NASDAQResiduals
временные ряды.
На вкладке Econometric Modeler, в разделе Tests, нажмите New Test > Engle's ARCH Test.
На вкладке ARCH, в разделе Parameters, установите Number of Lags равным 2
.
В Tests разделе нажмите Run Test.
Результаты тестирования отображаются в таблице Results документа ARCH(NASDAQResiduals).
Нулевая гипотеза отвергается в пользу альтернативы ARCH (2). Результат теста указывает на значительную кластеризацию волатильности в невязках.