Прогноз по методу экспоненциального сглаживания Хольта

Автор: Алексей Батурин.

grafikХольт развил модель простого экспоненциального сглаживания (прочитать статью о модели прогноза "Простое экспоненциальное сглаживание") и добавил в неё тренд.

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

Из данной статьи вы узнаете:

1. Как в Excel рассчитать прогноз по методу экспоненциального сглаживания Хольта;

2. Как оценить точность модели и подобрать оптимальные коэффициенты сглаживания.

Если временной ряд имеет тенденцию к росту или падению, то вместе с оценкой текущего уровня ряда (как в простом экспоненциальном сглаживании) стоит выделить тренд. Для управления уровнем и наклоном в модели Хольта вводится 2 коэффициента сглаживания – коэффициент сглаживания ряда и тренда.

Как рассчитать прогноз по методу Хольта:

  1. Рассчитываем экспоненциально-сглаженный ряд;
  2. Определяем значение тренда;
  3. Делаем прогноз.

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

1. Рассчитываем экспоненциально-сглаженный ряд:

Lt=k*Yt+(1-k)*(Lt-1-Tt-1), где

  • Lt  – сглаженная величина на текущий период;
  • k – коэффициент сглаживания ряда;
  • Yt – текущие значение ряда (например, объём продаж);
  • Lt-1 – сглаженная величина за предыдущий период;
  • Tt-1 – значение тренда за предыдущий период;

Lt (Сглаженная величина текущий период) = k(коэффициент сглаживания ряда)* Yt(текущие значение ряда (например, объём продаж))+(1-коэффициент сглаживания ряда)*( Lt-1(сглаженная величина за предыдущий период) -Tt-1(тренд за предыдущий период)

Коэффициент сглаживания ряда k задается вами в ручную и находится в диапазоне от 0 до 1.

Для первого периода в начале данных экспоненциально-сглаженный ряд равен первому значению ряда (например, объему продаж за первый месяц) L1=Y1;

В приложенном файле вводим значение L первого периода и рассчитываем сглаженную величину для всего массива данных:

сглаженный ряд метод Хольта
 

2. Определяем значение тренда

Tt=b*(Lt - Lt-1)+(1-b)*Tt-1,  где:

  • Tt – значение тренда на текущий период;
  • b – коэффициент сглаживания тренда;
  • Lt – экспоненциально сглаженная величина за текущий период;
  • Lt-1 – экспоненциально сглаженная величина за предыдущий период;
  • Tt-1 – значение тренда за предыдущий период.

Tt(значение тренда на текущий период)=b(коэффициент сглаживания тренда)*(Lt (экспоненциально сглаженная величина за текущий период)- Lt-1(экспоненциально сглаженная величина за предыдущий период))+(1-b(коэффициент сглаживания тренда))*Tt-1 (значение тренда за предыдущий период)

Коэффициент сглаживания тренда b задается вами в ручную и находится в диапазоне от 0 до 1.

Значение тренда для первого периода равно 0  (T1 =0);

В приложенном файле рассчитаем значения тренда:

расчет тренда

3. Делаем прогноз по методу Хольта

Прогноз на p периодов вперед равен:

Ŷt+p = Lt + p *Tt, где

  • Ŷt+p – прогноз по методу Хольта на p период;
  • Lt – экспоненциально сглаженная величина за последний период;
  • p – порядковый номер периода, на который делаем прогноз;
  • Tt – тренд за последний период.

Ŷt+p (Прогноз по методу Хольта)= Lt (экспоненциально сглаженная величина за последний период)+ p (количество периодов вперед, на которое делаем прогноз) *Tt (тренд за последний период)

Во вложенном файле сделаем прогноз на 3 месяца.

Для этого заполним номера периодов, на 3 месяца вперед

 период для прогноза

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

рассчитываем прогноз по методу экспоненциального сглаживания Хольта

Протягиваем формулу на 3 периода вперед, получаем прогноз:

прогноз по методу Хольта

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

2. Как оценить точность модели Хольта и подобрать оптимальные коэффициенты сглаживания ряда и тренда.

Для этого:

  1. Рассчитаем значения прогнозной модели;
  2. Определим ошибку модели;
  3.  Рассчитаем показатель точность прогноза;
  4. Подберем оптимальные коэффициенты сглаживания ряда и тренда;

1. Рассчитаем значения прогнозной модели.

Рассчитываем прогноз на 1 период вперед для каждого месяца, когда продажи нам известны (во вложенном файле столбец "прогноз на 1 период для анализа ").

Прогноз на 1 период для анализа = значение экспоненциально-сглаженного ряда за предыдущий период + значение тренда за предыдущий период. (значение тренда мы не умножаем на p, т.к. прогноз делаем на 1 период, а в этом случае p=1).

оценка модели прогноза 

2. Рассчитаем ошибку модели = из фактических данных вычитаем прогноз на этот период.

расчет ошибки модели прогноза

3. Рассчитаем точность прогноза

Для этого определим отклонение ошибки модели от прогнозной модели = отношение ошибки модели в квадрате к фактическому значению в квадрате.

среднеквадратическое отклонение

Рассчитаем точность прогноза = единица минус среднее значение отклонений ошибок модели от прогнозной модели

точность модели

Для подбора коэффициентов сглаживания ряда и тренда k и b, при которых прогноз будет максимально точным, нам необходимо последовательно перебрать все значения k и b в диапазоне от 0 до 1 и найти такое сочетание, при котором точность прогноза будет максимальна приближена к 100%.

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

Ŷt+3 = Lt + 3 *Tt

оценка модели прогноза на 3 месяца

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

Последовательно перебирая коэффициенты k и b от 0 до 1 с шагом 0,1 , находим такое сочетание, которое дает максимальное значение точности прогноза.

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

Точных вам прогнозов!

Присоединяйтесь к нам!

Скачивайте бесплатные приложения для прогнозирования и бизнес-анализа:

Novo Forecast - прогноз в Excel - точно, легко и быстро!

  • Novo Forecast Lite - автоматический расчет прогноза в Excel.
  • 4analytics - ABC-XYZ-анализ и анализ выбросов в Excel.
  • Qlik Sense Desktop и QlikView Personal Edition - BI-системы для анализа и визуализации данных.

Тестируйте возможности платных решений:

  • Novo Forecast PRO - прогнозирование в Excel для больших массивов данных.

Получите 10 рекомендаций по повышению точности прогнозов до 90% и выше.

Зарегистрируйтесь и скачайте решения

Статья полезная? Поделитесь с друзьями