Учебник по ботам Полимаркет · Глава 14 из 32

Новостной арбитраж на Полимаркет: как обыгрывать рынок на заголовках, источники новостей (RSS/Twitter/AP), бюджеты задержки, фильтры ложных срабатываний и когда новостное преимущество исчезает в цене рынка.

Что охватывает эта глава

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

  • Как выглядит информационное преимущество
  • Источники новостей: RSS, Twitter, AP, официальные фиды
  • Бюджет задержки: от прочтения до сделки менее чем за 2 секунды
  • Фильтры ложных срабатываний
  • Когда новостное преимущество умирает
  • Код: опрос новостной ленты и отправка FOK на релевантные рынки
  • Риск: полуправда и опровергнутые заголовки

Как выглядит информационное преимущество

Новостной арбитраж означает торговлю на публичной информации быстрее, чем рынок успевает переоценить. Преимущество существует в узком окне — обычно 30-300 секунд — между моментом, когда факт становится публичным, и тем, как Полимаркет его отражает.

Чтобы преимущество было реальным, должны выполняться три условия. Во-первых, источник новостей должен быть быстрее, чем медианный трейдер Полимаркет (Twitter быстрее массовой прессы; новостная лента AP быстрее Twitter). Во-вторых, новость должна быть однозначной (объявление о травме, судебное решение) — трактовка съедает задержку. В-третьих, рынок должен быть достаточно широким, чтобы движение цены оправдывало издержки на спред.

Боты, которые охотятся за этим преимуществом, делятся на два лагеря: те, кто подписывается на прямые источники и парсит их, и те, кто следит за необычным движением цены на Полимаркет и делает вывод, что новость уже случилась. Оба подхода допустимы; первый ведёт, второй следует.

Источники новостей: RSS, Twitter, AP, официальные фиды

Источники, ранжированные по задержке до статуса публичной информации, самые быстрые — первыми.

  • Прямые первичные источники: судебные материалы, правительственные пресс-релизы, объявления центральных банков. Часто имеют публичный RSS или API. Самые быстрые, с самой низкой частотой ложных срабатываний.
  • Новостная лента AP / Reuters Eikon (платно). Лента, которой пользуются традиционные трейдеры. Примерно на 5-30 секунд опережает потребительский Twitter.
  • Twitter (X, платный API). Списки верифицированных аккаунтов: официальные аккаунты организаций, профильные репортёры. Бесплатные API слишком ограничены по частоте запросов; платите за Pro tier или используйте сервис-ретранслятор.
  • Специализированные рассылки / Discord: платные Substacks, отраслевые фиды под эмбарго. Полезно для нишевых рынков (криптовалюты, киберспорт).
  • Сайты массовой прессы: слишком медленно для преимущества новостного арбитража.

RSS — для всего, что публикует RSS: это бесплатно, а интервалы опроса надёжны. Twitter — для остального. AP — для серьёзных боевых новостных редакций.

Бюджет задержки: от прочтения до сделки менее чем за 2 секунды

Бот должен получить, классифицировать, принять решение и разместить ордер в сумме за 1-2 секунды. Бюджет:

  • Получение: 50-300мс (фид WebSocket, опрос RSS, поток Twitter).
  • Классификация: 50-200мс (regex / совпадение по ключевому слову, опционально LLM, если вы кэшируете промпт).
  • Решение: 50мс (поиск по таблице правил; сопоставление тега новости и slug рынка).
  • Размещение: 200-500мс (подписанный ордер FOK в CLOB).

Самый большой пожиратель бюджета — классификация с помощью LLM. Один вызов GPT-4 на 500 токенов добавляет 1-3 секунды; и всё окно арбитража исчезает. Для продакшена классифицируйте с помощью правил по ключевым словам; используйте LLM только для офлайн-калибровки набора ключевых слов.

Фильтры ложных срабатываний

Боты новостного арбитража, которые не фильтруют ложные срабатывания, торгуют на каждый ретвит и теряют деньги на издержках на спред. Вот три фильтра.

  • Белый список источников: действуйте только на аккаунты/фиды из заранее одобренного списка. Список небольшой (10-30 источников).
  • Пара «ключевое слово + подтверждение»: одно совпадение по ключевому слову — это шум; совпадения в двух независимых источниках в течение 30с — это сигнал.
  • Защита по состоянию рынка: пропускайте рынки, которые уже сдвинулись > 5% за последние 60 секунд — кто-то другой уже поймал новость, преимущество исчезло.

Частота ложных срабатываний хорошо настроенных фильтров: примерно 1 из 5-10. Частота ложных срабатываний в 90% уничтожает стратегию; 50% ещё приемлемы при небольших размерах позиции.

Когда новостное преимущество умирает

Окно от «новость публична» до «цена отражает новость» закрывается с каждым годом быстрее. В 2020 политические рынки со средней ценой занимали минуты, чтобы переварить заголовок. В 2026 те же заголовки сжимаются до 30-90 секунд до того, как цена полностью сдвинется.

Признаки того, что преимущество умерло: PnL на сделку по отмеченным сделкам падает с +3c до нуля на окне из 30 сделок; доля ложных срабатываний, которые оказываются уже учтёнными в цене, поднимается выше 70%; рынок исполняет вашу заявку FOK в течение 200мс, потому что кто-то другой добрался туда первым.

Честный разворот, когда преимущество умирает: переходите к более медленным, более требующим трактовки новостям (судебные решения, протоколы заседаний центрального банка), где разбор смысла занимает больше времени, чем гонка задержек. Или прекращайте запускать стратегию.

Код: опрос новостной ленты и отправка FOK на релевантные рынки

Боевой каркас: опрашивать источник новостей, прогонять совпадения по правилам, отправлять ордера FOK при срабатываниях.

import feedparser, time, re
from py_clob_client.client import ClobClient

RULES = [
  {"regex": re.compile(r"out for season|torn ACL", re.I), "tag":"injury-fade"},
  {"regex": re.compile(r"federal reserve.*(rate cut|rate hike)", re.I), "tag":"fed-move"},
]

seen = set()
while True:
    feed = feedparser.parse("https://example.com/news.rss")
    for entry in feed.entries[:20]:
        if entry.id in seen: continue
        seen.add(entry.id)
        for rule in RULES:
            if rule["regex"].search(entry.title + " " + entry.summary):
                # Look up relevant Полимаркет markets, place FOK
                fire(rule["tag"], entry)
                break
    time.sleep(15)

Интервалы опроса: 5-15 секунд для RSS. WebSocket, где доступен (Twitter, новостная лента AP). Всегда убирайте дубли по ID, предоставленному источником; никогда не предполагайте, что опрос — это строго однократная операция.

Риск: полуправда и опровергнутые заголовки

Самый плохой день для бота новостного арбитража — когда заголовок оказывается неверным. Примеры: твит Reuters говорит "Trump fires Yellen", рынок подскакивает на 8 центов, через 12 минут твит удаляют и исправляют. Бот, который купил на +8c, теперь держит запас на -3c без возможности что-то сделать.

Защита:

  • Подтверждение из двух источников: никогда не торгуйте на одном твите; требуйте подтверждающий сигнал от второго независимого источника в течение 60-180 секунд.
  • Размер позиции, масштабируемый по доверию к источнику: новостная лента AP = полный размер; Twitter от верифицированного профильного репортёра = 50%; источник слухов = 25%.
  • Автоматический выход по сигналу опровержения: если источник, который вы использовали, выпускает исправление в течение 30 минут, выходите по рынку независимо от PnL.

Проблема с опровержениями — это жёсткий потолок для размера позиции в новостном арбитраже. Торговля на $50 за сигнал позволяет пережить 30% ложных срабатываний; торговля на $500 — нет.

Часто задаваемые вопросы

Может ли розничный бот действительно обыгрывать рынок на новостях?
Да — но только если у вас есть быстрый, надёжный источник новостей и путь исполнения с низкой задержкой. Twitter (теперь X) был золотым стандартом до появления ограничений API; RSS от Reuters/AP/Bloomberg — следующий лучший вариант. Розничное преимущество сократилось, потому что ботов стало больше; ожидайте 200-1000мс от прочтения до сделки в сумме, а не 50мс.
На какие источники новостей мне стоит подписаться?
RSS-ленты от AP (apnews.com), Reuters (reuters.com) и BBC дают широкое покрытие. Для специфики Полимаркет: собственные каналы платформы в Twitter и Discord часто заранее объявляют об изменениях рынков. Для конкретных тем: правительственные пресс-релизы (Federal Reserve PDFs, CFTC, WHO).
Насколько быстро мой бот должен реагировать на новости?
Для розничного преимущества: менее 2 секунд от появления новости до отправки вашего ордера. Для преимущества уровня HFT (по сравнению с другими ботами): менее 200мс. Большинство розничных могут конкурировать в окне 1-3 секунды, потому что большинство других розничных ботов ещё медленнее или вообще отсутствуют на некоторых типах фидов.
Как избежать ложных срабатываний новостных триггеров?
С осторожностью сопоставляйте новость с конкретным рынком. "Ceasefire" может встречаться в 100 контекстах; важны только некоторые для вашего конкретного рынка. Используйте фильтры «ключевое слово И тег рынка»: ключевое слово "ceasefire" И тег рынка "Israel-Hezbollah" перед срабатыванием. Ещё лучше — классифицировать новость с помощью LLM как релевантную перед торговлей.
Что происходит, когда новость позже опровергают?
Ваша позиция может за секунды перевернуться из выигрышной в убыточную. Ботам новостного арбитража нужна быстрая политика выхода: если последующий источник опровергает заголовок в течение N минут, немедленно закрывайте позицию, даже в убыток. Наше правило: закрывать на -3% до -5%, если любой последующий источник снижает уверенность в исходном сигнале.
Законен ли новостной арбитраж?
Торговля на публичных новостях законна везде, где нам известно. Торговля на существенной непубличной информации (инсайдерские наводки, утечки до официальной публикации) — нет. Держитесь публичных источников, и сделка будет в порядке.