Что происходит на рынке сегодня и как это отличается от вчерашнего дня.
Последние семь дней — новые заявки по дням.
Сегодняшний столбик ещё растёт: день не кончился.
связь: проверяю…
сбор: проверяю…
Куда идут грузы — топ направлений
Собранные из каналов заявки (external_cargos). Города приведены к справочнику: «Ташкент», «Тошкент», «Toshkent» и «Тошкентга» — одно направление.
Страна на конце маршрута в эту таблицу не попадает — она в таблице по странам ниже.
Рынок по дням (market_days)
День календарный, по Москве — тот же, что у бота и сборщика. Сообщений —
сколько прочитано из каналов; одно сообщение бывает подборкой из десятка грузов.
Публикаций — связей «заявка ↔ сообщение»: объявление, разошедшееся по десяти
лентам, даёт десять публикаций, поэтому их всегда больше, чем сообщений, и складывать эти
два столбца нельзя. Новых грузов — сами заявки. Грузов на 100 сообщений —
отношение, а не доля сообщений: грузов бывает больше, чем сообщений, потому что подборка
даёт несколько заявок.
Состояние конвейера
Внутренние числа сбора и разбора, а не рынок: сколько сообщений собрано, разобрано и во что превратилось. Рынок — выше: направления, дни, товары, ставки.
Направления по странам (from_country → to_country)
Тот же рынок, но крупным планом: страновой срез полнее городского, потому что страна заполнена у 88.6 %/94.0 % грузов, а разрешение города — у 67.6 %.
Каналы — грузы (подтверждено ≥3)
Сырьё JSONL — сообщения по каналам
Что везут — товары (число грузов и тоннаж)
Какой товар и куда едет
Куда едет товар — по странам назначения
Товар × направление × тоннаж (теплокарта)
Каналы-источники (кто добавлен и как читается)
Вклад каналов: новые vs старые источники
Интеллект источников: первоисточник vs агрегатор
Агенты рынка — сводка
Агрегаты по рынку: сколько контактов, как распределена подтверждаемость и какие направления они дают вместе. Телефоны, оценки и маршруты отдельных диспетчеров здесь не показываются.
Dispatcher Intelligence — агенты рынка
⚠️ Contact ≠ person/company identity. Считается наблюдаемый контакт (телефон или ник), а не человек или компания за ним. Agent — это Market Agent Score (0–100): сколько у контакта грузов, насколько разные направления и как часто его грузы подтверждают другие.
Это не «надёжность» и не «доверие». Уверенность — это Statistical Confidence: можно ли верить цифрам при таком числе грузов. ·
Prop — сколько публикует; отдельная ось, к ценности не относится.
Dispatcher Intelligence — кто распространяет (Prop)
Распространение ≠ рыночная ценность. Если внизу карточки написано «Agent 0» — контакт публикует много, но подтверждений рынка у него нет.
Логисты-подборщики (несколько направлений в одном сообщении)
Пояснения к счётчикам
• Груз / заявка — объявление о грузе из канала, распознанное парсером.
• Лидов — распознанных объявлений о грузе.
• Подтверждено ≥3 каналами — груз встретился в ≥3 каналах (propagation). Но каналы могут быть перепечатками одного диспетчера.
• ⚠️ ≥3 независимыми источниками — то же, но среди источников ≥3 разных диспетчера/контакта. Это настоящая независимая подтверждаемость. Остальное («независимых=1») — перепечатка одной публикации по разным каналам, а не подтверждение.
• Средн. источников/лид — в скольких каналах в среднем встречается одно объявление (2,78 → почти 3).
• % подтверждённых — доля подтверждённых от всех лидов.
• Ставка: медиана (P25–P75), $ — медиана важнее средней: среднюю искажают отдельные дорогие рейсы, а P25–P75 показывает, где лежит половина ставок. Переведено в доллары (руб./сумы — по приблизительному курсу). Цена указана не во всех объявлениях (~23%).
• Подтверждено по дням (в таблице «Рынок по дням») не суммируется: один груз подтверждается в разные дни и посчитается несколько раз. Уникальных подтверждённых грузов — в блоке «Состояние конвейера» ниже.
• ⚠️ Часов сбора — сколько часов в сутки реально работал сборщик (устройство/интернет выключаются). Малый день = простой, а не тихий рынок. Дневные числа сравнимы только по «Сообщ/час», а не по абсолюту. 07.09 — всего 6/24 ч, 08.09 — догон после паузы.
• «Заявок найдено» в таблице по дням — это число связей-публикаций (объявление в канале), а не уникальных грузов.
• Собрано сообщений — из каналов: в БД и в архиве JSONL (отличаются, т.к. архив хранит всё подряд, БД — после дедупликации/фильтра).
• Проанализировано сообщений — столько сообщений получило вердикт разбора. Разбор идёт сразу за записью, поэтому это число равно «собрано в БД», и читать надо не его, а разбивку под ним: новая заявка — из сообщения получилась заявка, повтор — объявление сошлось с уже известной заявкой (это не потеря, а подтверждение), не заявка — маршрут не распознан или текста мало.
• Сейчас (блок сверху) — живые числа: сколько заявок появилось сегодня
по местному дню (Москва), сколько сообщений прочитано и сколько из сегодняшних заявок
подтверждены тремя и более каналами. Разница считается с вчерашним днём по тот же
час, а не с целым днём: иначе каждое утро показывало бы рост там, где его нет.
«Заявка» здесь — уникальный груз, а не публикация: одно объявление перепечатывают в
нескольких каналах, и в таблице по дням это разные числа. Подтверждение — свойство груза,
а не дня: заявка, появившаяся сегодня, может подтвердиться завтра, поэтому дневные
подтверждения не складываются в итог.
• Связь и Сбор (точки слева сверху) — это разные вещи. Связь — состояние этой страницы: идёт ли опрос сервера каждые 3 секунды. Сбор — состояние сборщика: когда последний раз проверены каналы. Сборщик может работать, а страница потерять сеть, и наоборот. Когда связи нет, счётчики гаснут: числа на экране остаются от последнего удачного ответа и рынок уже не описывают.