grishenkovp / project_cheese_market

Моделирование рынка при динамическом ценообразовании

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Моделирование рынка при динамическом ценообразовании

Введение

При разработке первой версии проекта была допущена ошибка в архитектуре: при каждой итерации расчетов происходили запросы в БД, поэтому симулятор получился очень медленным. Было принято решение отказаться от данной концепции и задействовать во второй версии только структуры языка Python и возможности библиотеки Pandas. Это привело к ускорению примерно в 20 раз, при этом базовая логика осталась неизменной. Теперь можно строить модели для некольких тысяч клиентов. Первая версия сохранена только для ознакомительных целей и может содержать ошибки и неточности в коде!

Шаг 1

Приступаем к разработке прототипа модели. Для примера возьмем рынок сыра. Представим, что у нас нет в распоряжении истории продаж за предыдущие периоды, поэтому мы будем опираться только на данные, которые можно найти на просторах Интернета. Их статистическая точность в данном случае не важна, так как по факту они лишь ориентиры при настройке модели. Исходя из среднестатистической нормы потребления сыра в нашей стране рассчитываем общий объем продаж, среднесуточное потребление на одного человека, также сформируем структуру реализации по видам продукта. Первоначальные расчеты Количество населения не равно количеству покупателей. Зная пропорции распределения одиночек и разных видов семей, можно посчитать приблизительное количество потенциальных покупателей в городе. Со структурой ритейлеров, которые занимаются продажей сыров, дело обстоит несколько сложнее. Фактический пересчет всех магазинов в городе – дело весьма трудоемкое, но можно руководствоваться процентами, которые занимают федеральные торговые сети во всей стране. Если тот или иной ритейлер отсутствует в конкретном регионе, его долю можно отдать местным магазинам.

Шаг 2

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

Шаг 3

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

Шаг 4

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

Шаг 5

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

Оценка такого способа моделирования рынка

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

About

Моделирование рынка при динамическом ценообразовании

License:MIT License


Languages

Language:Python 100.0%