Учебное пособие: Анализ временных рядов. Анализ временных рядов в STATISTICA

Преобразование данных

Задание выходной переменной выделения компонента из переменной даты/времени

Рисунок 8-29

Выделение части переменной даты/времени, шаг 2

E Введите имя в поле Выходная переменная. Оно не может быть именем существующей переменной.

E Если Вы выделяете компонент даты или времени из переменной даты/времени, то в списке Формат выходной переменной необходимо выбрать формат. В тех случаях, когда выходной формат не требуется, список Формат выходной переменной будет недоступен.

Дополнительно Вы можете:

 Задать описательную метку для новой переменной.

Преобразования временных рядов

Есть несколько способов преобразования данных, которые полезны при анализе временных рядов:

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

Создание новых переменных как функций существующих переменных временных рядов.

Замена системных или пользовательских пропущенных значений оценками (имеются несколько методов).

Временной ряд представляет собой измерения переменной (или совокупности переменных) в течение некоторого периода времени. Преобразования временных рядов предполагают такую структуру файла данных, в которой каждая строка (наблюдение)

представляет набор характеристик в определенный момент времени, а интервалы времени между наблюдениями равны

Задать даты

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

Рисунок 8-30

Диалоговое окно Задать даты

Наблюдения - это. Здесь задаются единицы времени, которые будут использоваться для создания дат.

При выборе пункта Без даты все ранее введенные переменные, содержащие даты, удаляются. Уничтожаются переменные со следующими именами:year_ ,quarter_ ,month_ ,week_ ,day_ ,hour_ ,minute_ ,second_ иdate_ .

 Выбор пункта Настраиваемая означает, что существуют специальные переменные, содержащие даты, созданные с помощью командного синтаксиса (например, четырехдневная рабочая неделя). Этот пункт просто отражает текущее состояние активного набора данных. Выбор его из списка не даст никакого результата.

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

Периодичность более высокого уровня. Указывает на циклы, например, число месяцев в году или число дней в неделе. Выведенное значение указывает максимальное число, которое можно ввести. Для часов, минут и секунд максимум - это отображаемое значение минус один.

Для каждой компоненты, которая используется для задания дат, создается новая числовая переменная. Имена новых переменных оканчиваются знаком подчеркивания. На основе всех компонент создается описательная текстовая переменная date_ . Например, если Вы

Преобразование данных

выберете Недели, дни, часы , то создается четыре новых переменных:week_ ,day_ ,hour_ иdate_ .

Если переменные дат уже существуют, то при задании новых дат, новые переменные дат заменят существующие переменные дат, имеющие такие же имена.

Как задать даты для Данных временного ряда

E Выберите в меню:

Данные > Задать даты...

E Выберите временной интервал из списка Наблюдения - это.

E Введите значения даты в поля Первое наблюдение. Введенные значения задают дату, присваиваемую первому наблюдению.

Переменные, созданные процедурой Задать даты, и переменные, имеющие тип даты

Переменные, созданные процедурой Задать даты, не следует путать с переменными, имеющими формат типа Дата, который определяется при задании свойств переменных. Переменные, созданные процедурой Задать даты, служат для определения периодичностей временного ряда. Переменные, имеющие формат Дата, представляют даты и/или времена, отображаемые в различных форматах. Значения переменных, созданных процедурой Задать даты, - это целые положительные числа, каждое из которых представляет количество дней, недель, часов или других единиц времени, прошедших с заданного пользователем начального момента времени. Значения же большей части переменных в формате Дата представляют собой количества секунд, прошедших с 14 октября 1582 года.

Создать временной ряд

Диалоговое окно Создать временной ряд используется для создания новых переменных, которые являются функциями существующих переменных, образующих временной ряд . Эти новые переменные полезны во многих процедурах анализа временных рядов.

По умолчанию имя новой переменной создается следующим образом: берутся шесть символов имени исходной переменной, добавляется подчеркивание (‘_’), затем добавляется порядковый номер. Например, для переменной price новая переменная будетprice_1 . Новые переменные сохраняют все метки значений исходных переменных.

Функции, предназначенные для создания временных рядов, включают разности, скользящие средние, скользящие медианы, функции задержки (лаги) и опережения.

Рисунок 8-31

Диалоговое окно Создать временной ряд

Как создать новую переменную, представляющую временной ряд

E Выберите в меню:

Преобразовать > Создать временной ряд...

E Выберите функцию, которую Вы хотите использовать для преобразования существующих переменных в новые.

E Выберите переменные, из которых Вы хотите создать новые временные ряды. Допускается использование только числовых переменных.

Дополнительно Вы можете:

Ввести имена новых переменных, если Вам не подходят имена, присваиваемые автоматически.

Изменить функцию для выбранной переменной.

Функции преобразования временных рядов

Разность. Несезонная разность между последовательными значениями ряда. Порядок здесь - это число предшествующих значений, используемых для вычисления разности. Поскольку для каждого следующего порядка одно наблюдение теряется, в начале ряда появляются системные пропущенные значения. Например, если порядок равен 2, то для новой переменной первые 2 наблюдения будут системными пропущенными значениями.

Сезонная разность. Разность между значениями ряда, отстоящими друг от друга на постоянный интервал. Величина этого интервала основана на текущей заданной периодичности. Чтобы вычислить сезонные разности, Вы должны сначала определить

Преобразование данных

переменные, содержащие даты и включающие периодические компоненты (например, месяцы). Порядок здесь - это число сезонных периодов, используемых для вычисления разностей. Число наблюдений с системным пропущенным значением в начале ряда равно периоду, умноженному на порядок дифференцирования. Например, если текущий период равен 12, а порядок равен 2, то для новой переменной первые 24 наблюдения будут системными пропущенными значениями.

Центрированное скользящее среднее. Среднее на промежутке значений ряда,

окружающем и включающем текущее значение. Протяженность - это число значений ряда, используемых для вычисления среднего. Если это число четное, то скользящее среднее вычисляется путем усреднения каждой пары нецентрированных средних. Количество наблюдений с системным пропущенным значением в начале и в конце получаемого ряда для протяженности n равноn /2 для четного n и (n –1)/2 - для нечетного. Например, если протяженность равна 5, число наблюдений с системным пропущенным значением в начале и в конце ряда равно 2.

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

Скользящая медиана. Медиана на интервале значений ряда, окружающих и включающих текущее значение. Протяженность - это число значений ряда, используемых для вычисления медианы. Если данное число четное, то медиана вычисляется путем усреднения каждой пары не центрированных медиан. Количество наблюдений с системным пропущенным значением в начале и в конце получаемого ряда для протяженностиn равноn /2 для четного n и (n –1)/2 - для нечетного. Например, если протяженность равна 5, число наблюдений с системным пропущенным значением в начале и в конце ряда равно 2.

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

Лаг. Значение предшествующего наблюдения, отстоящего на заданное число отсчетов от текущего момента. Порядок - число наблюдений между текущим наблюдением и наблюдением, из которого получается значение. Число наблюдений с системным пропущенным значением в начале получаемого ряда равно значению порядка.

Опережение. Значение последующего наблюдения, в соответствии с заданным порядком опережения. Порядок - число наблюдений между текущим наблюдением и наблюдением, из которого получается значение. Число наблюдений с системным пропущенным значением в конце получаемого ряда равно значению порядка.

Сглаживание. Новые значения ряда, основанные на комбинированном сглаживании данных. Процесс сглаживания начинается со скользящей медианы ширины 4, которая центрирована скользящей медианой ширины 2. Эти значения затем повторно сглаживаются с применением скользящей медианы ширины 5, скользящей медианы ширины 3, и ханнинга (скользящих взвешенных средних). Остатки вычисляются путем вычитания сглаженного рядаизисходного. Весьэтотпроцессзатемповторяетсянавычисленныхостатках. Наконец, сглаженные остатки вычисляются путем вычитания сглаженных значений, полученных в первый раз в начале процесса. Иногда этот процесс называютсглаживанием T4253H .

Виды и методы анализа временных рядов

Временной ряд представляет собой совокупность последовательных измерений переменной, проведенных через одинаковые интервалы времени . Анализ временных рядов позволяет решать следующие задачи:

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

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

Но ряды часто имеют нестационарный характер. Нестационарность можно устранить следующим образом:

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

Для стандартизации временных рядов в целях единообразия методов

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

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

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

Чтобы результат прогноза можно было сопоставить с исходными данными, над ним следует произвести преобразования, обратные выполненным.

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

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

Анализ и прогнозирование тренда

Анализ тренда предназначен для исследования изменений среднего значения временного ряда с построением математической модели тренда и с прогнозированием на этой основе будущих значений ряда. Анализ тренда выполняют путем построения моделей простой линейной или нелинейной регрессии.

Используемые исходные данные представляют собой две переменные, одна из которых - значения временного параметра, а другая - собственно значения временного ряда. В процессе анализа можно:

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

В качестве моделей трендов используют различные функции и сочетания, а так же степенные ряды, иногда называемые полиномиальными моделями. Наибольшую точность обеспечивают модели в виде рядов Фурье, однако не многие статистические пакеты позволяют использовать такие модели.

Проиллюстрируем получение модели тренда ряда. Используем ряд данных о валовом национальном продукте США на период 1929-1978 гг. в текущих ценах. Построим полиномиальную регрессионную модель. Точность модели повышалась, пока степень полинома не достигла пятой:

У = 145,6 - 35,67* + 4,59* 2 - 0,189* 3 + 0,00353х 4 + 0,000024* 5 ,

(14,9) (5,73) (0,68) (0,033) (0,00072) (0,0000056)

где У - ВНП, млрд дол.;

* - годы, отсчитываемые от первого 1929 г.;

под коэффициентами указаны их стандартные ошибки.

Стандартные ошибки коэффициентов модели малы, не достигают величин, равных половине значений коэффициентов модели. Это свидетельствует о хорошем качестве модели.

Коэффициент детерминации модели, равный квадрату приведенного коэффициента множественной корреляции составил 99%. Это означает, что модель объясняет данные на 99%. Стандартная ошибка модели оказалась равна 14,7 млрд, а уровень значимости нулевой гипотезы - гипотезы об отсутствии связи - менее 0,1%.

С помощью полученной модели можно дать прогноз, который в сопоставлении с фактическими данными приведен в табл. ПЗ. 1.

Прогноз и фактический размер ВНП США, млрд дол.

Таблица ПЗ.1

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

Корреляционный анализ

Корреляционный анализ необходим для выявления корреляций и их лагов - задержек их периодичности. Связь в одном процессе получила название автокорреляции, а связь между двумя процессами, характеризуемыми рядами - кросскорреляции. Высокий уровень корреляции может служить индикатором причинно-следственных связей, взаимодействий внутри одного процесса, между двумя процессами, а величина лага указывает временную задержку в передаче взаимодействия.

Обычно в процессе расчета значений корреляционной функции на к -м шаге вычисляется корреляция между переменными по длине отрезка / = 1,..., (п - к) первого ряда X и отрезка / = к ,..., п второго ряда К Длина отрезков, таким образом, меняется.

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

Экономистов в корреляционном анализе интересует исследование лагов в передаче воздействия от одного процесса к другому или влияния начального возмущения на последующее развитие того же самого процесса. Для решения таких задач была предложена модификация известного метода, названная интервальной корреляцией ".

Кулаичев А.П. Методы и средства анализа данных в среде Vindows. - М.: Информатика и компьютеры, 2003.

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

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

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

Размерность временного шага анализируемого ряда для согласования

результатов с реальной временной шкалой;

Длину сдвигаемого фрагмента первого ряда, в виде числа включаемых в

него элементов ряда;

Сдвиг этого фрагмента относительно начала ряда.

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

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

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

Результаты анализа должны включать оценки критического значения коэффициента корреляции г 0 для гипотезы «г 0 = 0» на определенном уровне значимости. Это позволяет не принимать во внимание статистически незначимые коэффициенты корреляции. Необходимо получить значения корреляционной функции с указанием лагов. Весьма полезны и наглядны графики авто- или кросскорреляционных функций.

Проиллюстрируем применение кросскорреляционного анализа на примере. Оценим взаимосвязи темпов прироста ВНП США и СССР за 60 лет с 1930 по 1979 гг. Для получения характеристик долгосрочных тенденций сдвигаемый фрагмент ряда выбран длиной 25 лет. В результате были получены коэффициенты корреляции при разных лагах.

Единственный лаг, при котором корреляция оказывается значимой - 28 лет. Коэффициент корреляции при этом лаге составляет 0,67, тогда как пороговое, минимальное значение - 0,36. Оказывается, что цикличность долгосрочного развития экономики СССР с лагом величиной 28 лет была тесно связана с цикличностью долгосрочного развития экономики США.

Спектральный анализ

Общепринятый способ анализа структуры стационарных временных рядов - это использование дискретного преобразования Фурье для оценки спектральной плотности или спектра ряда. Этот метод можно применять:

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

Точность оценок спектрального анализа можно повысить за счет применения специальных методов - использования сглаживающих окон и методов усреднения.

Для анализа необходимо выбрать одну или две переменные, при этом должны быть заданы следующие параметры:

  • размерность временного шага анализируемого ряда, необходимая для согласования результатов с реальной временной и частотной шкалами;
  • длина к анализируемого отрезка временного ряда, в виде числа включаемых в него данных;
  • сдвиг очередного отрезка ряда к 0 относительно предыдущего;
  • тип временного окна сглаживания для подавления в спектре так называемого эффекта вытекания мощности ;
  • тип усреднения частотных характеристик, вычисленных на последовательных отрезках временного ряда.

Результаты анализа включают спектрограммы - значения характеристик амплитудно-частотной спектра и значения фазочастотных характеристик. В случае кросс-спектрального анализа результаты - это также значения передаточной функции и функции когерентности спектра. Результаты анализа могут включать и данные периодограмм.

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

Проиллюстрируем применение спектрально анализа на примере. Проанализируем волны экономической конъюнктуры в Европе в период начала индустриального развития. Для анализа используем не сглаженный временной ряд индексов цен на пшеницу, усредненных Бевериджем по данным 40 рынков Европы за 370 лет с 1500 по 1869 г. Получим спектры

ряда и отдельных его отрезков продолжительностью 100 лет через каждые 25 лет.

Спектральный анализ позволяет оценить мощность каждой гармоники спектра. Наиболее мощными оказываются волны с 50-летним периодом, которые, как известно, были открыты Н. Кондратьевым 1 и получили его имя. Анализ позволяет установить, что сформировались они не в конце XVII - начале XIX в., как полагают многие экономисты. Они сформировались с 1725 по 1775 г.

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

Модели ARIMA представляют собой комбинации двух моделей: авторегрессии {AR) и скользящего среднего (moving average - МА).

Модели скользящего среднего (МА) представляют стационарный процесс в виде линейной комбинации последовательных значений так называемого «белого шума». Такие модели оказываются полезными как в качестве самостоятельных описаний стационарных процессов, так и в качестве дополнения к моделям авторегрессии для более детального описания шумовой составляющей.

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

Предварительное оценивание - первый этап анализа с использованием модели ARIMA. Процесс предварительного оценивания прекращается по принятию гипотезы об адекватности модели временному ряду или по исчерпанию допустимого числа параметров. В итоге результаты анализа включают:

  • значения параметров авторегрессионой модели и модели скользящего среднего;
  • для каждого шага прогнозирования указываются - среднее значение прогноза, стандартная ошибка прогноза, доверительный интервал прогноза для определенного уровня значимости;
  • статистику оценки уровня значимости гипотезы не коррелированное™ остатков;
  • графики временного ряда с указанием стандартной ошибки прогноза.
  • Значительная часть материалов раздела ПЗ основана на положениях книг: Басовский Л.Е. Прогнозирование и планирование в условиях рынка. - М.: ИНФРА-М, 2008. Гилмор Р. Прикладная теория катастроф: В 2 кн. Кн. 1/ Пер. с англ. М.: Мир, 1984.
  • Жан Батист Жозеф Фурье (Jean Baptiste Joseph Fourier ; 1768-1830) - французский математик и физик.
  • Николай Дмитриевич Кондратьев (1892-1938) - русский и советский экономист.

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

Преобразования и активная рабочая область. Файл Stocks.sta содержит цены закрытия двух акций за период в 200 дней. Каждая торговая неделя содержит точно пять рабочих дней. Цена закрытия для выходных (когда торгов нет) оценивается. В этом примере, имеем два временных ряда, к которым будем применять несколько операторов сглаживания. Кроме того, будет построено несколько полезных графиков и проведен автокорреляционный анализ биржевых цен. Фрагменты рядов показаны ниже.

Заметим, что даты в файле имеются в двух местах: в переменной Дата (переменная 3) и в именах наблюдений.

Выбор анализа. Чтобы начать анализ, вначале откройте модуль Временные ряды и прогнозирование, затем откройте файл Stocks.sta. Далее нажмите кнопку Переменные и выберите переменные Stock1 и Stock2. Открытое диалоговое окно модуля Временные ряды показано ниже.

Все переменные и их преобразования записаны в активную рабочую область.

Выделенная переменная. Все последующие анализы производятся с выделенной переменной. Например, когда вы выполняете преобразования, то именно выделенная переменная преобразуется, и новая (преобразованная) переменная добавляется в активную рабочую область. Для того чтобы выделить переменную, просто щелкните на ней мышью. В этом примере, выделите переменную Stock1.

Соглашения относительно имен. Когда новая (например, трансформированная) переменная добавляется в активную рабочую область, она получает (1) то же самое короткое имя, что и исходная переменная (которая преобразовывалась), (2) новое длинное имя, которое содержит все старые длинные имена и краткое описание выполненного преобразования.

Редактирование имен переменных. Дважды щелкните на колонку, помеченную Переменная или Длинное имя переменной (ряда), чтобы редактировать короткие и длинные имена в активной рабочей области.

Число копий на переменную (ряд). Все диалоговые окна имеют поля ввода для выделенной переменной (ряда), также имеется поле в которое можно ввести Число копий на переменную (ряд). Число таких копий, помещаемых в активную рабочую область, контролируется с помощью этого параметра. Например, если параметр равен 3 (по умолчанию), и вы выполнили четвертое преобразование исходной переменной, то ряды данных, преобразованные в первый раз, будут удалены из активной рабочей области и заменены полученными новыми рядами (четвертыми преобразованиями). Можно иметь до 99 копий исходного одномерного ряда. В этом примере оставьте значение по умолчанию 3.

Блокированные переменные (ряды). Первый столбец имеет заголовок Блок. Когда вы дважды щелкните на этой колонке, преобразованная переменная будет заблокирована.

Удаление переменных (рядов) из рабочей области. Для удаления преобразованных переменных из активной рабочей области используйте кнопку Удалить переменную. Исходные анализируемые переменные не могут быть удалены.

Сохранение переменных (рядов) в рабочей области. Для сохранения переменных (рядов) используйте кнопку Сохранить переменные.

Пропущенные данные. Практически все виды анализа временных рядов требуют, чтобы в данных не было "дыр", т.е. пропусков. Если пропущенные данные имеются в начале или в конце ряда, они просто игнорируются. Если пропущенные данные находятся внутри ряда, они должны быть заменены. При этом возможно несколько способов замены пропущенных данных:

Общее среднее. В этом методе все пропущенные данные будут заменены средним, вычисленным по всему ряду. Очень часто, когда, ряд нестационарный или имеются большие систематические погрешности, этот метод неприемлем. С другой стороны, общее среднее - часто наилучшее a priori (несмещенное) приближение пропущенных данных.

Интерполяция по ближайшим точкам. В этом методе пропущенные данные интерполируются по ближайшим не пропущенным значениям ряда. Графически, этот метод сводится к замене пропущенного наблюдения путем проведения прямой линии от предыдущего (перед пропущенным) до следующего (после пропущенного) наблюдения.

Среднее N ближайших значений. В этом методе пропущенные данные заменяются средним, вычисленным по N ближайшим значениям с двух сторон от пропуска ("дыры") в данных.

Медиана N ближайших значений. Метод аналогичен, описанному выше, за исключением того, что вместо среднего берется медиана не пропущенных ближайших значений.

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

Просмотр временных рядов. Теперь продолжим анализ и просмотр цен закрытия. Щелкните OK (Преобразования), чтобы открыть диалоговое окно Преобразования переменных.

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

Заметим, что имена наблюдений могут также содержать информацию отличную от дат. Например, значительные дискретные события, воздействующие на ряд (например, новости, воздействующие на цены) могут быть также записаны в имена наблюдений и использованы в метках на графике. В этом примере, для меток по горизонтальной оси графиков, воспользуемся переменной Date. Щелкните по полю Датами и выберите переменную из появившегося диалогового окна. В этом примере каждая торговая неделя содержит пять дней (Понедельник - Пятница). Выделите флажок Задать масштаб оси X вручную и введите минимальное значение (Мин=) 1(начало с первого дня) и величину шага (Шаг=) 5. Затем щелкните кнопку Просмотр выдел. переменной, чтобы построить следующую таблицу результатов.

Вы можете построить график ряда с помощью кнопки График, расположенной рядом с кнопкой Просмотр выдел. переменной.

Для того чтобы построить график обеих акций одновременно, нажмите кнопку Просмотр нескольких переменных.

График двух рядов в разных масштабах. Как вы видите, цены закрытия акции Stock2 в общем, ниже акций Stock1. Вы можете выбрать независимо масштаб для двух вертикальных осей, чтобы получить лучшее разрешение для каждого ряда. Используйте опцию График 2-х списков переменных в разных масштабах и выберите для Stock1 левую ось Y, a для Stock2 правую ось Y.

Преобразования временных рядов. Выполним несколько преобразований. Нажмите OK (Преобразовать выделенную переменную) в окне Преобразования переменных. В этом диалоговом окне показаны все обычные преобразования временных рядов. Некоторые из этих преобразований требуют выбора второй переменной, например, для Остатков временного ряда. В этом примере выберите простое (невзвешенное) 5-ти точечное скользящее среднее для ряда Stock1. Выберите опцию N точ. скольз. средним, задайте 5 в поле N=.

Затем нажмите OK и выполните преобразование скользящим средним.

Как вы видите на графике, сглаженный ряд имеет меньше "зубцов", общий тренд виден более отчетливо.

Затем вернитесь в диалоговое окно Преобразования переменных.

Измененная активная рабочая область. Как описано выше, преобразованный (сглаженный) ряд добавился в активную рабочую область.

Следуя соглашению о присвоении имен, преобразованный ряд имеет то же самое короткое имя (Stock1) и будет иметь то же самое длинное имя, к которому добавлено описание выполненного преобразования (5 тч.ск.средн.).

Дальнейшая обработка преобразованного ряда. Преобразованные ряды в рабочей области имеют тот же самый "статус", что и ряды, выбранные из файла. Например, они могут быть отображены на графике или использованы как исходные переменные для дальнейшего анализа. Сравним сглаженный ряд с исходным. Нажмите кнопку Просмотр нескольких переменных.

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

Несколько последовательных преобразований. Вернитесь в диалоговое окно Преобразования переменных. Теперь продолжим преобразовывать ряд и отмечать, как соответствующие ряды будут добавляться в активную рабочую область. Выделите преобразованный ряд (внизу списка), щелкнув по нему мышью. Теперь выключите опцию автоматического построения графиков, т.е. отмените опцию График после каждого преобразования. Нажмите OK, чтобы открыть список доступных преобразований снова. Выберите затем Простое экспоненциальное сглаживание с параметром альфа = .20, предложенным по умолчанию и нажмите еще раз OK. Затем вновь нажмите OK и выберите 4253H фильтр. Это мощный метод сглаживания/фильтрации, который совмещает в себе несколько последовательных преобразований скользящим средним и скользящей медианой.

Теперь имеется 3 преобразованных ряда в активной рабочей области. Предположим, что вы не изменили параметр Число копий на переменную, который, по умолчанию, равен 3. Активная рабочая область сейчас "полна". Следующее преобразование любой переменной, связанной с Stock1, заменит "самое старое" ее преобразование. Это однако не относится к переменной Stock2. Для нее еще есть резервное пространство. Примените 4253H фильтр к Stock2. После преобразования активная рабочая область выглядит следующим образом.

Как вы видите, все преобразования переменной Stock1 находятся еще на месте. Выделите исходную переменную Stock1 снова и примените к ней, например, преобразование 5- точ. скольз. медианой. Теперь самое первое преобразование переменной Stock1 (5-точечное скользящее среднее) будет заменено выполненным преобразованием (5-ти точечной скользящей медианой) ряда Stock1.

Число мест такой "карусели" определяет параметр Число копий на переменную (ряд). Как только все места заняты, следующее преобразование заменяет первое преобразование, и "карусель" завертится снова.

Блокировка. Положим, вы захотели сохранить определенное преобразование в активной рабочей области; тогда вам нужно не допустить его удаления другим преобразованием.

Это можно достичь блокировкой соответствующего преобразования. Дважды щелкните мышью в столбце Блок, буква L появится в строке соответствующего преобразования. Теперь этот ряд заблокирован; т.е. он не может быть удален из рабочей области.

Например, следующее самое "старое" преобразование Stock1, которое будет заменено - преобразование Экспоненциальное сглаживание. Заблокируйте этот ряд, снова примените сглаживание скользящим средним. Как вы видите, заблокированное преобразование не заменилось новым преобразованием.

Сохранение рядов в активной рабочей области. Теперь сохраним преобразования в активной рабочей области. Пусть вы хотите сохранить только скользящее среднее, экспоненциальное сглаживание и 4253H преобразование ряда Stock1 для дальнейшего анализа. Прежде всего, удалите ненужные ряды из активной рабочей области, выделяя их и нажимая кнопку Удалить.

Затем, сохраните переменные в активной рабочей области, используя кнопку Сохранить переменные.

Анализ автокорреляций. До сих пор нами не обсуждалась интерпретация результатов. В общем, анализ временных рядов требует не только экспериментирования с доступными методами, но также понимания природы данных. Например, часто цены акций могут быть описаны моделью случайного блуждания. В этой модели каждое очередное наблюдение ряда представляет собой сумму предыдущего значения и случайной ошибки. В каком-то смысле этот процесс похож на блуждания "пьяного человека, чье положение в момент t определяется его положением в момент t-1 плюс шаг в случайном направлении" (Wei, 1990, стр. 71). Можно ожидать, что автокорреляция является наибольшей на лаге 1, следующая по величине на лаге 2 и т.д. Таким образом, автокорреляционная функция медленно убывает. Математически этот процесс можно описать как процесс авторегрессии с параметром близким 1.0.

График автокорреляционной функции. Проверим, насколько ряд Stock2 действительно отвечает этой простой модели. Вначале построим график Stock2 (выделите Stock2 и нажмите кнопку График рядом с кнопкой Просмотр выдел. переменной).

Кажется, что Stock2 имеет убывающий тренд. Такие тренды смещают оценки автокорреляционной функции.

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

Нажмите кнопку Автокорреляции и просмотрите автокорреляции численно в таблице результатов и на графике.

Корреляция на лаге 1 максимальная и далее медленно убывает; график частной автокорреляционной функции также подтверждает модель случайного блуждания:

Иными словами, каждое следующее наблюдение очень похоже на предыдущее, плюс некоторое случайное воздействие. Вы можете "удалить" сильную автокорреляцию, взяв разности ряда. Вновь откройте Преобразования переменных и выберите Разность (x=x-х(лаг)). Затем выберите опцию Aвтокорреляции в окне Преобразования переменных, чтобы построить график преобразованного ряда.

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

Этот пример взят из справочной системы ППП STATISTICA фирмы StatSoft

Метод прогнозирования - способ создания прогноза через практические и теоретические действия. Существует большое количество методов прогнозирования. Единой классификации методов прогнозирования не существует .

Прогнозирование временного ряда - вычисление величины его будущих значений либо характеристик, позволяющих определить эту величину, на основании анализа известных значений. Величина, подлежащая прогнозу, называется прогнозируемой величиной (ПВ) .

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

Прогнозирование временных рядов является важной научно-технической проблемой, т.к. позволяет предсказать поведение различных факторов в экологических, экономических, социальных и иных системах. Таким образом, основной целью любого прогнозирования является создание некой «машины времени», которая позволяет заглянуть в будущее и оценить тенденции в изменениях того или иного фактора. Такая «машина времени» в большинстве случаев базируется на методах математического моделирования, в частности, на построении модельной авторегрессии, скользящей по временному ряду и позволяющей осуществлять экстраполирование на несколько шагов вперед.

Существует множество методов прогнозирования. Одним из них является многослойный персептрон. Многослойный персептрон - это полносвязная модель без обратных связей. Количество слоев и нейронов в них обычно обусловлено постановкой задачи и вычислительными способностями ЭВМ.

Схему решения задачи прогнозирования можно представить в виде последовательности этапов (рис. 5.1).

Если временной ряд порождается динамической системой, т.е. значения {a(t)} - произвольная функция состояния такой системы, существует такое число d, что d предыдущих значений временного ряда однозначно определяет следующее значение. На практике большинство прогнозируемых временных рядов порождаются сложными динамическими системами, для которых велико значение d. Кроме того, в самом временном ряде может присутствовать случайная составляющая. Поэтому на этапе предварительных преобразований выполняются предварительные преобразования исходных данных, позволяющие уменьшить ошибку прогнозирования .

Предварительные преобразования (ПП) - получение для момента времени ti набора из определяющих факторов и соответствующего им значения ПВ. Определяющие факторы представляют собой некую функцию от прошлых значений временного рядя. После выполнения ПП для различных моментов времени t, временной ряд представляется в виде множества значений функции зависимости от определяющих факторов. Из множества полученных наборов выделяются два непересекающиеся подмножества. Одно из них представляет собой исходные данные (обучающую выборку). Другое подмножество представляет собой контрольную выборку, используется для проверки качества прогноза. Таким образом, прогнозирование временного ряда сводится к задаче интерполяции функции многих переменных. Система прогнозирования используется для восстановления этой функции по множеству наборов, входящих в состав обучающей выборки .

Определенной сложностью является формирование обучающей выборки, которая должна выполнять требования к полноте (выборка не должна содержать пропуски, должна содержать все допустимые примеры исследуемого диапазона) и непротиворечивости (выборка не должна содержать противоречивых примеров). Для проверки обучающей выборки на соответствие требованиям необходима оценка их качества, непосредственно определение понятий качества выборки, критериев оценки качества и разработки математического аппарата для их однозначной оценки. Для повышения прогностической способности допустимы (иногда необходимы) дополнительные преобразования, такие как методы фильтрации и восстановления данных (например, вейвлет-преобразование) .

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

Например, искусственная нейронная сеть показывают хорошие результаты, когда размер обучающей выборки имеет приблизительно 200-300 значений. В случаях, когда временной ряд содержит тысячи, десятки тысяч значений, оптимальным было бы сократить его до нужного размера, при этом, не потеряв его значимости, отразив всю нужную информацию, т.е. осуществить сегментацию таким образом, чтобы временной ряд имел более компактное представление, но при этом ошибка прогноза по преобразованным данным не была недопустимой (рис. 5.2).

К сожалению, в работах большинства авторов основное внимание уделено выбору архитектуры алгоритма, способу обучения нейронных сетей, а этап ПП рассматривается лишь в контексте конкретной практической задачи, либо не рассматривается вообще. Как правило приводится описание определенного типа ПП и результатов, полученных от его использования в той или иной области, а сравнительного анализа с другими типами ПП и критериев, по которым можно было бы их сравнить, не приводится. Тем не менее, ПП влияет на результат решения задачи прогнозирования, т.к. результат ПП является исходными данными для алгоритмов прогнозирования. Корректно проведенный этап ПП может значительно уменьшить ошибку прогноза. Использование в качестве предварительного преобразования сверток исходных данных позволит описать ситуацию меньшим количеством признаков без потери или с допустимой потерей точности. Это также приводит к сокращению времени обучения нейронной сети .

Итак, необходимо разработать алгоритм, который позволит сформировать выборку по временному ряду таким образом, что потеря точности будет в допустимых пределах, а уменьшение количества значений не повлечет за собой увеличение ошибки алгоритма прогнозирования. Следовательно, входными данными будет являться временной ряд, выходными - выборка, которая в последствии будет являться входными данными для алгоритмов прогнозирования.

Данный алгоритм должен удовлетворять следующим требованиям:

  • -- возможность восстановления будущих значений ВР с требуемой точностью;
  • -- описывать ситуацию меньшим количеством признаков без потери или с допустимой потерей точности;
  • -- исключать избыточность;
  • -- обеспечивать стационарность ряда признаков;
  • -- обеспечить непротиворечивость ряда признаков.

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

Примерами таких преобразований являются:

а) взятие конечных разностей

D yt – первая разность. Это преобразование целесообразно использовать, когда закон изменения yt близок к линейному.

D хt – вторая разность. Преобразование применяется, когда закон изменения yt близок к квадратической зависимости и т. д.;

б) логарифмирование цепных индексов

Применяется при экспоненциальном росте уt, t =1,2,..., Т;

в) расчет темпов прироста

а также некоторые другие.

Заметим, что преобразование (6.41) предоставляет исследователю несколько большие “удобства” в формировании исходной информации по сравнению с другими. Это связано с тем, что оно позволяет достаточно просто изменять временные серии исходных данных в связи, например, с укрупнением временных интервалов. В самом деле, предположим, что возникла необходимость проанализировать временные ряды серии удвоенного временного интервала (t–1, t+1), т. е., например, у1, у3, у5,..., уt–1, уt +1,... . Для такой серии преобразование (6.41) приводит к следующему временному ряду:

где хt+1, 2 – преобразованное значение показателя на удвоенном интервале.

Его величина представляет собой простую арифметическую сумму преобразованных значений показателей исходных интервалов, объединение которых привело к новой серии.

В то же время для преобразования (6.42) в этом случае получим более сложное выражение, определяющее для значения нового временного ряда:

Для превращения исходного нестационарного ряда в стационарный могут быть использованы и другие преобразования. Например, хt=lnуt, и т. д. В каждом конкретном случае, выбирая преобразование, необходимо исходить из примерной формы временного графика зависимости уt.

“Удачное” преобразование должно обеспечивать приблизительное выполнение условия xt=f(уt)»const.

В условиях постоянства математического ожидания и дисперсии особенности конкретного стационарного процесса второго порядка полностью определяются характером его автокорреляционной функции, имеющей вид зависимости значений коэффициентов автокорреляции от сдвига. Иными словами, автокорреляционная функция является дискретной и представляет собой последовательность значений коэффициентов автокорреляции r0, r1,..., ri–1,..., поставленных в зависимость от сдвига i, где r0=1, –1£ri£1, i=1,2,... .

Аналогично можно сформировать автоковариационную функцию стационарного процесса уt, представив ее в виде последовательности коэффициентов автоковариаций g0, g1,..., gi,..., поставленных в зависимость от сдвига i. Напомним, что между соответствующими значениями этих функций существует однозначная взаимосвязь gi =ri ?s y2, i=0,1,... , т. е. g 0=s y2.

Автокорреляционную функцию можно представить как проекцию диагональных элементов автокорреляционной матрицы на ось сдвигов (см. рис. 6.1).

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

В общем случае можно выделить три группы таких моделей – модели авторегрессии (autoregressive), модели скользящего среднего (moving average) и смешанные модели авторегрессии-скользящего среднего (autoregressive- moving average).



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: