- PVSM.RU - https://www.pvsm.ru -

Две недели я собирал данные с трёх маркетплейсов Telegram-подарков, чтобы доказать, что на них нельзя заработать

Идея была простая и на вид очевидная: на маркетплейсах Telegram-подарков постоянно появляются лоты дешевле рыночной цены. Купил дешевле, выставил по рынку, забрал разницу. Ботов там, в отличие от криптобирж, почти нет.

Я написал систему, которая две недели непрерывно собирала данные с трёх площадок — Portals, Tonnel и MRKT, — а потом честно проверила эту идею.

Ответ: заработать нельзя. Не «сложно», не «нужно быстрее» — нельзя в принципе, и я могу показать это цифрами. Ниже — как измерял, что получилось и где были ловушки, в которые я сам чуть не попал.

Все данные и код открыты, ссылки в конце.

Что собрано

Значение

Период

5–23 сентября 2026

Площадки

Portals, Tonnel, MRKT

Лотов

54 447

Изменений цен

1 811 271

Подтверждённых сделок с ценой

4 420

Коллекций / уникальных пар «модель + фон»

131 / 39 707

Последняя строка в таблице выше — ключевая. Площадки не отдают историю сделок: лот просто исчезает из списка, и почему — неизвестно. Купили? Продавец снял? Владелец забрал себе? Только у MRKT нашёлся поток событий, где продажа приходит явно и с ценой. Эти 4420 записей и стали фундаментом всей проверки: только они говорят, сколько покупатели платят, а не сколько продавцы просят.

Медианная цена сделки — 27.5 TON, четверти 18.7 и 48.0, максимум 1285 TON.

Ловушка первая: «флор» — это не цена

Обычная логика сигнала: берём минимальную цену такой же пары «модель + фон» на площадке (флор), сравниваем с ценой конкретного лота, и если лот дешевле — это выгодное предложение.

Проверяю на данных: для лотов, которые система сочла выгодными, подтверждённая сделка по такой же паре случалась в течение суток лишь в 5% случаев.

Флор — это цена самого дешёвого выставленного лота. Если по ней никто не покупает, она не значит ничего. Можно бесконечно находить товар «дешевле флора» и бесконечно не находить покупателя.

Первая версия моего же расчёта показала по MRKT красивые +15% медианы. Потом я добавил один вопрос: а была ли по этой паре хоть одна настоящая сделка, пока мы «держали» лот? Оказалось — у 8 случаев из 158. Красивая цифра относилась к цене, по которой мы могли бы выставить лот. Покупателя в ней не было.

Ловушка вторая: лоты продаются по своей же цене

Следующая мысль: сравнивать не с флором, а с ценами реальных недавних сделок. Покупать то, что дешевле, чем реально покупали.

Проверил на 852 334 случаях — каждое появление лота и каждое изменение цены. Результат: правило «дешевле недавних сделок на 10%» дало 60 сигналов, продажа потом случилась у 5 из них, прибыльных — ноль, медиана −20%.

Объяснение простое: цена ниже недавних продаж — это не скидка, а падающий рынок. Следующие сделки проходят ещё ниже.

Отдельная деталь, которая меня отрезвила. В одной из версий расчёта я брал ценой выхода цену, по которой сам этот лот позже продался. Медиана вышла ровно −2.00% на 19 сделках — в точности комиссия площадки. То есть лоты уходят по своей же цене, по той самой, по которой мы бы их купили. Никакой скидки относительно рынка в них не было.

Главный замер: идеальный сценарий

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

  • покупка ровно по цене состоявшейся сделки;

  • продажа ровно в следующую состоявшуюся сделку по такому же товару;

  • срок ожидания не ограничен;

  • конкурентов нет, из расходов только комиссия продавца.

Так не бывает. Это потолок возможного. Вот он:

Ценовой сегмент

Сделок

В плюсе

Медиана

Итог

до 30 TON

293

8%

−2.0%

−129 TON

30–100 TON

269

12%

−2.0%

−222 TON

100–300 TON

56

12%

−1.9%

−156 TON

300+ TON

21

9%

−2.2%

−175 TON

Всего

639

10%

−2.0%

−681 TON

Медиана ровно −2% — это комиссия. Цена товара между двумя последовательными сделками не меняется. Покупаешь по рынку, продаёшь по рынку, платишь комиссию, получаешь минус. Дорогой сегмент ведёт себя так же. Длинный горизонт не помогает: повторная сделка приходит в среднем через 4–17 часов, и цена та же.

Почему рынок так устроен

3134 подтверждённые сделки разошлись по 2495 разным товарам. Медиана — одна сделка на товар за девять дней. Максимум — шесть.

Это не рынок в биржевом смысле, а доска объявлений. Купить можно за минуту, продать — за недели. Для перепродажи нужен поток покупателей, а его нет.

Любопытный побочный результат: конкурентов там тоже почти нет. Из десяти проверенных лотов за 45 секунд после сигнала увели только один. Ботов нет именно потому, что зарабатывать нечего.

Бумажный журнал: что было бы с деньгами

Параллельно система вела журнал сделок с виртуальным банком 300 TON — по три модели поведения одновременно, с настоящими комиссиями, вероятностью продажи и сливом непроданного.

Модель

Старт

Стало

Итог

продажа через 24 ч

300 TON

268.8

−31 TON

продажа через 12 ч

300 TON

210.0

−90 TON

продажа через 48 ч

300 TON

323.7

+24 TON

Единственный плюс держится на одной удачной сделке из десяти. Я проверил её вручную: лот куплен за 46 TON при «флоре» 139. Флор был настоящий, но по другому фону — то есть прибыль опиралась на допущение, что фон не влияет на цену. Это допущение данные не подтверждают.

Чему меня научила эта проверка

Считать нужно от покупателя, а не от объявления. Любая метрика, построенная на ценах предложений, показывает фантазии продавцов. Единственная твёрдая точка — цена, по которой кто-то реально заплатил.

Ликвидность решает раньше, чем спред. Я потратил уйму времени на точность расчёта прибыли и слишком поздно задал главный вопрос: а есть ли вообще кому продавать. Проверять ликвидность нужно первым делом.

Красивая цифра — повод искать ошибку. Каждый раз, когда расчёт показывал хороший плюс, внутри оказывалось невысказанное допущение: «мы точно продадим», «фон не важен», «конкурентов нет».

Отрицательный результат стоит дёшево, если получен быстро. Итог: две недели и 300 рублей за сервер — вместо вложенных в закупку денег.

Данные и код

Всё открыто:

  • Данные: https://www.kaggle.com/datasets/ufosog/telegram-gifts-prices-and-confirmed-sales [1] — 54 447 лотов, 1.8 млн изменений цен, 4420 подтверждённых сделок с ценами, в CSV с описанием полей. Лицензия CC BY 4.0.

  • Код и расчёты: https://github.com/ufosog/gift-sniper [2] — сбор с трёх площадок, каскад фильтров, межбиржевая сверка, бумажный журнал, сервер с самодиагностикой, 634 теста. Все расчёты из этой статьи лежат в папке diag/ и воспроизводятся одной командой на опубликованных данных. Лицензия MIT.

Если будете строить что-то в этой нише — начните с проверки ликвидности. Может сэкономить вам две недели.

Автор: ufosog

Источник [3]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/python/458766

Ссылки в тексте:

[1] https://www.kaggle.com/datasets/ufosog/telegram-gifts-prices-and-confirmed-sales: https://www.kaggle.com/datasets/ufosog/telegram-gifts-prices-and-confirmed-sales

[2] https://github.com/ufosog/gift-sniper: https://github.com/ufosog/gift-sniper

[3] Источник: https://habr.com/ru/articles/1086736/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1086736