Мне надоели фейковые скидки на маркетплейсах, поэтому я написал сервис, который сам хранит историю цен
Наверняка вы видели такое:
99 990 ₽ -> 39 990 ₽
Выглядит как скидка почти 60%.
А потом оказывается, что товар последние месяцы и так стоил 39 - 42 тысячи.
В какой-то момент мне стало интересно:
а что, если вообще не верить зачёркнутой цене магазина?
Так появился PriceSniper.
Это сервис, который круглосуточно следит за товарами, сохраняет собственную историю цен и пытается находить моменты, когда товар реально становится сильно дешевле обычного.
Пока первый источник - Яндекс Маркет.
Схема примерно такая:
новая цена → история товара → медиана → аномалия → повторная проверка → публикация
То есть магазин может написать хоть «−70%», но PriceSniper смотрит не на это, а на то, сколько товар реально стоил раньше.
Например:
обычная цена - около 359 ₽сейчас - 198 ₽отклонение - примерно −45%PriceSniper Score - 90/100
Если изменение выглядит подозрительно сильным, система перепроверяет цену ещё раз и только потом считает событие подтверждённым.
Самое интересное оказалось не в формуле скидки, а в скорости мониторинга.
Когда товаров становится несколько тысяч, схема:
1 товар = 1 HTTP-запрос
быстро перестаёт работать.
Поэтому я сделал PAGE_RECHECK: один запрос страницы каталога может обновлять сразу несколько уже известных товаров.
На первых реальных замерах получилось:
2,47 обновлённого товара на один запрос
вместо:
1 товара на запрос
при том же лимите запросов.
Плюс товары делятся по приоритетам:
- COLD - стабильные;
- WARM - недавно менялись;
- HOT - интересные;
- P0 - сильные аномалии и подтверждения.
То есть потенциально важная цена может перепроверяться за несколько минут, а длинный хвост каталога - намного реже.
Сейчас проект уже работает в проде.
Есть:
- публичный сайт;
- радар аномалий;
- Telegram-канал;
- собственная история цен;
- автоматический scoring;
- подтверждение сильных падений.
Пока это эксперимент.
Я специально не хочу превращать его в очередной канал, где публикуют сотни «скидок» в день.
Идея другая:
показывать только то, что действительно выбивается по цене.
Следующий большой этап - подключать другие источники.
Тогда можно будет сравнивать один и тот же товар сразу между несколькими площадками.
Например:
Яндекс Маркет - 54 990 ₽Ozon - 89 000 ₽Wildberries - 91 500 ₽DNS - 94 999 ₽
В такой ситуации уже даже без длинной истории видно, что одна цена сильно выбивается из рынка.
В идеале хочу прийти к модели:
история цены товара + цены других продавцов + цены других маркетплейсов + скорость изменения цены + наличие → PriceSniper Score
Посмотрим, во что это вырастет.
Если будет интересно, отдельно могу показать интерфейс радара, метрики и подробнее рассказать, как всё это работает в проде.