В прошлой статье мы уже разобрали, что такое временной ряд и функцию тренда. Теперь подробнее разберемся с терминологией и остановимся на одной из моделей временного ряда.
Из чего состоит временной ряд
Уровни временного ряда (Yt) представляют из себя сумму двух компонент:
- Регулярную составляющую
- Случайную составляющую
В свою очередь регулярная составляющая состоит из:
- Тренда
- Сезонности
- Циклической составляющей
Однако, в модели необязательно наличие всех этих компонент сразу.
Случайная компонента отражает влияние случайных возмущений на модель, которые по отдельности имеют незначительное воздействие, но суммарно их влияние ощущается.
То есть, в общем случае временной ряд представляет из себя наличие четырех составляющих:
- Тренд (Tt)
- Сезонность (St)
- Цикличность (Ct)
- Случайные возмущения (Et)
Циклическая компонента, по сравнению с сезонностью, имеет более длительный эффект и меняется от цикла к циклу. Поэтому, ее обычно объединяют с трендом.
Виды моделей временного ряда
Обычно, выделяют две модели временного ряда и третью — смешанную.
- Аддитивная модель
-
Мультипликативная модель
-
Смешанная модель
При выборе необходимой модели временного ряда смотрят на амплитуду колебаний сезонной составляющей. Если ее колебания относительно постоянны, то выбирают аддитивную модель. То есть, амплитуда колебаний примерно одинакова:
Если амплитуда сезонных колебаний возрастает или уменьшается, строят мультипликативную модель временного ряда, которая ставит уровни ряда в зависимость от значений сезонной компоненты.
Построение этих моделей сводится к расчету тренда (Tt), сезонности (St) и случайных возмущений (Et) для каждого уровня ряда (Yt).
Алгоритм построения модели
- Выравниваем ряд с помощью скользящей средней, то есть сглаживаем ряд и отфильтровываем высокочастотные колебания.
- Рассчитываем значение сезонной компоненты St.
- Рассчитываем значения Tt с использованием полученного уравнения тренда.
- Используя полученные значения St и Tt, находим прогнозные значения уровней временного ряда.
- Оцениваем качество модели.
Реализация на практике
Итак, мы имеем на руках данные о продажах за 2016 и 2017 год и хотим спрогнозировать продажи на 2018 год.
Шаг 1
Следуя нашему алгоритму, мы должны сгладить временной ряд. Воспользуемся методом скользящей средней. Видим, что в каждом году есть большие пики (май-июнь 2016 и апрель 2017), поэтому возьмем период сглаживания пошире, например, месячную динамику, т.е. 12 месяцев.
Удобнее брать период сглаживания в виде нечетного числа, тогда формула для расчета уровней сглаженного ряда:
yi — фактическое значение i-го уровня ряда,
yt — значение скользящей средней в момент времени t,
2p+1 — длина интервала сглаживания.
Но так как мы решили использовать месячную динамику в виде четного числа 12, то данная формула нам не подойдет и мы воспользуемся этой:
Иными словами, мы учитываем половины от крайних уровней ряда в диапазоне, в остальном формула не претерпела больше никаких изменений. Вот ее точный вид для нашей задачи:
Сглаживаем наши уровни ряда и растягиваем формулу вниз:
Сразу можем построить график из известных значений уровня продаж и их сглаженной. Выведем ее уравнение и значение коэффициента детерминации R^2:
В качестве сглаженной я выбрала полином третьей степени, так как он лучше всего описывал уровни временного ряда и имел наибольший R^2.
Шаг 2
Так как мы рассматриваем аддитивную модель вида:
Найдем оценки сезонной компоненты как разность между фактическими уровнями ряда и значениями скользящей средней St+Et = Yt-Tt, так как Yt и Tt мы уже знаем.
Используем оценки сезонной компоненты (St+Et) для расчета значений сезонной компоненты St. Для этого найдем средние за каждый интервал (по всем годам) оценки сезонной компоненты St.
Средняя оценка сезонной компоненты находится как сумма по столбцу, деленная на количество заполненных строк в этом столбце. В нашем случае оценки сезонной составляющей расположились в строках без пересечений, поэтому сумма по столбцам состоит из одиночных значений, следовательно и среднее будет таким же. Если бы мы располагали периодом побольше, например с 2015, у нас бы добавилась еще одна строка и мы смогли бы полноценно найти среднее, поделив сумму на 2.
В моделях с сезонной компонентой обычно предполагается, что сезонные воздействия за период взаимопогашаются. В аддитивной модели это выражается в том, что сумма значений сезонной компоненты по всем интервалам должна быть равна нулю. Поэтому найдя значение случайной составляющей, поделив сумму средних оценок сезонной составляющей на 12, мы вычитаем ее значение из каждой средней оценки и получаем скорректированную сезонную компоненту, St.
Далее, заполняем нашу таблицу значениями сезонной составляющей дублируя ряд каждые 12 месяцев, то есть три раза:
Шаг 3
Теперь рассчитываем значения уровня тренда T(t) по тому уравнению, которое мы получили при построении сглаженного тренда на первом шаге.
T(t) = -23294+34114*t-1593*t^2+26,3*t^3
Вместо t используем значения из столбца Период из соответствующей строки.
Шаг 4
Имея рассчитанные значения S(t) и T(t) мы можем рассчитать прогнозные значения уровней ряда Y(t). Для этого накладываем уровни сезонности на тренд.
Теперь построим график известных значений Y(t) и спрогнозированных за 2018 год.
Вот мы и нашли спрогнозированные значения уровней продаж на 2018 год. Значения отражают возрастающую тенденцию и сезонные пики. Конечно, эти данные не дают 100% точности, ведь существует множество внешних воздействий, которые могут изменить направление тренда, поэтому к прогнозным значениям обычно строят доверительный интервал, это такой коридор, внутри которого могут колебаться прогнозные значения с заданной вероятностью (чаще всего выбирают 95%). Но об этом я расскажу в следующей статье.
Шаг 5
Осталось оценить точность модели. Для этого будем использовать среднюю ошибку аппроксимации, которая поможет рассчитать ошибку в относительном выражении. Иными словами, это среднее отклонение расчетных значений от фактических, которое вычисляется по формуле:
yi — спрогнозированные уровни ряда,
yi* — фактические уровни ряда,
n — количество складываемых элементов.
Модель может считаться адекватной, если:
Итак, рассчитываем ошибку аппроксимации для нашего случая. Так как в основе нашего тренда лежит полином третьей степени, прогнозные значения начинают хорошо повторять фактические значения к концу 2016 года, думаю, я думаю, поэтому корректнее было бы рассчитать ошибку аппроксимации для значений 2017 года.
Сложив весь столбец с ошибками аппроксимации и поделив на 12, получаем среднюю ошибку аппроксимации 4,13%. Это значение меньше 15% и можем сделать вывод об адекватности модели.
Не забывайте, что прогнозы не бывают точными на 100%. Любые неожиданные внешние воздействия могут развернуть значения уровней ряда в неизвестном направлении 🙂
Полезные ссылки:
- Ссылка на пример Google Sheets
- Построение функции тренда в Excel. Быстрый прогноз без учета сезонности
- Бывшев В.А. Эконометрика
- Об авторе
- Свежие записи
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Еще…Меньше
Важно: Функция ПРОГНОЗ. ETS. Сезонность недоступна в Excel для Интернета, iOS или Android.
Возвращает длину повторяющегося фрагмента, обнаруженного программой Excel в заданном временном ряду. ПРОГНОЗ. ETS. СЕЗОННОСТЬ можно использовать после прогноза. ETS для определения того, какая автоматическая сезонность была обнаружена и использована в ФУНКЦИИ ПРОГНОЗ. ETS. Хотя ее можно использовать независимо от ПРЕДСКАЗ.ETS, эти функции связаны между собой: ПРЕДСКАЗ.ETS.СЕЗОННОСТЬ определяет то же значение сезонности, что и ПРЕДСКАЗ.ETS, на основе одинаковых входных параметров, влияющих на порядок заполнения данных.
Синтаксис
ПРЕДСКАЗ.ETS.СЕЗОННОСТЬ(значения;временная_шкала;[заполнение_данных];[агрегирование])
Аргументы функции ПРЕДСКАЗ.ETS.СЕЗОННОСТЬ описаны ниже.
-
Значения — обязательный аргумент. Значения представляют собой ретроспективные данные, на основе которых прогнозируются последующие значения.
-
Временная_шкала — обязательный аргумент. Независимый массив или интервал числовых данных. Даты во временной шкале должны отстоять одна от другой на фиксированный интервал и не должны быть нулевыми. Сортировать временную шкалу не обязательно, так как «ПРОГНОЗ». ETS. Сезонность будет автоматически отсортировать ее для вычислений. Если на за предоставленной временной шкале не удалось определить константу, спрогнозировали ее. ETS. Сезонность возвращает #NUM! ошибку «#ВЫЧИС!». Если временная шкала содержит повторяющиеся значения, FORECAST. ETS. Сезонность возвращает #VALUE! ошибку «#ВЫЧИС!». Если диапазоны временной шкалы и значений не одинаковы, ТО ПРОГНОЗ. ETS. Сезонность возвращает ошибку #N/A.
-
Заполнение_данных — необязательный аргумент. Хотя временная шкала требует постоянного шага между точками данных, FORECAST. ETS. Сезонность поддерживает до 30 % отсутствующих данных и автоматически настраивает их. 0 означает, что алгоритм учитывает отсутствующие точки как нули. Если задано значение 1 (вариант по умолчанию), функция определяет отсутствующие значения как среднее между соседними точками.
-
Агрегирование — необязательный аргумент. Хотя временная шкала требует постоянного шага между точками данных, FORECAST. ETS. Сезонность будет агрегировать несколько точек с одинаковой отметкой времени. Параметр агрегирования — это числовое значение, определяющее способ агрегирования нескольких значений с одинаковой меткой времени. Для значения по умолчанию 0 используется метод СРЗНАЧ; также доступны варианты СУММ, СЧЁТ, СЧЁТЗ, МИН, МАКС и МЕДИАНА.
Скачайте пример книги.
Щелкните эту ссылку, чтобы скачать книгу с Excel FORECAST. Примеры функции ETS
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
Функции прогнозирования (справочник)
Нужна дополнительная помощь?
Главной целью десезонализации данных является прогнозирование тренда объема продаж в будущем. Десезонализированные данные и функция ПРЕДСКАЗ, которая их обрабатывает, вместе поставляют необходимую информацию для прогнозирования объема реализации на целый следующий год.
Пример формул таблицы для анализа прогноза продаж в Excel
Ниже на рисунке представлены исходные данные. Допустим по этим данным необходимо составить прогноз продаж на 2020-й год, не смотря на то что собранные статистические данные заканчиваются в декабре 2019-го года. Первым шагом является использование функции ПРЕДСКАЗ и расширение десезонализированных данных на очередные 12 месяцев. Формулы в таблицах:
- Расчет коэффициента сезонности для каждого месяца в году:
- Расчет десезонализации на основе коэффициентов:
- Формула для прогнозирования показателей реализации в январе 2020-го года находится в том же столбце в ячейке C26 и выглядит следующим образом:
- Формула прогноза сезонности на 2020-й год:
Для прогнозирования будущих значений функция ПРЕДСКАЗ использует метод линейной регрессии. Функция содержит 3 аргумента:
- X – в данном аргументе будет указан месяц, для которого следует получить текущее прогнозируемое значение.
- Известные значения y – аргумент содержит десезонализированные данные столбца C.
- Известные значения x – здесь указаны месяца соответствующие данным по продажам в столбце A.
После создания с помощью функции ПРЕДСКАЗ прогнозируемых значений для всех месяцев следует восстановить сезонность данных, применяя коэффициенты в таблице, показанной на последнем рисунке выше.
График прогноза продаж с учетом сезонности
В результате всех вычислений и полученных данных можно составить график прогноза продаж с учетом сезонности в будущем году:
Скачать прогноз продаж с учетом сезонности в Excel
Восстановление данных сезонности основано на разделении их на коэффициент. В этом случае выполняется обратная операция: данные умножаются на коэффициент. Так как статистические данные указывают нам на то, что продажи в январе месяце составляют 53% от среднего показателя, прогнозируемое значение умножается на коэффициент 53% и в такой способ вычисляется прогноз продаж для января. Ниже на рисунке представлен график с прогнозируемыми данными.
Читайте начало статьи: Пример формулы для расчета десезонализации продаж в Excel
После восстановления показателей сезонности заметный прогнозируемый активный рост во втором квартале.
Excel, как универсальный табличный редактор, давно и неплохо справляется с большинством задач прогнозирования (см. список литературы в конце заметки). Однако, не всегда вычисления в Excel являются простыми и понятными. И вот в версии 2016 года разработчики Microsoft добавили семейство функций ПРЕДСКАЗ (FORECAST), которые позволяют в несколько кликов решать большой круг задач прогнозирования на основе экспоненциального сглаживания.
Рис. 1. Прогнозирование продаж в Excel с помощью семейства функций ПРЕДСКАЗ
Скачать заметку в формате Word или pdf, примеры в формате Excel
Об экспоненциальном сглаживании
Экспоненциальное сглаживание также известно, как метод ETS: ошибки (Errors), тренд (Trend), сезонный фактор (Seasonal). Для составления прогноза используются все исторические данные, но коэффициенты, определяющие вклад, убывают в прошлое по экспоненте (отсюда и название). Это позволяет, с одной стороны, чутко реагировать на свежие данных, с другой стороны, сохранять информацию об историческом поведении всего временного ряда. Если данным присущ тренд, он вычисляется в каждой точке данных (а не на основе регрессии всего временного ряда). Наконец, с помощью автокорреляции в данных выявляется сезонность.
Преимущество модели в том, что она не использует никаких предположений относительно характера тренда (или его отсутствия) и периодичности сезонных колебаний (или их отсутствия). Все коэффициенты в модели подбираются на основе минимизации суммы квадратов ошибок, то есть, разности между прогнозом на исторических данных и самих данных. Если вас интересует, как это происходит, рекомендую работу Формана (см. список литературы).
Собственно, оптимизируются три коэффициента:
α – разброс относительно среднего
γ – тренд
δ – сезонность
Разработчики Microsoft не предоставили пользователям возможность влиять на выбор коэффициентов, за исключением периода сезонности (об этом ниже).
Обзор функций семейства ПРЕДСКАЗ
В Excel представлено 5 функций:
Рис. 2. Семейство функций ПРЕДСКАЗ в Excel
ПРЕДСКАЗ.ETS рассчитывает будущее значение на основе существующих (ретроспективных) данных методом экспоненциального сглаживания. Т.е., дает прогноз одним числом.
ПРЕДСКАЗ.ЕTS.ДОВИНТЕРВАЛ возвращает доверительный интервал для прогнозной величины. Доверительный интервал следует отложить по обе стороны от среднего значения. Вместе с ПРЕДСКАЗ.ETS позволяет построить «коридор» прогноза.
ПРЕДСКАЗ.ETS.СЕЗОННОСТЬ возвращает длину повторяющегося фрагмента, обнаруженного в заданном временном ряду. Например, 12, если исторические данные представляют из себя продажи за месяц.
ПРЕДСКАЗ.ETS.СТАТ возвращает восемь статистических значений, являющихся результатом прогнозирования временного ряда. Вряд ли вы будете использовать эту функцию. Она нужна для более тонкого исследования параметров прогнозной модели.
ПРЕДСКАЗ.ЛИНЕЙН вычисляет будущее значение с помощью линейной регрессии исторических данных. До версии 2016 в Excel вместо семейства функций была единственная функция ПРЕДСКАЗ, которая работала также, как и ПРЕДСКАЗ.ЛИНЕЙН. Функция ПРЕДСКАЗ оставлена для обратной совместимости, но скоро перестанет поддерживаться. Далее в заметке ПРЕДСКАЗ.ЛИНЕЙН не рассматривается, так как не относится к функциям, использующим алгоритм экспоненциального сглаживания.
ПРЕДСКАЗ.ETS
Синтаксис:
ПРЕДСКАЗ.ETS ( целевая_дата; значения; временная_шкала; [сезонность]; [заполнение_данных]; [агрегирование] ) |
В качестве примера рассмотрим месячный пассажиропоток в аэропорту (пример от MS). Исторические данные были собраны за период с января 2009 по декабрь 2912 г.
Рис. 3. Исторические данные
Продолжим временную шкалу еще на год, и создадим столбец для прогноза. Обычно прогноз располагают в отдельном столбце для того, чтобы при построении графика представить исторические и прогнозные значения разными линиями.
Рис. 4. Прогнозные значения на основе функции ПРЕДСКАЗ.ETS
Подробнее о формуле в ячейке С50:
=ПРЕДСКАЗ.ETS(A50;$B$2:$B$49;$A$2:$A$49;1;1)
Первый аргумент – целевая_дата = А50 – янв.13, т.е., в ячейке С50 ищется прогноз пассажиропотока для января 2013 г. Ссылка относительная, что позволит при протягивании функции вниз по столбцу ссылаться на новое значение: в С51 – на А51, в С52 – на А52 и т.д.
Второй аргумент – значения = $B$2:$B$49. Здесь расположены исторические данные пассажиропотока. Ссылка абсолютная, чтобы при протягивании формулы ячейки, на которые ссылаются не изменились.
Третий аргумент – временная_шкала = $A$2:$A$49. Здесь расположены даты временной шкалы или номера периодов. Важно чтобы они отстояли друг от друга на фиксированный интервал. Если интервал не будет фиксированным, Excel всё еще будет исходить из гипотезы, что интервал фиксированный, а некоторые данные пропущены. Как обрабатываются такие ситуации описано ниже. Сортировать массив по значениям временной шкалы не обязательно, так как ПРЕДСКАЗ.ETS сама отсортирует данные прежде, чем выполнить расчеты.
Четвертый аргумент – [сезонность] = 1. Это необязательный аргумент. Значение по умолчанию равно 1. Для него Excel автоматически определяет сезонность и использует положительные целые числа в качестве длины сезонного шаблона. Значение 0 предписывает не использовать фактор сезонности, в результате чего прогноз будет линейным. Если для этого параметра задано положительное целое число, алгоритм использует его в качестве длины шаблона сезонности. Например, вы знаете, что сезонность равна 4 (квартальная периодичность), но предполагаете, что она слабая, и автоматический алгоритм Excel может ее не выявить, и будет считать, что сезонности нет. Для начала я рекомендовал бы использовать значение по умолчанию.
Пятый аргумент – [заполнение_данных] = 1. Это необязательный аргумент. Хотя временная шкала требует постоянный шаг между точками данных, FORECAST.ETS поддерживает до 30% отсутствующих данных и автоматически настраивает их. 0 указывает, что алгоритм учитывает отсутствующие точки в качестве нулей. Если задано значение 1 (вариант по умолчанию), функция определяет отсутствующие значения как среднее между соседними точками.
Шестой аргумент – [агрегирование] – в нашем примере опущен. Это необязательный аргумент. Он нужен, если даты временной шкалы или номера периодов содержат дубли. Функция ПРЕДСКАЗ.ETS выполнит агрегирование точек с одинаковой меткой времени. Параметр агрегирования — это числовое значение, определяющее способ агрегирования нескольких значений с одинаковой меткой времени. Для значения по умолчанию 0 используется метод СРЗНАЧ; также доступны варианты СУММ, СЧЁТ, СЧЁТЗ, МИН, МАКС и МЕДИАНА.
ПРЕДСКАЗ.ЕTS.ДОВИНТЕРВАЛ
Синтаксис:
ПРЕДСКАЗ.ETS.ДОВИНТЕРВАЛ ( целевая_дата; значения; временная_шкала; [вероятность]; [сезонность]; [заполнение_данных]; [агрегирование] ) |
Здесь один новый аргумент – вероятность. Он необязательный. И принимает значения от 0 до 1 (не включительно). Например, для значения 95% выполняется расчет доверительного интервала, в который с вероятностью 95% попадут прогнозные точки. Функция ПРЕДСКАЗ.ETS.ДОВИНТЕРВАЛ возвращает значение в тех же физических единицах, что и ПРЕДСКАЗ.ETS. Например, 50±8. Здесь 8 – доверительный интервал, возвращаемый функцией ПРЕДСКАЗ.ETS.ДОВИНТЕРВАЛ. Он откладывается от среднего прогнозного значения по обе стороны.
Рис. 5. Расчет границ коридора прогноза
Теперь на основании расчета среднего прогноза, возвращаемого функцией ПРЕДСКАЗ.ETS и границ коридора, возвращаемого формулами…
=C50±ПРЕДСКАЗ.ЕTS.ДОВИНТЕРВАЛ(A50;$B$2:$B$49;$A$2:$A$49;0,95;1;1)
… можно построить график прогноза с доверительными границами:
Рис. 6. Исторические и прогнозные данные пассажиропотока с 95%-ными доверительными границами
Благодаря тому, что исторические данные демонстрируют четкие закономерности, прогнозные границы получились довольно узкими.
ПРЕДСКАЗ.ETS.СЕЗОННОСТЬ
Синтаксис:
ПРЕДСКАЗ.ETS.СЕЗОННОСТЬ ( значения; временная_шкала; [заполнение_данных]; [агрегирование] ) |
Здесь нет новых для нас аргументов. В простейшем случае функция ПРЕДСКАЗ.ETS.СЕЗОННОСТЬ принимает исторические данные и временную шкалу, и возвращает целое число, равное сезонности. В нашем примере – 12:
Рис. 7. Значение сезонности
ПРЕДСКАЗ.ETS.СТАТ
Синтаксис:
ПРЕДСКАЗ.ETS.СТАТ ( значения; временная_шкала; тип_статистики; [сезонность]; [заполнение_данных]; [агрегирование] ) |
Новый аргумент один – тип_статистики. Является обязательным. Принимает целые значения от 1 до 8. Я использовал вложенную функцию ПОСЛЕД(8), которая задала массив целых чисел: 1, 2, … , 8. И функция ПРЕДСКАЗ.ETS.СТАТ отработала как функция динамического массива, создав столбец из 8 значений статистики:
Рис. 8. Статистики экспоненциального сглаживания
Первый параметр – альфа = 0,9. Чем он больше, тем больше вес более новых точек данных. Не следует путать коэффициенты, оптимизируемые в модели ETS (α, γ и δ), и значения, возвращаемые функцией ПРЕДСКАЗ.ETS.СТАТ. Это – о разном. Второй параметр – бета = 0,001. Возвращает значение параметра тренда: чем оно больше, тем больше вес более нового тренда. Третий параметр – гамма. Возвращает значение параметра сезонности: чем оно больше, тем больше вес более нового сезонного периода. С четвертого по седьмой параметр – это различные показатели точности прогноза. Восьмой параметр – величина шага, определенную во временной шкале ретроспективных значений. В нашем случае 31 день.
Лист прогноза
Вишенкой на торте является кнопка на ленте, доступная по меню Данные –> Прогноз –> Лист прогноза. Эта кнопка на основе исторических данных создает новый лист Excel с колонками прогноза, границ доверительного интервала, статистикой модели и довольно сносной диаграммой. Итак, встаньте курсором на любую клетку умной таблицы с исходными данными (как на рис. 3) и кликните Лист прогноза. Откроется окно Создание листа прогноза.
Рис. 9. Настройка параметров листа прогноза
Здесь (1) можно выбрать тип диаграммы: график или гистограмма, (2) задать период прогнозирования, (3) выбрать на временной шкале начало прогноза; (4) выбрать величину доверительного интервала, (5) использовать параметр сезонности (число), определяемый функцией ПРЕДСКАЗ.ETS автоматически, или установить сезонность принудительно, (6) указать, выводить ли статистику прогнозной модели.
Если выбрать дату начала прогноза внутри временной шкалы исторических данных, то прогноз для каждой точки будет использовать только данные, предшествующие ей (это называется «ретроспективным прогнозированием»).
Если начать прогнозирование перед последней точкой, можно получить оценку точности прогноза, сравнив прогнозируемый ряд с фактическими данными. Но если начать прогнозирование со слишком ранней даты, построенный прогноз может отличаться от созданного на основе всех статистических данных. При использовании всех статистических данных прогноз будет более точным.
Если в ваших данных прослеживаются сезонные тенденции, то рекомендуется начинать прогнозирование с даты, предшествующей последней точке статистических данных.
Если вы хотите задать сезонность вручную, не используйте слишком короткие ряды исторических значений. Нужно как минимум два полных цикла статистических данных. На коротких исторических данных лучше довериться автоматическому определению сезонности. Если алгоритм не выявит сезонность, прогноз примет вид линейного тренда.
Настроив параметры в окне Создание листа прогноза, нажмите Создать. В нашем примере Excel создаст новый лист, расположенный слева (перед) листом с историческими данными:
Рис. 10. Лист прогноза
Литература
Джон Форман. Много цифр: Анализ больших данных при помощи Excel. Глава 8. Прогнозирование на основе экспоненциального сглаживания. В заметке на сквозном примере в Excel рассмотрено простое экспоненциальное сглаживание, ПЭС (simple exponential smoothing, SES); экспоненциальное сглаживание Холта с корректировкой тренда; анализ автокорреляций в данных; мультипликативное экспоненциальное сглаживание Холта-Винтерса; построение доверительного интервала прогноза методом Монте-Карло.
Левин и др. Статистика для менеджеров. Глава 15. Анализ временных рядов. В заметке: что такое временные ряды; компоненты классической мультипликативной модели временных рядов; сглаживание временных рядов; скользящее среднее; экспоненциальное сглаживание; вычисление трендов с помощью метода наименьших квадратов; модели линейной, квадратичной и экспоненциальной регрессии; выбор модели на основе разностей первого и второго порядка; вычисление тренда с помощью авторегрессии; прогнозирование временных рядов на основе сезонных данных; ловушки, связанные с анализом временных рядов; индексы.
Прогнозирование спроса и продаж. Записки дилетанта. В заметке: общие рассуждения о прогнозировании; постановка задачи прогнозирования; наивные методы прогнозирования (простое среднее, скользящее среднее, взвешенное скользящее среднее); простое экспоненциальное сглаживание; составляющие прогнозной модели (тренд, сезонность); классическая сезонная декомпозиция; экспоненциальное сглаживание с учетом тренда и сезонности (метод Холта-Винтерса); прогнозирование редких продаж (метод Кростона и метод Виллемейна); метод Кростона и страховой запас; функция распределения спроса.
Прогнозирование — хоть и неблагодарное, но необходимое дело и для решения таких задач в Microsoft Excel есть весьма приличный инструментарий — от простейших функций линейного тренда до навороченных статистических инструментов из надстройки Пакет Анализа (Analysis Toolpak). Одними из самых простых в реализации и при этом весьма эффективных являются функции прогнозирования по методу экспоненциального сглаживания.
Суть этого метода (если не вдаваться в математические подробности) можно объяснить относительно легко. Если бы мы, например, делали прогноз совсем примитивным способом по среднему арифметическому, то все исторические данные брались бы с одинаковым весом (в статистике этот метод «средней температуры по больнице» имеет, кстати, даже официальное название — «наивный прогноз»). При прогнозировании же по методу экспоненциального сглаживания принимается идея, что старые данные должны иметь вес меньше, чем новые. Изменение этого веса в зависимости от новизны или старости наших данных происходит по лавинообразной экспоненциальной кривой — отсюда и название методики.
В Microsoft Excel для её реализации есть две основные функции, появившиеся начиная с 2016-й версии Excel:
- ПРЕДСКАЗ.ETS (FORECAST.ETS) — вычисляет будущие спрогнозированные значения на основе исторических данных.
- ПРЕДСКАЗ.ETS.ДОВИНТЕРВАЛ (FORECAST.ETS.CONFINT) — вычисляет размах доверительного интервала — коридора погрешности, в пределах которого с заданной вероятностью наш прогноз должен сбыться.
Особенно приятно, что вводить вручную эти функции и их многочисленные аргументы совершенно не требуется — в Microsoft Excel для этого есть гораздо более удобный инструмент, получивший название Лист прогноза (Forecast Sheet). Давайте рассмотрим работу с ним на следующем примере.
В качестве исходных исторических данных возьмем с сайта AutoVercity реальную статистику по продажам автомобилей в России за 2019-2020 годы (все марки суммарно):
Представим на минуту, что сейчас конец 2020 года и мы хотим, используя эти данные, сделать помесячный прогноз продаж автомобилей на следующие полтора года. Выделим всю нашу таблицу и на вкладке Данные воспользуемся кнопкой Лист прогноза (Data — Forecast Sheet).
В открывшемся окне зададим следующие настройки:
- Дату завершения прогноза
- Сезонность — почти никогда корректно не определяется автоматически, к сожалению, так что лучше задать её вручную. В большинстве бизнесов она годовая (т.е. «узор» колебаний похожим образом повторяется из года в год), так что установим её равной 12 месяцам.
- Вероятность, с которой мы требуем попадания будущих фактических значений в коридор доверительного интервала. Чем больше эта вероятность, тем шире интервал (т.е. более размыт прогноз). Обычно используют значения 90-95%.
- В правом нижнем углу окна можно дополнительно выбрать реакцию на пустые ячейки (их можно заполнить нулями или средним соседних значений — интерполяцией) и на дубликаты (обычно их усредняют). Однако же, по возможности, лучше заранее подготовить исходные исторические данные, чтобы таких пробелов или дублей в них не было.
После нажатия на кнопку Создать будет сформирован новый лист с прогнозной таблицей и диаграммой, которая по ней построена:
В верхней части таблицы будут идти строки с историческими данными (синяя линия), а в момент их окончания произойдет переключение на три новых столбца с прогнозом функцией ПРЕДСКАЗ.ETS и верхней и нижней границами доверительного интервала, вычисленного с помощью функции ПРЕДСКАЗ.ETS.ДОВИНТЕРВАЛ.
Ссылки по теме
- Моделирование и оценка вероятности выигрыша в лотерею
- Оптимизация доставки в Excel с помощью Поиска решения (Solver)
- Быстрое добавление новых данных в диаграмму
Хитрости »
23 Март 2017 156992 просмотров
Скачать файл, используемый в видеоуроке:
Прогноз_продаж.xls (59,5 KiB, 34 781 скачиваний)
Прогнозирование продаж является неотъемлемой частью при планировании работы коммерческих и финансовых служб, поэтому задача довольно актуальная. Вариантов построения прогнозов достаточное множество, но я хочу показать как сделать простой, но в то же время достаточно жизнеспособный прогноз «на скорую руку», без лишних телодвижений и поправок «на ветер»(читайте как: без кучи доп.расчетов, которые применяются для создания более точных прогнозов). Почему я это уточняю? Потому что на мой взгляд, каким бы точным ни был прогноз продаж – это всего лишь предположение и быть уверенным в том, что именно так и будет развиваться ход событий, никак нельзя.
И тем не менее при помощи встроенных в Excel функций мы можем построить довольно неплохой прогноз даже с учетом сезонности. Плюс я хочу показать как сделать не просто прогноз, а прогноз с отклонениями – пессимистичный и оптимистичный. С помощью подобной модели можно будет выстроить тактику продаж таким образом, чтобы постараться максимально «вписаться» в границы между пессимистичным и оптимистичным прогнозом.
А в довершение мы построим красивый график с прогнозом.
Исходные данные
Для расчета прогноза потребуются данные о продажах за ранние периоды. Чем больше данных, тем точнее будет прогноз. Желательно, чтобы были помесячные данные хотя бы за два года. На мой взгляд это тот минимум, на основании которого можно построить весьма точный прогноз с учетом прошлого опыта. Именно из таких данных и будем исходить. Предположим, что у нас есть данные с января 2013 года по август 2015, в табличном виде:
Нам необходимо рассчитать прогноз продаж на будущий год: с сентября 2015 по август 2016 и отразить это на графике. Я специально беру рваный период посреди года, чтобы показать, что начало прогноза может быть с любой даты.
Чтобы дальше в статье не запутать вас столбцами и где они должны быть добавлены, сразу приведу конечную структуру:
Т.е. у нас должно быть именно в указанном порядке 7 столбцов: Период; Продажи компании, руб.; Прогноз; Оптимистичный; Пессимистичный; Коэффициент сезонности; Отклонение. И чтобы все получилось они должны идти точно в таком же порядке, как на картинке выше.
Советую сразу создать все эти столбцы или скачать готовую модель для примера, чтобы дальше использовать именно её для пошагового выполнения описанных ниже действий:
Скачать файл:
Прогноз_продаж.xls (59,5 KiB, 34 781 скачиваний)
В файле два листа:
- Исходные данные — только фактические данные по продажам, без доп.столбцов, чтобы можно было самостоятельно с нуля построить модель
- Прогноз — лист с готовыми функциями и графиком прогноза
В самый низ таблицы, после последней фактической даты, я добавил даты, на которые необходимо построить прогноз(от сен.2015 до авг.2016).
Расчет прогноза
Для расчета непосредственно прогноза в Excel есть специальная функция, которая основываясь на данных предыдущих периодов предсказывает вероятные значения для указанной даты. Она так и называется – ПРЕДСКАЗ(FORECAST). Функция основана на линейной регрессии и специально предназначена именно для прогнозирования продаж, потребления товара и пр. В столбец Прогноз (столбец C – сразу после столбца с суммами продаж) в ячейку
C34
записываем функцию (и распространяем на все прогнозируемые даты –
C34:C45
):
=ПРЕДСКАЗ(A34;$B$2:$B$33;$A$2:$A$33)
=FORECAST(A34,$B$2:$B$33,$A$2:$A$33)
Сама функция требует указания следующих входных данных:
- х — Дата, значение для которой необходимо спрогонозировать (A34)
- Известные значения y — ссылка на ячейки таблицы с суммами продаж за известные периоды ($B$2:$B$33)
- Известные значения x — ссылка на ячейки таблицы с дата продаж за известные периоды ($A$2:$A$33)
С одной стороны, мы уже имеем готовый прогноз, а с другой…Данная функция пока не учитывает фактор сезонности. А это в продажах в большинстве случаев немаловажный фактор. Поэтому желательно потратить еще чуточку времени и сделать так, чтобы прогноз получился еще больше приближен к реальности. Для учета фактора сезонности сначала необходимо вычислить коэффициент сезонности для каждого месяца. Для этого добавим в столбец Коэффициент сезонности следующую формулу:
=(($B$2:$B$13+$B$14:$B$25)/СУММ($B$2:$B$25))*12
=(($B$2:$B$13+$B$14:$B$25)/SUM($B$2:$B$25))*12
Формула вводится в ячейку как формула массива и сразу в 12 ячеек(чтобы получить коэффициенты для каждого месяца года). Для этого сначала выделяем ячейки F2:F13 -переходим в строку формул и вводим формулу выше. После указания верных ссылок на нужные ячейки завершаем ввод формулы одновременным нажатием трех клавиш: Ctrl+Shift+Enter. Если этого не сделать, то функция вернет значение ошибки #ЗНАЧ!(#VALUE!)
Подробнее про принцип работы формулы: она берет отдельно сумму каждого месяца за 2013 и 2014 год, складывает их. Делит полученное значение на общую сумму продаж за весь период целых месяцев(т.е. 24 месяца) и умножает на 12, чтобы получить коэффициент именно за один месяц. И так для каждого месяца. Т.е. для ячейки F2 расчет будет выглядеть следующим образом:
=((56 769+68 521)/ 1 542 293)*12
=((сумма за янв.2013 + сумма за янв.2014)/ общая сумма за два года(янв.2013 – дек.2014))*12
В результате для января получим коэффициент 0,974834224106574, для февраля — 0,989928632237843 и т.д. Я для наглядности назначил ячейкам процентный формат(правая кнопка мыши —Формат ячеек -вкладка Число —Процентный(Format cells —Number —Percent), два знака после запятой):
Теперь добавим учет этих коэффициентов для расчета прогноза в имеющуюся функцию ПРЕДСКАЗ(ячейки C34:C45):
=ПРЕДСКАЗ(A34;$B$2:$B$33;$A$2:$A$33)*ИНДЕКС($F$2:$F$13;МЕСЯЦ(A34))
=FORECAST(A34,$B$2:$B$33,$A$2:$A$33)*INDEX($F$2:$F$13,MONTH(A34))
Здесь применяется функция ИНДЕКС(INDEX), в которой первым аргументом указываем ссылку на 12 ячеек с коэффициентами сезонности($F$2:$F$13), а вторым – номер месяца, чтобы вернуть коэффициент именно для нужного месяца(для этого используем функцию МЕСЯЦ(MONTH), которая возвращает только номер месяца из указанной даты). Для сентября 2015 это будет выглядеть так:
=ПРЕДСКАЗ(A34; $B$2:$B$33; $A$2:$A$33)*ИНДЕКС({97,48%:98,99%:90,38%:94,66%:100,86%:99,02%:100,66%:110,39%:100,47%:104,82%:105,13%:97,14%}; 9)
Основную задачу выполнили – у нас есть прогноз на будущие периоды. Теперь осталось в дополнение к самому прогнозу, создать допустимые верхние и нижние границы, которые часто еще называют оптимистичный прогноз и пессимистичный(но по сути это просто возможное отклонение от прогнозных данных). Такой прогноз даст нам возможность более гибко планировать тактику на будущие периоды.
Для того, чтобы построить такие прогнозы необходимо рассчитать допустимое отклонение от прогнозируемых значений. Здесь так же будем использовать имеющиеся в Excel функции. В ячейку G2 запишем формулу:
=ДОВЕРИТ(0,05; СТАНДОТКЛОН(C34:C45); СЧЁТ(C34:C45))
=CONFIDENCE(0.05,STDEV(C34:C45),COUNT(C34:C45))
ДОВЕРИТ(CONFIDENCE) – возвращает доверительный интервал, используя нормальное распределение.
- алфа – уровень значимости для вычисления доверительного уровня. Используемое в формуле 0,05 означает доверительный уровень в 95%. В большинстве случаев это оптимальное значение
- станд_откл – стандартное отклонение генеральной совокупности. Должно быть известно. Но т.к. мы этими данными не располагаем – то это значение вычисляем при помощи функции СТАНДОТКЛОН(STDEV), передавая ей для расчетов спрогнозированные данные
- размер – указывается целое число, обозначающее количество данных для выборки. Как правило равно количеству спрогнозированных данных. У нас количество определяется функцией СЧЁТ, которая подсчитывает количество чисел в указанных ячейках.
Теперь в ячейки столбцов Оптимистичный и Пессимистичный(D и E), начиная со строки 34, запишем такие формулы:
Оптимистичный: =$C34+$G$2
Пессимистичный: =$C34-$G$2
Т.е. мы для оптимистичного прогноза берем сумму прогноза и прибавляем к ней сумму рассчитанного отклонения. А для пессимистичного, мы сумму отклонения вычитаем. Вот мы и получили все необходимые данные.
График
Но было бы кощунством с нашей стороны проделать такую работу и не использовать возможности Excel для построения красивого графика. Придется добавить немного шаманства(на деле, мы уже начали шаманить, когда стали записывать прогноз в отдельный столбец, а не продолжать его в том же столбце, что и фактические продажи). В ячейки C33, D33 и E33 скопируем значение из ячейки B33, чтобы они все имели одинаковые значения:
Теперь выделяем все данные (A1:E45), переходим на вкладку Вставка(Insert) – группа Диаграммы(Charts) —График(Line). И получим такую картину:
Наглядно и сразу понятно что к чему и чего можно ожидать.
- Синим – фактические продажи
- Оранжевый – прогноз
- Серый – Оптимистичный прогноз
- Желтый – Пессимистичный
Согласитесь, такой график смотрится достаточно эффектно и может украсить собой отчет для руководства. Особенно, если проявить немного фантазии и отформатировать график в соответствии с корпоративными цветами компании.
Быстрый прогноз в Excel 2016 и выше
Начиная с версии 2016 в Excel появилась замечательная возможность создать прогноз двумя кликами мыши. При этом сразу с оптимистичным и пессимистичным развитием событий и графиком. За основу возьмем все те же исходные данные из двух столбцов:
Выделяем необходимые данные из двух столбцов -переходим на вкладку Данные(Data) -группа Прогноз(Forecast) —Лист прогноза(Forecast Sheet):
В появившемся окне раскрываем пункт Параметры(Options) и настраиваем:
- Завершение прогноза(Forecase End) – указывается дата, которой должен заканчиваться прогноз. Я советую всегда проверять эту дату, т.к. по умолчанию Excel почти всегда выставляет некую среднюю дату, которая отличается от необходимой.
- Начало прогноза(Forecase Start) – указывается дата, с которой необходимо начать строить прогноз. Как правило это последняя дата фактических данных. Если указать дату, которая будет раньше последней даты фактических данных, то для построения прогноза будут использоваться данные только ДО этой даты (так же это называется «ретроспективным прогнозированием»).
- Доверительный интервал(Confidence interval) – этот пункт поможет понять, насколько точно построен прогноз. Чем больше будет доверительный интервал, тем меньше точность прогноза и чем меньше доверительный интервал – тем выше точность прогноза. Что вполне логично. По умолчанию определяется для 95% точек, хотя его можно изменить в соответствующем поле. Если интервал создавать не нужно – снять галочку.
- Сезонность(Seasonality) – как понятно из названия, отвечает за определение фактора сезонности. Лучше оставлять автоматическим, при котором сезонность определяется на основании всех точек месяцев(т.е. 12). Но если этот фактор необходимо рассчитывать из иного количества точек, то необходимо выбрать Установка вручную и указать нужное количество точек. Но следует учитывать, что если точек будет недостаточно – то прогноз может быть очень неточным и график в итоге будет иметь вид, далекий от ожидаемого.
- Диапазон временной шкалы(Timeline Range) – указывается диапазон значений с датами фактических продаж, на основании которых необходимо построить прогноз. По размерам должен совпадать с параметром Диапазон значений.
- Диапазон значений(Values Range) – указывается диапазон значений с суммами фактических продаж, на основании которых необходимо построить прогноз. По размерам должен совпадать с параметром Диапазон временной шкалы.
- Заполнить отсутствующие точки с помощью(Fill Missing Poins Using) – если каких-то данных не хватает(например, имеются пропуски в ячейках с суммами), то можно выбрать чем эти данные заполнить. По умолчанию используется интерполяция. Это означает, что отсутствующие данные вычисляется как взвешенное среднее соседних ячеек, если отсутствует менее 30 % точек. Если необходимо заполнять отсутствующие точки нулями, то необходимо выбрать из выпадающего списка пункт Нули.
- Объединить дубликаты с помощью(Aggregate Duplicates Using) – если в фактических данных есть повторяющиеся даты, то Excel объединит их в одну точку с этой датой, а в качестве суммы подставит среднее арифметическое для этой даты. Это оптимальный вариант, но так же допускается выбрать из списка и другую функцию: Количество, СЧЁТЗ, Максимум, Медиана, Минимум, Сумма.
- Включить статистические данные прогноза(Include Forecast Statistics) – при включении данного пункта на листе с таблицей графика правее основных данных будет создана таблица с дополнительной статистической информации о прогнозе. В таблице при помощи функции ПРЕДСКАЗ.ЕTS.СТАТ будут рассчитаны коэффициенты сглаживания (Альфа, Бета, Гамма), и метрики ошибок (MASE, SMAPE, MAE, RMSE).
После нажатия кнопки Создать(Create) будет создан новый лист, в котором будет создана таблица со всеми необходимыми данными и формулами и готовым графиком:
если при создании был отмечен пункт Включить статистические данные прогноза(Include Forecast Statistics), то правее таблицы основных данных будет так же создана таблица статистических данных:
Скачать файл:
Прогноз_продаж.xls (59,5 KiB, 34 781 скачиваний)
Так же см.:
Как быстро подобрать оптимальный вариант решения
Автообновляемая сводная таблица
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика
Сезонность спроса – это явление, при котором спрос на определенные товары и услуги изменяется под влиянием внешних факторов. В контексте вашего сайта – это колебания трафика, зависящие от внешних факторов. Этот параметр аналитики, помогает точнее оценить периоды роста и падения трафика и причины этих скачков.
Целью любого прогнозирования является выявление текущей тенденции, и определение предполагаемого результата в отношении изучаемого объекта на определенный момент времени в будущем.
Одним из самых популярных видов графического прогнозирования в Экселе является экстраполяция выполненная построением линии тренда.
Попробуем предсказать сумму прибыли предприятия через 3 года на основе данных по этому показателю за предыдущие 12 лет.
Способ 2: оператор ПРЕДСКАЗ
Экстраполяцию для табличных данных можно произвести через стандартную функцию Эксель ПРЕДСКАЗ. Этот аргумент относится к категории статистических инструментов и имеет следующий синтаксис:
=ПРЕДСКАЗ(X;известные_значения_y;известные значения_x)
«X» – это аргумент, значение функции для которого нужно определить. В нашем случае в качестве аргумента будет выступать год, на который следует произвести прогнозирование.
«Известные значения y» — база известных значений функции. В нашем случае в её роли выступает величина прибыли за предыдущие периоды.
«Известные значения x» — это аргументы, которым соответствуют известные значения функции. В их роли у нас выступает нумерация годов, за которые была собрана информация о прибыли предыдущих лет.
Естественно, что в качестве аргумента не обязательно должен выступать временной отрезок. Например, им может являться температура, а значением функции может выступать уровень расширения воды при нагревании.
При вычислении данным способом используется метод линейной регрессии.
Давайте разберем нюансы применения оператора ПРЕДСКАЗ на конкретном примере. Возьмем всю ту же таблицу. Нам нужно будет узнать прогноз прибыли на 2018 год.
- Выделяем незаполненную ячейку на листе, куда планируется выводить результат обработки. Жмем на кнопку «Вставить функцию».
- Открывается Мастер функций. В категории «Статистические» выделяем наименование «ПРЕДСКАЗ», а затем щелкаем по кнопке «OK».
- Запускается окно аргументов. В поле «X» указываем величину аргумента, к которому нужно отыскать значение функции. В нашем случаем это 2018 год. Поэтому вносим запись «2018». Но лучше указать этот показатель в ячейке на листе, а в поле «X» просто дать ссылку на него. Это позволит в будущем автоматизировать вычисления и при надобности легко изменять год.
В поле «Известные значения y» указываем координаты столбца «Прибыль предприятия». Это можно сделать, установив курсор в поле, а затем, зажав левую кнопку мыши и выделив соответствующий столбец на листе.
Аналогичным образом в поле «Известные значения x» вносим адрес столбца «Год» с данными за прошедший период.
После того, как вся информация внесена, жмем на кнопку «OK».
- Оператор производит расчет на основании введенных данных и выводит результат на экран. На 2018 год планируется прибыль в районе 4564,7 тыс. рублей. На основе полученной таблицы мы можем построить график при помощи инструментов создания диаграммы, о которых шла речь выше.
- Если поменять год в ячейке, которая использовалась для ввода аргумента, то соответственно изменится результат, а также автоматически обновится график. Например, по прогнозам в 2019 году сумма прибыли составит 4637,8 тыс. рублей.
Но не стоит забывать, что, как и при построении линии тренда, отрезок времени до прогнозируемого периода не должен превышать 30% от всего срока, за который накапливалась база данных.
Способ 3: оператор ТЕНДЕНЦИЯ
Для прогнозирования можно использовать ещё одну функцию – ТЕНДЕНЦИЯ. Она также относится к категории статистических операторов. Её синтаксис во многом напоминает синтаксис инструмента ПРЕДСКАЗ и выглядит следующим образом:
=ТЕНДЕНЦИЯ(Известные значения_y;известные значения_x; новые_значения_x;[конст])
Как видим, аргументы «Известные значения y» и «Известные значения x» полностью соответствуют аналогичным элементам оператора ПРЕДСКАЗ, а аргумент «Новые значения x» соответствует аргументу «X» предыдущего инструмента. Кроме того, у ТЕНДЕНЦИЯ имеется дополнительный аргумент «Константа», но он не является обязательным и используется только при наличии постоянных факторов.
Данный оператор наиболее эффективно используется при наличии линейной зависимости функции.
Посмотрим, как этот инструмент будет работать все с тем же массивом данных. Чтобы сравнить полученные результаты, точкой прогнозирования определим 2019 год.
- Производим обозначение ячейки для вывода результата и запускаем Мастер функций обычным способом. В категории «Статистические» находим и выделяем наименование «ТЕНДЕНЦИЯ». Жмем на кнопку «OK».
- Открывается окно аргументов оператора ТЕНДЕНЦИЯ. В поле «Известные значения y» уже описанным выше способом заносим координаты колонки «Прибыль предприятия». В поле «Известные значения x» вводим адрес столбца «Год». В поле «Новые значения x» заносим ссылку на ячейку, где находится номер года, на который нужно указать прогноз. В нашем случае это 2019 год. Поле «Константа» оставляем пустым. Щелкаем по кнопке «OK».
- Оператор обрабатывает данные и выводит результат на экран. Как видим, сумма прогнозируемой прибыли на 2019 год, рассчитанная методом линейной зависимости, составит, как и при предыдущем методе расчета, 4637,8 тыс. рублей.
Виды сезонности
Обычно выделяют три вида сезонности, они отличаются по спаду в разнице продаж:
Умеренная: разница в пределах 10-20%, практически не влияет на финансовое самочувствие компании. Характерно для товаров повседневного спроса. Продавцы и поставщики чувствуют себя комфортно на протяжении всего года;
Яркая: разница спада продаж достигает 30-40%, приходится стимулировать спрос, чтобы не случился кассовый разрыв;
Жёсткая: падение продаж на 50-100%, нет шансов вернуть объёмы на прежние показатели. Есть ли смысл стимулировать спрос на новогодние ёлочные игрушки и валентинки в августе?
Причины сезонности
В первую очередь, сезонная торговля зависит от смены времен года — это главная причина возникновения сезонностей, и это связано с изменением средней температуры и климата. Очевидно, что спрос на товары уличного спорта и велосипеда проседает зимой, а популярность тёплых вещей возрастает.
Еще одна главная причина сезонности — это календарные события. Перед Новым годом люди массово закупаются подарками и продуктами для праздничного стола, а перед 23 февраля — носками для мужчин.
Устоявшиеся традиции и привычки тоже вносят большой вклад в сезонность. Если до Нового года наблюдается всплеск потребительской активности, то после 1 января наступает «мертвый сезон». Это связано с новогодними каникулами, которые утверждены на законодательном уровне. Большинство людей сидят и отдыхают дома после покупок и праздника, а значит меньше ходят в магазины. Поэтому компании часто сокращают маркетинговый бюджет на январь, потому что сезонный спрос падает.
Как использовать сезонность в маркетинговой кампании
Планирование эффективной сезонной кампании требует не только отличной организации, но и времени. Ниже приведены некоторые советы, которые помогут выстроить эффективную кампанию.
Выберите правильное предложение под сезон
В каждом сезоне актуальны свои предложения. Главное здесь — быть избирательным, проводить исследования и собирать данные о том, когда ваши клиенты наиболее активны.
Если есть достаточно понятная взаимосвязь между событием или сезоном и вашим предложением, тем легче адаптировать их и связать вместе. Но даже для услуг, не привязанных к времени года, можно придумать повод для вовлечения аудитории.
Не забывайте и о спонтанных событиях — открытие новых туристических направлений, законодательные запреты и разрешения могут послужить триггером для успешного продаж.
Например, если выйдет закон о полном запрете авиапассажирам провоза внешних аккумуляторов ёмкостью выше 5 000 mAh в ручной клади, продажи ваших скромных пауэрбанков на 2 000 mAh могут подскочить при запуске грамотной маркетинговой кампании.
О таких банальностях, как цветы и торты на 8 марта и 1 сентября не стоит и говорить. В эти праздники не готовит специальные предложения только тот, у кого бизнес абсолютно не может быть ассоциирован с ними — например, продажи бурильного оборудования.
Постройте коммуникации
- Составьте карту пути клиента и точки контакта с ним. Карта даёт общее представление об опыте клиента: первоначальный контакт, процесс взаимодействия и перспективы долгосрочных отношений.
- Обратитесь к эмоциям — это позволит создать более тесную связь с вашей аудиторией и сделает их восприимчивыми к вашему сообщению.
- Призыв к действию: разработайте CTA для всех этапов коммуникации. Для каждого шага должно быть продумано ясное побуждение к действию. Не заставляйте людей продираться сквозь многослойные намёки.
Выделите бюджет
Ключом к успешной сезонной маркетинговой кампании является точная настройка бюджет во избежание сюрпризов.
Помимо увеличенных расходов на интернет-маркетинг, продумайте, какие дополнительные затраты могут иметь место:
- Бонусы и подарки для клиентов;
- Расходы на мероприятия;
- Расходы на зарплату сезонных работников;
- Транспортные расходы, если вы рассылаете подарки.
Чтобы оптимизировать расходы на рекламу, используйте сквозную аналитику — она отражает полную картину эффективности каждого канала коммуникации.
Ниже на рисунке представлены исходные данные. Допустим по этим данным необходимо составить прогноз продаж на 2020-й год, не смотря на то что собранные статистические данные заканчиваются в декабре 2019-го года. Первым шагом является использование функции ПРЕДСКАЗ и расширение десезонализированных данных на очередные 12 месяцев. Формулы в таблицах:
- Расчет коэффициента сезонности для каждого месяца в году:
- Расчет десезонализации на основе коэффициентов:
- Формула для прогнозирования показателей реализации в январе 2020-го года находится в том же столбце в ячейке C26 и выглядит следующим образом:
- Формула прогноза сезонности на 2020-й год:
Для прогнозирования будущих значений функция ПРЕДСКАЗ использует метод линейной регрессии. Функция содержит 3 аргумента:
- X – в данном аргументе будет указан месяц, для которого следует получить текущее прогнозируемое значение.
- Известные значения y – аргумент содержит десезонализированные данные столбца C.
- Известные значения x – здесь указаны месяца соответствующие данным по продажам в столбце A.
После создания с помощью функции ПРЕДСКАЗ прогнозируемых значений для всех месяцев следует восстановить сезонность данных, применяя коэффициенты в таблице, показанной на последнем рисунке выше.
Для расчета значений тренда:
- Определим коэффициенты уравнения линейного тренда y=bx+a с помощью функции Excel =Линейн(). Для этого в ячейки Excel вводим функцию =линейн(объёмы продаж за 5 лет; номера периодов; 1;0).
Выделяем 2 ячейки, в левой – формула =линейн(), нажимаем комбинацию клавиш в следующей последовательности (F2 + Ctrl+Shift+Enter). Excel рассчитает для нас значение коэффициентов a и b.
- Рассчитываем значения тренда. Для этого в уравнение y=bx+a подставляем рассчитанные коэффициенты тренда b и а, x – номер периода во временном ряде. Получаем y-значения линейного тренда для каждого периода.
Для расчета коэффициентов сезонности:
- Рассчитываем отклонение фактических значений от значений тренда. Для этого фактические значения делим на значения тренда;
- Для каждого месяца определяем среднее отклонение за последние 5 лет.
- Определяем общий индекс сезонности — среднее значение коэффициентов, рассчитанных в 4 пункте;
- Рассчитываем коэффициенты сезонности
Из чего состоит временной ряд
Уровни временного ряда (Yt) представляют из себя сумму двух компонент:
- Регулярную составляющую
- Случайную составляющую
В свою очередь регулярная составляющая состоит из:
- Тренда
- Сезонности
- Циклической составляющей
Однако, в модели необязательно наличие всех этих компонент сразу.
Случайная компонента отражает влияние случайных возмущений на модель, которые по отдельности имеют незначительное воздействие, но суммарно их влияние ощущается.
То есть, в общем случае временной ряд представляет из себя наличие четырех составляющих:
- Тренд (Tt)
- Сезонность (St)
- Цикличность (Ct)
- Случайные возмущения (Et)
Циклическая компонента, по сравнению с сезонностью, имеет более длительный эффект и меняется от цикла к циклу. Поэтому, ее обычно объединяют с трендом.
Виды моделей временного ряда
Обычно, выделяют две модели временного ряда и третью — смешанную.
Аддитивная модель
При выборе необходимой модели временного ряда смотрят на амплитуду колебаний сезонной составляющей. Если ее колебания относительно постоянны, то выбирают аддитивную модель. То есть, амплитуда колебаний примерно одинакова:
- Если амплитуда сезонных колебаний возрастает или уменьшается, строят мультипликативную модель временного ряда, которая ставит уровни ряда в зависимость от значений сезонной компоненты.
- Построение этих моделей сводится к расчету тренда (Tt), сезонности (St) и случайных возмущений (Et) для каждого уровня ряда (Yt).
Источники
- https://racurs.agency/blog/seo/sezonnost-sprosa/
- https://lumpics.ru/forecasting-in-excel/
- https://blog.calltouch.ru/chto-takoe-sezonnost-sprosa-i-kak-stimulirovat-prodazhi-v-nesezon/
- https://exceltable.com/formuly/formula-predskaz-dlya-prognoza-prodazh
- https://4analytics.ru/prognozirovanie/kak-rasschitat-prognoz-prodaj-s-uchetom-rosta-i-sezonnosti-v-excel.html
- https://iiorao.ru/word/kak-sdelat-prognoz-prodazh-v-excel.html
Как рассчитать коэффициенты сезонности, очищенные от роста?
Из данной статьи вы узнаете, как в MS Excel рассчитать коэффициенты сезонности очищенные от роста.
Для чего используют коэффициенты сезонности:
-
Для расчета прогноза;
-
Для планирования деятельности, т.е. для определения приоритетов по месяцам в рамках года;
-
Для выбора лучшего времени проведения мероприятий по стимулированию сбыта для товаров или услуг;
-
Для выбора лучшего времени для рекламирования товаров или услуг;
и т.д.
Из данной статьи вы узнаете, как рассчитать индексы сезонности и пики в Excel. А также, для чего их используют на практике.
Как рассчитать аддитивную сезонность в Excel
Из данной статьи вы узнаете
- Что такое аддитивная сезонность,
- Как рассчитать аддитивную сезонность в Excel,
- Как учесть аддитивную сезонность в прогнозе.
Как сделать эффективный план график продвижения в рамках года?
Из данной статьи вы узнаете, как эффективно распределить активность по продвижению товаров из разных товарных групп в рамках года.
Ситуация — у нас более 10 товарных групп с разной сезонностью. Вопрос, в какие месяцы эффективнее всего запланировать и провести мероприятия по стимулированию сбыта, для того, чтобы затраты дали максимальную отдачу?
Видео аддитивная и мультипликативная сезонность
В данной статье вы сможете посмотреть видео о видах сезонности — аддитивной и мультипликативной.
Как оценить сезонность и учитывать ее при прогнозировании, смотрите в видео…
До Excel 2016 Excel предлагал несколько инструментов прогнозирования, которые подходили не для каждой ситуации. Если бы ваши данные о продажах включали некоторую сезонность, старые инструменты прогнозирования не справились бы. Рассмотрим кинотеатр, где пик продаж приходится на выходные и резко падает в понедельник. Используя старую линейную линию тренда, Excel показывает R-квадрат 0,02, что означает, что линия тренда делает ужасную работу по предсказанию будущего.
В Excel 2016 появился новый набор функций прогнозирования и значок на вкладке «Данные» на ленте для создания листа прогнозов. Если у вас есть данные с датой в столбце A и продажами в столбце B, выберите данные и выберите Данные, лист прогноза.
В диалоговом окне «Создать лист прогноза» нажмите «Параметры», просмотрите «Сезонность» и запросите статистику. Нажмите кнопку «Создать», и Excel вставит новый рабочий лист с функциями FORECAST.ETS для создания прогноза. Показанная ошибка 3% означает, что этот прогноз объясняет большую часть изменчивости.
Осторожно
Таблица прогнозов работает хорошо, если у вас один уровень сезонности: больше посетителей кино в пятницу или больше покупателей подарков в ноябре и декабре. Но если ваши реальные данные требуют как декабрьского бума, так и пика субботы и воскресенья, FORECAST.ETS не справится с этим.
Наблюдения и советы этой статьи мы подготовили на основании опыта команды ПРОГНОЗ.ETS.СЕЗОННОСТЬ функция возвращает длину сезонного шаблона на основе существующих значений и временной шкалы.
Примечание: Эта функция FORECAST.ETS доступна только в Excel 2016 и более поздних версиях и недоступна в Excel для Интернета, iOS или Android.
Синтаксис
FORECAST.ETS.SEASONALITY(values, timeline, [data_completion], [aggregation])
аргументы
- Ценности (обязательно): существующие или исторические известные значения, для которых вы хотите предсказать следующую точку (значения y);
- Лента (обязательно): диапазон даты/времени или числовых значений, соответствующих «Значениям» (x значений);
- Data_completion (необязательно): числовое значение указывает, как обрабатывать отсутствующие точки на временной шкале. Это может быть:
0: пропущенные точки будут считаться нулями;
1 or опущен: Недостающие точки будут рассчитаны как среднее значение соседних точек.
- агрегирование (необязательно): числовое значение указывает, какая функция будет использоваться для агрегирования нескольких значений с одной и той же отметкой времени. Значения и соответствующие функции перечислены ниже.
Числовое значение | Функция |
1 или опущено | СРЕДНЯЯ |
2 | СЧИТАТЬ |
3 | COUNTA |
4 | MAX |
5 | MEDIAN |
6 | MIN |
7 | SUM |
Замечания
1. Если повторяющийся сезонный паттерн не обнаружен, возвращается ноль;
2. Сезонный характер, возвращаемый функцией ПРОГНОЗ.ETS.СЕЗОННОСТЬ, совпадает с автоматически вычисляемым функцией ПРОГНОЗ.ETS (аргумент «сезонность» определен как 1);
3. # N / A ошибка возникает, если «значения» и «Лента новостей» массивы не одного размера;
4. #NUM! ошибка возникает при выполнении любого из следующих условий:
— Все «Лента новостей» значения одинаковы;
— Постоянный шаг не может быть идентифицирован на предоставленной временной шкале;
— «завершение_данных» любое число, отличное от 0 или 1;
— «агрегация» находится вне допустимого диапазона (1-7).
5. #СТОИМОСТЬ! ошибка возникает, когда [данные_завершение] or [агрегация] не является числовым.
Возвращаемое значение
Он возвращает положительное целое число.
Пример
Как показано в таблице ниже, вы применили функцию ПРОГНОЗ.ETS (формула показана ниже) для прогнозирования продаж с января по июль 2022 года на основе ежемесячных продаж за 2021 год.
=FORECAST.ETS(B18,$C$6:$C$17,$B$6:$B$17,1,1,1)
В формуле аргумент «сезонность» указан как 1, что указывает Excel автоматически определять сезонность и определять правильную продолжительность сезонного шаблона. Чтобы узнать длину этого сезонного шаблона, автоматически заданного Excel, вы можете сделать следующее.
1. Выберите ячейку (в данном случае E6), скопируйте или введите приведенную ниже формулу и нажмите клавишу Enter ключ для получения результата.
=FORECAST.ETS.SEASONALITY(C6:C24,B6:B24,1,1)
Связанные функции
Функция ПРОГНОЗ Excel
Функция ПРОГНОЗ предсказывает будущее значение на основе существующих значений с помощью линейной регрессии.
Функция Excel ПРОГНОЗ.ETS
Функция FORECAST.ETS использует алгоритм экспоненциального сглаживания (ETS) для прогнозирования будущего значения на основе ряда существующих значений.
Функция Excel ПРОГНОЗ.ETS.CONFINT
Функция FORECAST.ETS.CONFINT вычисляет доверительный интервал для значения прогноза на указанную целевую дату.
Функция Excel ПРОГНОЗ.ETS.STAT
Функция FORECAST.ETS.STAT возвращает указанное статистическое значение в результате прогнозирования временных рядов.
Excel ПРОГНОЗ.ЛИНЕЙНАЯ функция
ПРОГНОЗ.ЛИНЕЙНАЯ функция прогнозирует будущее значение на основе существующих значений с помощью линейной регрессии.
Лучшие инструменты для работы в офисе
Kutools for Excel — Помогает вам выделиться из толпы
Хотите быстро и качественно выполнять свою повседневную работу? Kutools for Excel предлагает 300 мощных расширенных функций (объединение книг, суммирование по цвету, разделение содержимого ячеек, преобразование даты и т. д.) и экономит для вас 80 % времени.
- Разработан для 1500 рабочих сценариев, помогает решить 80% проблем с Excel.
- Уменьшите количество нажатий на клавиатуру и мышь каждый день, избавьтесь от усталости глаз и рук.
- Станьте экспертом по Excel за 3 минуты. Больше не нужно запоминать какие-либо болезненные формулы и коды VBA.
- 30-дневная неограниченная бесплатная пробная версия. 60-дневная гарантия возврата денег. Бесплатное обновление и поддержка 2 года.
Вкладка Office — включение чтения и редактирования с вкладками в Microsoft Office (включая Excel)
- Одна секунда для переключения между десятками открытых документов!
- Уменьшите количество щелчков мышью на сотни каждый день, попрощайтесь с рукой мыши.
- Повышает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
- Добавляет эффективные вкладки в Office (включая Excel), точно так же, как Chrome, Firefox и новый Internet Explorer.
Комментарии (0)
Оценок пока нет. Оцените первым!