Простая скользящая средняя алгоритм на си. Методы без сезонной составляющей

Метод скользящей средней  метод изучения в рядах динамики основной тенденции развития явления.

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

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

Покажем применение скользящей средней на следующем примере. Пример 3.1 . На основе данных об урожайности зерновых культур в хозяйстве за 1989–2003 гг. проведем сглаживание ряда методом скользящей средней.

Динамика урожайности зерновых культур в хозяйстве за 1989–2003 гг. и расчет скользящих средних

1 . Рассчитаем трехлетние скользящие суммы. Находим сумму урожайности за 1989–1991 гг.: 19,5  23,4  25,0  67,9 и записываем это значение в 1991 г. Затем из этой суммы вычитаем значение показателя за 1989 г. и прибавляем показатель за 1992 г.: 67,9 – 19,5  22,4  70,8 и это значение записываем в 1992 г. и т. д.

2 . Определим трехлетние скользящие средних по формуле простой средней арифметической:

Полученное значение записываем в 1990 г. Затем берем следующую трехлетнюю скользящую сумму и находим трехлетнюю скользящую среднюю: 70,8: 3  23,6, полученное значение записываем в 1991 г. и т. д.

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

Четырехлетние скользящие средние определяются по формуле простой средней арифметической:

Это значение будет отнесено между двумя годами - 1990 и 1991 гг., т. е. в середине интервала сглаживания. Для того чтобы найти четырехлетние скользящие средние центрированные, необходимо найти среднюю из двух смежных скользящих средних:

Эта средняя будет отнесена к 1991 г. Аналогичным образом рассчитываются остальные центрированные средние; их значения записываются в графу 6 таблицы данного примера.

4. Метод аналитического выравнивания

Уравнение прямой при аналитическом выравнивании ряда динамики имеет следующий вид:

где - выровненный (средний) уровень динамического ряда; a 0 , a 1 - параметры искомой прямой; t - обозначение времени.

Способ наименьших квадратов дает систему двух нормальных уравнений для нахождения параметров a 0 и a 1:

где у  исходный уровень ряда динамики ; n  число членов ряда.

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

Если то

Исследование динамики соц.-экон. явлений и установление основной тенденции развития дают основание для прогнозирования (экстраполяции)  определения будущих размеров уровня экономического явления. Используют следующие методы экстраполяции:

средний абсолютный прирост  с/показатель, исчисляемый для выражения средней скорости роста (снижения) соц.-эк. процесса. Определяется по формуле:

■ средний темп роста;

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

Рассмотрим применение метода аналитического выравнивания по прямой для выражения основной тенденции на ПримерЕ 4.1 . Исходные и расчетные данные определения параметров уравнения прямой:

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

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

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

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

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

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

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

Данный метод используется при краткосрочном прогнозировании. Его рабочая формула:

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

Задача . Имеются данные, характеризующие уровень безработицы в регионе, %

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

Решение методом скользящей средней

Для расчета прогнозного значения методом скользящей средней необходимо:

1. Определить величину интервала сглаживания, например равную 3 (n = 3).

2. Рассчитать скользящую среднюю для первых трех периодов
m фев = (Уянв + Уфев + У март)/ 3 = (2,99+2,66+2,63)/3 = 2,76
Полученное значение заносим в таблицу в средину взятого периода.
Далее рассчитываем m для следующих трех периодов февраль, март, апрель.
m март = (Уфев + Умарт + Уапр)/ 3 = (2,66+2,63+2,56)/3 = 2,62
Далее по аналогии рассчитываем m для каждых трех рядом стоящих периодов и результаты заносим в таблицу.

3. Рассчитав скользящую среднюю для всех периодов, строим прогноз на ноябрь по формуле:

где t + 1 – прогнозный период; t – период, предшествующий прогнозному периоду (год, месяц и т.д.); Уt+1 – прогнозируемый показатель; mt-1 – скользящая средняя за два периода до прогнозного; n – число уровней, входящих в интервал сглаживания; Уt – фактическое значение исследуемого явления за предшествующий период; Уt-1 – фактическое значение исследуемого явления за два периода, предшествующих прогнозному.

У ноябрь = 1,57 + 1/3 (1,42 – 1,56) = 1,57 – 0,05 = 1,52
Определяем скользящую среднюю m для октября.
m = (1,56+1,42+1,52) /3 = 1,5
Строим прогноз на декабрь.
У декабрь = 1,5 + 1/3 (1,52 – 1,42) = 1,53
Определяем скользящую среднюю m для ноября.
m = (1,42+1,52+1,53) /3 = 1,49
Строим прогноз на январь.
У январь = 1,49 + 1/3 (1,53 – 1,52) = 1,49
Заносим полученный результат в таблицу.

Рассчитываем среднюю относительную ошибку по формуле:

ε = 9,01/8 = 1,13% точность прогноза высокая.

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

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

Использование скользящих средних в Excel

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

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

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

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

Сформируем сглаженные временные ряды методом скользящего среднего посредством функции СРЗНАЧ. Найдем средние отклонения сглаженных временных рядов от заданного временного ряда.


Относительные отклонения:

Средние квадратичные отклонения:


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

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

Прогнозное значение выручки на 12 месяц – 9 430 у.е.



Применение надстройки «Пакет анализа»

Для примера возьмем ту же задачу.

На вкладке «Данные» находим команду «Анализ данных». В открывшемся диалоговом окне выбираем «Скользящее среднее»:

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

Установив флажок в поле «Стандартные погрешности», мы автоматически добавляем в таблицу столбец со статистической оценкой погрешности.

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


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

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

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

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

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

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

Первый способ называется «наивным» прогнозом и достаточно очевиден. Рассмотрим подробнее остальные способы.

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

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

Рассмотрим следующий пример. Маркетологу нужно спрогнозировать спрос на производимые его компанией станки. Данные по объемам продаж за последний год работы компании находятся в файле «ЛР6.Пример 1.Станки.xls».

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

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

где x i i -ое реальное значение переменной вi -й момент времени, аx i i -ое спрогнозированное значение переменной вi -й момент времени, N - количество прогнозов.

Согласно результатам, полученным на листе «Простое ск. среднее» рабочей книги «ЛР6.Пример 1.Станки.xls» (см. Рисунок 56), скользящее среднее за три месяца имеет значение САО равное 12,67 (ячейка D16 ), тогда как для скользящего среднего за 4 месяца значение САО равно 15,59 (ячейка F16 ). Тогда можно выдвинуть гипотезу, что использование большего количества статистических данных скорее ухудшает, чем улучшает точность прогноза методом скользящего среднего.

Рисунок 56. Пример 1 – результаты прогнозирования методом простого скользящего среднего

На графике (см. Рисунок 57), построенном по результатам наблюдений и прогнозов с интервалом 3 месяца, можно заметить ряд особенностей, общих для всех применений метода скользящего среднего.

Рисунок 57. Пример 1 – график кривой прогноза методом простого скользящего среднего и график реального объёма продаж

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

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

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

где - вес, с которым используется показательпри расчете.

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

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

    Выберите команду Сервис -> Поиск решения.

    В диалоговом окне Поиска решения установите ячейку G16 целевой (см. лист «Веса»), минимизируя её.

    Изменяемыми ячейками укажите диапазон В1:В3.

    Установите ограничения В4 = 1,0; В1:ВЗ ≥ 0; В1:В3 ≤ 1; B1 ≤ В2 и В2 ≤ В3.

    Запустите поиск решения (результат отображает).

Рисунок 58. Пример 1 – результат поиска весов значений показателей при использовании метода взвешенного скользящего среднего

Полученные результаты показывают, что оптимальное распределение весов таково, что весь вес сосредоточен на самом последнем наблюдении, при этом значение среднего абсолютных отклонений равно 7,56 (см. также Рисунок 59). Этот результат подтверждает предположение о том, что более поздние наблюдения должны иметь больший вес.

Рисунок 59. Пример 1 – график кривой прогноза методом взвешенного скользящего среднего и график реального объёма продаж