🏷️Ценообразование: часть 2. Как мы делали dynamic pricing в Яндекс.Такси
🗓️ Во-первых, вспомним про контекст 2017 года, когда в такси появлялся ML в ценообразовании. Был ряд крупных игроков, среди которых Gett, Uber и Яндекс.Такси, которые довольно активно конкурировали. Особенно последние два. Каждый игрок на рынке имел свою тарификацию за километр и за минуту (которые постепенно у всех примерно сошлись), итоговая цена - это стоимость времени плюс стоимость расстояния.
🤔 Можно ли здесь накинуть 20% сверх вашей ценовой политики «просто так» и «потому что купят»? Скорее нет, потому что не купят. Откроют соседнее приложение и закажут там дешевле. А вот когда действительно есть простор для конкуренции, так это когда водители в районе кончились. Если вы можете увезти клиента, а конкурент нет - клиент достанется вам.
💡 Отсюда возникает идея: динамическое ценообразование должно делать так, чтобы водителей всегда хватало, т.е. срезать часть спроса. Здесь есть серьезный плюс и для клиента: если такой прайсинг работает, то клиент всегда сможет уехать на такси, пусть иногда и за дорого.
Таким образом, если водителей много, оставляем обычные цены, а вот если водителей становится меньше, чем спрос на поездки, умножаем базовую цену на повышающий коэффициент. Коэффициент должен выводить систему в состояние баланса: в пик спроса количество освобождающихся рядом водителей должно быть примерно равно количеству заказов, которые сделают в ближайшее время.
⚖️ Уравнение, которое описывает это состояние динамического равновесия (мы называли его «уравнение баланса»), можно записывать по-разному, дорабатывать и модифицировать. Этим занималась команда эффективности платформы под руководством Саши Аникина (ныне СЕО Яндекс.Go).
Моя же команда делала прогнозные ML-модели, которые были нужны для уравнения. Например, про водителей мы еще понимаем, кто и когда закончит поездку в заданном районе. А вот про пассажиров действительно нужно прогнозировать, с какой вероятностью пин превратиться в заказ (в зависимости от цены). Дальше суммируем вероятности в заданном районе, чтобы получить матожидание заказов, и подбираем такую цену, чтобы нам хватило притока водителей в район эти заказы вывезти.
Уравнение баланса можно усложнять и усложнять. Например, можно учесть, что как только водители видят сурдж на карте, они начинают специально переезжать в район подороже. Или можно добавлять вероятность того, что водитель все равно не возьмет заказ. Или вероятность отмены.
☝️Но идейно простой модели уже достаточно, чтобы решать основную задачу - всегда давать пассажиру уехать. Это когда у вас есть такси по цене х2 вы огорчаетесь. А вот я вас уверяю, если все уехали по х1, а вы просто не уедете - это куда обиднее :) Недавно попадал в такую ситуацию в другой стране, совсем не понравилось.
Задавайте в комментариях вопросы про модели ценообразования, в следующем посте я отвечу на популярные мифы и то, что еще поместится в пост :)
P.S.: скорее всего, сейчас алгоритмы уже совсем поменялись, все-таки прошло много времени и рынок теперь другой, но несколько лет с 2017 все работало как-то так
🏷️Ценообразование: часть 2. Как мы делали dynamic pricing в Яндекс.Такси
🗓️ Во-первых, вспомним про контекст 2017 года, когда в такси появлялся ML в ценообразовании. Был ряд крупных игроков, среди которых Gett, Uber и Яндекс.Такси, которые довольно активно конкурировали. Особенно последние два. Каждый игрок на рынке имел свою тарификацию за километр и за минуту (которые постепенно у всех примерно сошлись), итоговая цена - это стоимость времени плюс стоимость расстояния.
🤔 Можно ли здесь накинуть 20% сверх вашей ценовой политики «просто так» и «потому что купят»? Скорее нет, потому что не купят. Откроют соседнее приложение и закажут там дешевле. А вот когда действительно есть простор для конкуренции, так это когда водители в районе кончились. Если вы можете увезти клиента, а конкурент нет - клиент достанется вам.
💡 Отсюда возникает идея: динамическое ценообразование должно делать так, чтобы водителей всегда хватало, т.е. срезать часть спроса. Здесь есть серьезный плюс и для клиента: если такой прайсинг работает, то клиент всегда сможет уехать на такси, пусть иногда и за дорого.
Таким образом, если водителей много, оставляем обычные цены, а вот если водителей становится меньше, чем спрос на поездки, умножаем базовую цену на повышающий коэффициент. Коэффициент должен выводить систему в состояние баланса: в пик спроса количество освобождающихся рядом водителей должно быть примерно равно количеству заказов, которые сделают в ближайшее время.
⚖️ Уравнение, которое описывает это состояние динамического равновесия (мы называли его «уравнение баланса»), можно записывать по-разному, дорабатывать и модифицировать. Этим занималась команда эффективности платформы под руководством Саши Аникина (ныне СЕО Яндекс.Go).
Моя же команда делала прогнозные ML-модели, которые были нужны для уравнения. Например, про водителей мы еще понимаем, кто и когда закончит поездку в заданном районе. А вот про пассажиров действительно нужно прогнозировать, с какой вероятностью пин превратиться в заказ (в зависимости от цены). Дальше суммируем вероятности в заданном районе, чтобы получить матожидание заказов, и подбираем такую цену, чтобы нам хватило притока водителей в район эти заказы вывезти.
Уравнение баланса можно усложнять и усложнять. Например, можно учесть, что как только водители видят сурдж на карте, они начинают специально переезжать в район подороже. Или можно добавлять вероятность того, что водитель все равно не возьмет заказ. Или вероятность отмены.
☝️Но идейно простой модели уже достаточно, чтобы решать основную задачу - всегда давать пассажиру уехать. Это когда у вас есть такси по цене х2 вы огорчаетесь. А вот я вас уверяю, если все уехали по х1, а вы просто не уедете - это куда обиднее :) Недавно попадал в такую ситуацию в другой стране, совсем не понравилось.
Задавайте в комментариях вопросы про модели ценообразования, в следующем посте я отвечу на популярные мифы и то, что еще поместится в пост :)
P.S.: скорее всего, сейчас алгоритмы уже совсем поменялись, все-таки прошло много времени и рынок теперь другой, но несколько лет с 2017 все работало как-то так
BY Kantor.AI
Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283
The lead from Wall Street offers little clarity as the major averages opened lower on Friday and then bounced back and forth across the unchanged line, finally finishing mixed and little changed.The Dow added 33.18 points or 0.10 percent to finish at 34,798.00, while the NASDAQ eased 4.54 points or 0.03 percent to close at 15,047.70 and the S&P 500 rose 6.50 points or 0.15 percent to end at 4,455.48. For the week, the Dow rose 0.6 percent, the NASDAQ added 0.1 percent and the S&P gained 0.5 percent.The lackluster performance on Wall Street came on uncertainty about the outlook for the markets following recent volatility.
Importantly, that investor viewpoint is not new. It cycles in when conditions are right (and vice versa). It also brings the ineffective warnings of an overpriced market with it.Looking toward a good 2022 stock market, there is no apparent reason to expect these issues to change.