Так сглаживание методом удлинения интервалов и скользящей средней

Методы анализа временных рядов: сглаживание

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

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

Передо мной встала задача выбрать набор данных, на котором можно было бы наглядно продемонстрировать особенности временных рядов. Я решил воспользоваться статистикой пассажиропотока на международных авиалиниях, поскольку этот набор данных весьма нагляден и стал своего рода стандартным (http://robjhyndman.com/tsdldata/data/airpass.dat, источник Time Series Data Library, R. J. Hyndman). Ряд описывает количество пассажиров международных авиалиний в месяц (в тысячах) за период с 1949 по 1960 года.

Поскольку у меня всегда под рукой Prognoz Platform, в которой есть интересный инструмент «Анализ временных рядов» для работы с рядами, я воспользуюсь именно им.

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

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

Рис.1 Временной ряд

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

Рис.2 Временной ряд на графике

Символ ‘M’ в конце имени ряда означает, что ряд имеет месячную динамику (интервал между наблюдениями равен одному месяцу).

Уже из графика мы видим, что ряд демонстрирует две особенности:

Наш ряд достаточно «аккуратный», однако часто встречаются ряды, которые помимо двух описанных выше характеристик демонстрируют ещё одну – наличие «шума», т.е. случайных вариаций в той или иной форме. Пример такого ряда можно увидеть на графике ниже. Это синусоидальный сигнал, смешанный со случайной величиной.

Рис.3 Временной ряд с шумом

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

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

Скользящее среднее

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

где xi – исходный ряд, si – сглаженный ряд.

Ниже можно увидеть результат применения данного алгоритма к двум нашим рядам. Prognoz Platform по умолчанию предлагает использовать сглаживание с размером окна в 5 точек (k в нашей формуле выше будет равно 2). Обратите внимание, что сглаженный сигнал уже не так подвержен влиянию шума, однако вместе с шумом, естественно, пропадает и часть полезной информации о динамике ряда. Также видно, что у сглаженного ряда отсутствуют первые (и также последние) k точек. Это связано с тем, что сглаживание выполняется для центральной точки окна (в нашем случае для третьей точки), после чего окно сдвигается на одну точку, и вычисления повторяются. Для второго, случайного ряда, я использовал сглаживание с окном равным 30, чтобы лучше выявить структуру ряда, так как ряд «высокочастотный», точек очень много.

Рис.4 Сглаживание временного ряда с размером окна в 5 точек Рис.5 Метод скользящего среднего

Метод скользящего среднего имеет определённые недостатки:

Экспоненциальное сглаживание

Более продвинутый метод сглаживания, который также можно использовать для прогнозирования – экспоненциальное сглаживание, также иногда называемое методом Хольта-Уинтерса (Holt-Winters) в честь имён его создателей.

Существует насколько вариантов данного метода:

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

В простейшем варианте одинарного сглаживания соотношение такое:

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

Чтобы понять, почему сглаживание называется экспоненциальным, нам нужно раскрыть соотношение рекурсивно:

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

Однако, если в данных есть тренд, простое сглаживание будет «отставать» от него (либо придётся брать значения α близкими к 1, но тогда сглаживание будет недостаточным). Нужно использовать двойное экспоненциальное сглаживание.

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

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

Читайте также:  можно ли колоть кетонал при беременности

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

Рис.6 Параметры сезонности временного ряда

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

Обычно в качестве первых приближений можно рассматривать значения между 0,2 и 0,4. Prognoz Platform также использует модель с дополнительным параметром ɸ, который дэмпфирует тренд так, что он приближается к константе в будущем. Для ɸ я взял значение 1, что соответствует обычной модели.

Также я сделал прогноз значений ряда данным методом на последние 2 года. На рисунке ниже я пометил точку начала прогноза, проведя через неё черту. Как видно, исходный ряд и сглаженный весьма неплохо совпадают, в том числе и на периоде прогнозирования – неплохо для такого простого метода!

Рис.7 Прогноз значений временного ряда

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

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

Источник

Использование метода скользящей средней в прогнозировании

МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ

Метод скользящей средней

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

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

Экстраполяция по скользящей средней – может применяться для целей краткосрочного прогнозирования.

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

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

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

Пример 1. Если объем продаж товара Х составил (штук):

Если реальный объем продаж на июль составил 94 штуки, то прогноз продаж на август уже будет равен:

Число значений n для подсчета скользящей средней (в нашем примере n = 5) выбирается в зависимости от того, насколько важны старые значения исследуемого показателя в сравнении с новыми. Так, если мы будем использовать для подсчета 3-х месячный период, тогда прогноз продаж на июль составит: (92 + 88 + 96)/3 = 92,3.

В случае с 5-ти месячной средней старые значения имеют удельный вес 4/5, а текущие – 1/5. В случае с 3-х месячной средней старые значения «весят» 2/3, а текущие – 1/3, т.е. скользящая средняя уже в большей степени зависит от текущего уровня и несколько слабее – от предшествующего.

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

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

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

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

n, m N, N – длина временного ряда (количество его значений).

Скользящие средние не спрогнозируют изменения в тренде, а лишь просигналят об уже появившемся тренде.

Пример 2. Имеются данные об изменении объема продаж одной из обувных сетей города (тыс. пар):

Вычислим значения скользящих средних.

Z1 = (х1 + х2 + х3) / 3 = (2+4+3)/3 = 3 – первая скользящая средняя;

Z2 = (х2 + х3 + х4) / 3 = (4+3+4)/3 = 3,7 – вторая скользящая средняя;

Источник

Ряды динамики в статистике

9.3. Методы анализа основной тенденции в рядах динамики

На формирование уровней динамического ряда влияет множество различных факторов, которые по характеру воздействия можно объединить в три группы:

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

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

К методам выявления основной тенденции развития динамического ряда (Тt) относятся:

Читайте также:  Что означает заменитель молочного жира в составе мороженого

Рассмотрим их подробнее.

9.3.1. Метод укрупнения интервалов

Применение метода укрупнения интервалов рассмотрим на основе данных табл. 9.13.

Таблица 9.13. Поставки товаров в торговую сеть
Месяц Поставка товаров, млн руб.
Январь 80
Февраль 78
Март 75
Апрель 80
Май 82
Июнь 85
Июль 87
Август 82
Сентябрь 85
Октябрь 84
Ноябрь 86
Декабрь 88
Таблица 9.14. Среднемесячные поставки товаров
Квартал Среднемесячные поставки товаров, млн руб.
I 77.7
II 82.3
III 84.0
IV 84.7

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

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

9.3.2. Метод скользящей средней

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

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

Таблица 9.15. Сглаживание ряда динамики методом скользящей средней по трем членам

Методика расчета центрированных скользящих средних показана ниже (табл. 9.16).

Таблица 9.16. Сглаживание ряда динамики методом скользящей средней по четырем членам

9.3.3. Аналитическое сглаживание (выравнивание) рядов динамики

При анализе рядов динамики в качестве линии тренда чаще всего используются следующие функции:

Источник

Машинное обучение — 4: Скользящее среднее

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

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

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

Сглаживание при помощи «скользящего среднего»
Принцип сглаживания на основе «скользящего среднего» (МА — от англ. «moving average») состоит в расчете для каждого значения аргумента yi среднего значения по соседним w данным.

Число w называют окном скользящего усреднения: чем оно больше, тем больше данных участвуют в расчете среднего, соответственно, тем более гладкая кривая получается. На верхнем рисунке окно w=50, а вот как будет выглядеть скользящее усреднение при w=200.

Как меняется Фурье-спектр данных при скользящем усреднении?
Очевидно, что при малых w сглаженные кривые практически повторяют ход изменения данных, а при больших w — отражают лишь закономерность их медленных вариаций. Это типичный пример фильтрации данных, т.е. устранения одной из составляющих зависимости y(xi). Наиболее часто целью фильтрации является подавление быстрых вариаций y(xi), которые обычно обусловлены шумом. В результате из быстроосциллирующей зависимости y(xi) получается другая, сглаженная зависимость, в которой доминирует более низкочастотная составляющая.

Эти рассуждения плавно перевели нас к терминологии спектров. Давайте нарисуем график Фурье-преобразования («Фурье-спектр») исходных данных:

и убедимся в том, что спектр скользящего среднего вырезает из него высокие частоты (начиная примерно с частоты 0.005 Гц):

Пояснение: Фурье-спектр суммы синусов и ее МА
Для того чтобы пояснить принцип расчета Фурье-спектра, рассмотрим вместо (случайных) исходных данных простую модель суммы нескольких детерминированных сигналов (синусоид с разной частотой и амплитудой) и псевдослучайного шума:

Приведем графики этой суммы и ее МА (с тем же окном w=200):

а также их Фурье-спектры:

Из них видно, что скользящее усреднение вырезает из сигнала высокие частоты, начиная с частоты 0.005 Гц. Лучше это видно на крупном плане низкочастотной области спектра:

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

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

Также интерес представляют смешанные задачи выделения среднемасштабных вариаций путем подавления как более быстрых, так и более медленных вариаций. Одна из возможностей решения связана с применением «полосовой фильтрации», которая реализуется так:
1. Устранение из сигнала y высокочастотной составляющей, имеющее целью получить сглаженный сигнал middle, например, с помощью скользящего усреднения с малым окном (например, w=200).
2. Выделение из сигнала middle низкочастотной составляющей slow, например, путем скользящего усреднения с большим окном w.
3. Вычитание из сигнала middle тренд slow, тем самым выделяя среднемасштабную составляющую исходного сигнала y.

Оставляю заинтересовавшемуся читателю возможность самому реализовать полосовую фильтрацию в Mathcad Express (с небольшой оговоркой, что в бесплатной версии Маткада алгоритм БПФ расчета Фурье-спектров отключен, и с ним поиграться не получится). Сами расчеты находятся здесь.

Читайте также:  лукочеснок что это такое фото

Литература:
1. Кирьянов Д.В., Кирьянова Е.Н. Вычислительная физика (PDF, гл.1, п.6 и 7). М.: Полибук Мультимедиа, 2006.
2. Бат М. Спектральный анализ в геофизике. М., Наука, 1980.

Источник

Метод скользящей средней

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

Общие понятия

Метод скользящей средней (Moving Average-MA) по сей день остаётся наиболее популярным инструментом технического анализа. Свою известность он приобрёл благодаря лёгкости построения, вычисления и интерпретации результатов. Суть метода — в вычислении усреднённых данных за определённый промежуток времени. К примеру, нужно найти среднюю цену закрытия биржевого актива за последние пять дней. Для этого необходимо сложить цены закрытия каждого дня в указанном промежутке и поделить на пять (количество дней). В момент окончания торгов шестого дня его цена закрытия добавляется к сумме при одновременном исключении значений первого дня, полученный результат вновь делится на пять. При схематичном представлении индикатор как бы скользит по графику актива. Направление движения указывает на превалирующую тенденцию. Поступательное повышение значений говорит о росте рынка, нисходящее — о его падении.

Виды скользящих средних

Simple Moving Average (SMA)

Приведённый выше пример показывает простой расчёт методом скользящей средней. Формула его такова:

SMA = (Сумма цен за период времени) / период времени.

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

Weighted Moving Average (WMA)

WMA = (Сумма произведений цен и весов) / (Сумма весов).

Exponential Moving Average (EMA)

Однако у перечисленных выше вариантов скользящих средних есть недостаток. При существенных колебаниях входящих данных (цен закрытия) значение скользящего среднего начинает «дёргаться». Например, дневные цены закрытия актива колеблются в диапазоне 50 и 60 пунктов, а её пятидневная SMA находится в районе 55, но включает в себя один день с ценой закрытия 70 пунктов. Когда эта цена выйдет из периода расчёта, значение SMA упадёт — и не в силу реальной ситуации на рынке. Чтобы избежать такого и погасить колебания скользящей средней, выравнивая ряд значений, аналитиками был предложен экспоненциальный метод расчёта — EMA. Формула выглядит следующим образом:

EMA = Рс * К + EMAв * (1 — К), где

К = 2/n — 1,
n — период усреднения,
Рс — цена сегодня,
EMAв — значение EMA вчера.

EMA отслеживает динамику рынка более оперативно, чем SMA и WMA, так как придаёт большее значение свежим данным и не регистрирует резких колебаний в ответ на изменение старых данных.

Правила применения

Направление скользящей средней

Главное правило применения метода — отслеживать общее направление скользящей средней: именно оно указывает на доминирующую тенденцию на рынке. Стоит заключать сделки лишь в направлении этого движения. Такое простое правило делает метод скользящей средней удобным инструментом для краткосрочного прогнозирования.

Универсальным инструментом практически на всех рынках является простая скользящая (SMA) средняя с 200-дневным периодом усреднения. Более долгосрочная скользящая средняя позволит разглядеть глобальный подъём или падение актива, избежать краткосрочных колебаний или незначительной консолидации курса. Как правило, короткие скользящие средние позволяют более активно реагировать на движения цены и предназначены для поиска краткосрочных тенденций. При анализе графика цены на дневном или ещё более коротком интервале многие трейдеры применяют «быстрые» EMA с различными периодами усреднения (5, 7, 13, 21, 50).

Пересечение скользящей средней графиком цены

Комбинации нескольких скользящих средних

Универсальной комбинацией нескольких скользящих средних для открытия сделок при торговле является связка 50-дневной SMA и 200-дневной SMA на дневном графике цены. Эта комбинация известна во всём мире как «золотой крест» (Golden cross: покупка в случае, когда более короткая скользящая средняя пересекает длинную снизу вверх). Существует и «мёртвый крест» (Death cross: продажа, когда короткая скользящая средняя пересекает длинную сверху вниз). Этот сигнал считается началом глобального изменения динамики любого актива.

На пересечении скользящих средних в торговле встречается множество комбинаций. Все они были найдены и просчитаны на основании рыночных циклов и рабочих дней. Наиболее популярные комбинации: пересечение EMA 3 и EMA 5, EMA 5 и EMA 13, EMA 13 и EMA 21.

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

С теорией всё более-менее понятно, а что насчёт практики? Откройте брокерский счёт онлайн в «Открытие Брокер» и начинайте торговать прямо сейчас! А мы поможем советами и рекомендациями — всё самое полезное каждую неделю будет приходить прямо на ваш email, если подпишетесь на рассылку.

Источник

Строй-портал