Бот для Polymarket: разбор рабочего блюпринта за 8 шагов
За 8 шагов ты развернёшь у себя настоящего бота для рынков прогнозов: тот самый открытый проект из вирусного ролика, 403 коммита и README на 44 тысячи знаков. Разберём 13 фильтров входа, 10 слоёв защиты и расчёт ставки, запустим в бумажном режиме и откроем дашборд. Кода писать не нужно, вложений тоже
Сам ролик ты, возможно, видел: человек дал ИИ-агенту 50 долларов и команду «заработай себе на жизнь или умри», а через 48 часов на счету якобы было 5000
Начну с неприятного, потому что иначе весь текст ниже не имеет смысла: та история с $5000 не подтвердилась. Дашборд в ролике нарисован и не имеет отношения ни к настоящему интерфейсу Polymarket, ни к Grok. Привязанный кошелёк существовал задолго до заявленных «48 часов», а истории депозита на 50 долларов там нет вовсе
А вот что настоящее: у автора того поста лежит открытый проект с рабочим ботом. 403 коммита, 97.5% Python, README на 44 тысячи знаков с точными порогами и таблицами. Собран он через Claude Code, и это видно прямо в интерфейсе GitHub: ветка называется claude/polymarket-arbitrage-bot-ClrNV, а вторым автором коммитов идёт Claude
claude/polymarket-arbitrage-bot-ClrNV и Claude в соавторах коммитов - бот собран через Claude Code (скриншот 09.09.2026)Дальше мы этот блюпринт разберём по частям и запустим у себя. Не «похожий бот по мотивам», а именно его: клонируем, настраиваем, включаем бумажный режим и смотрим на дашборде, что он делает
Сразу про деньги, чтобы не было сюрприза в конце: реальная торговля с российским адресом на Polymarket закрыта самой площадкой, и это записано в её документации. Поэтому весь путь ниже мы проходим в бумажном режиме, который у автора блюпринта стоит первым в инструкции. Как это проверить у себя и почему обход не вариант - разберём в конце
Что такое рынок прогнозов и почему цена там равна вероятности
Polymarket это площадка, где торгуют не акциями, а ответами на вопросы: победит ли кандидат, будет ли биткоин выше отметки к трём часам дня, забьёт ли команда
Контракт «да» приносит ровно один доллар, если событие случилось, и ноль, если нет. Отсюда простая арифметика: если люди платят за такой контракт 60 центов, значит толпа с деньгами на кону оценивает событие в 60 процентов. Заплатить 90 центов за то, что случается раз в десять попыток, никто не станет
Что это тебе даёт: у тебя появляется измеримая игра. Не «мне кажется, доллар вырастет», а «толпа говорит 60, моя модель говорит 70, расхождение 10 пунктов, вот тут можно поспорить»
Именно на этом и стоит весь блюпринт: искать места, где число толпы разошлось с числом, которое посчитал бот
Если тема вероятностей и того, как нейросеть с ними обращается, тебе новая - глянь почему нейросеть уверенно врёт про свежие события
На чём именно зарабатывает этот бот (главная идея блюпринта)
Тут важная вещь, которую ролик проглотил, а README объясняет прямо. Бот не угадывает выборы и не предсказывает политику. Он работает на коротких крипто-рынках, которые живут 5 или 15 минут: «будет ли BTC выше 97 250 в 15:15»
Идея в двух предложениях. Такие рынки закрываются по цене оракула Chainlink. А биржа Binance обновляет цену на 50-500 миллисекунд раньше, чем оракул. Полсекунды форы на рынке, который живёт 15 минут, это огромное преимущество
Вторая половина идеи ещё проще: если до закрытия осталась минута, а цена ушла далеко от целевой отметки, исход почти предрешён. Бот продаёт эту предсказуемость
Что это даёт: ты сразу понимаешь границы. Бот не оракул на все случаи жизни, а узкий инструмент под конкретную неэффективность. Так и надо к нему относиться
Узкий инструмент под одну задачу вообще работает лучше универсального - это же верно для контент-конвейера
Шаг 1. Что поставить на компьютер
Нужны две вещи, обе бесплатные для старта
Первое - Python. Это программа, которая выполняет инструкции, написанные текстом. На Mac он уже стоит. На Windows зайди на python.org, нажми жёлтую кнопку «Download Python» посередине страницы, открой скачанный файл и обязательно поставь галочку «Add python.exe to PATH» внизу первого окна установщика
Что увидишь: открой на компьютере окно для команд (на Mac оно называется «Терминал» и ищется через поиск Spotlight, на Windows это «Командная строка» в меню Пуск), набери python3 --version и нажми Enter. Появится строчка с номером версии
Если это чёрное окно вызывает желание закрыть страницу, у меня есть отдельный разбор, как перестать бояться чёрного окна
Что это даёт: компьютер начинает понимать инструкции, которые мы дальше запустим
По той же схеме ставится личный ассистент на компьютере, если захочешь пойти дальше ботов
Второе - Claude Code. Помощник, который живёт в том же окне команд и пишет код вместо тебя. Он же собирал сам блюпринт, так что круг замыкается
Вставь в это окно одну строку:
npm install -g @anthropic-ai/claude-code
Что увидишь: побегут строчки установки, потом вернётся обычная строка ввода. Набери claude и нажми Enter, откроется окно помощника
Что это даёт: дальше по статье ты не пишешь код, ты объясняешь словами, а он делает
Чтобы он отвечал толково, а не общими словами, посмотри пять команд, меняющих качество ответа и как собрать ему рабочий контекст
Шаг 2. Забрать блюпринт себе
Теперь берём сам проект. Вставь эти строки подряд, они прямо из инструкции автора:
git clone https://github.com/ArgonStark/polymarket-bot.git
cd polymarket-bot
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
Что увидишь: сначала побегут строки скачивания, потом в начале строки появится (venv) - это значит, что проект живёт в своей отдельной коробке и не мешает остальному компьютеру. Затем поедет установка библиотек
Что это даёт: у тебя на диске лежит полная копия того самого бота из ролика
Разбирать чужой код словами - отдельный навык, он разобран в материале про каркас запроса
Одна деталь, на которой спотыкаются: основная ветка проекта называется не main, а claude/polymarket-arbitrage-bot-ClrNV. Если открываешь файлы проекта по прямой ссылке и получаешь «File not found», дело в этом
main.py. Отсюда бот стартует, читает настройки и поднимает потоки данных (скриншот 09.09.2026)Шаг 3. Настройки: один файл, который решает всё
В проекте лежит файл .env.example - это образец настроек. Копируем его в рабочий файл настроек:
cp .env.example .env
Что увидишь: рядом появится файл .env, внешне пустой в списке (имя начинается с точки, такие файлы система прячет)
Что это даёт: все ручки управления ботом собраны в одном месте, лезть в код не нужно
Привычка держать настройки отдельно от кода пригодится в любом проекте, в том числе в своей системе скиллов
Самая важная строка на сегодня одна:
PAPER_TRADING_ENABLED=true
Это бумажный режим. Бот делает всё по-настоящему: читает рынки, считает сигналы, размещает ордера, ведёт учёт. Только ордера уходят в симулятор, а не на биржу
И симулятор там не игрушечный, в README расписано, что он повторяет: комиссии мейкера и тейкера (по умолчанию 1.0 и 2.5 базисных пункта), проскальзывание 2 базисных пункта, разницу поведения лимитных и рыночных заявок, зачисление после расчёта рынка
Что это даёт: ты видишь честную картину, включая издержки. Многие «прибыльные» стратегии перестают быть прибыльными ровно на комиссиях
Шаг 4. Запуск и дашборд
Запускаем:
PAPER_TRADING_ENABLED=true python -m src.main
Что увидишь: на экране поедут строки о подключении к источникам данных и найденных рынках
Теперь самое приятное. У блюпринта есть два дашборда, и они включаются отдельно:
python monitoring/terminal_ui.py
а веб-версия открывается в браузере по адресу http://localhost:8766
Что увидишь: экран со списком открытых позиций, балансом, историей сделок и метриками
Что это даёт: ты перестаёшь читать простыню технических строк и начинаешь смотреть на приборную панель. Тот самый «дашборд как в ролике», только настоящий и твой
Шаг 5. Как бот решает, входить или нет
Вот где блюпринт сильно отличается от самоделок. Прежде чем поставить хоть цент, сигнал проходит 13 проверок подряд, и провал любой означает отказ
| # | Проверка | Требование |
|---|---|---|
| 1 | Время | Осталось не меньше 30 секунд (15 для пятиминутных рынков) |
| 2 | Наблюдение | Рынок под наблюдением от 30 секунд, минимум 10 замеров оракула |
| 3 | Спред | Разрыв между покупкой и продажей не больше 15% |
| 4 | Качество данных | Цена оракула валидна, отклонение от целевой меньше 5% |
| 5 | Преимущество | Расхождение не меньше заданного порога |
| 6 | Позиция | По этому активу позиции ещё нет |
| 7 | Риск | Пройдены все проверки риск-менеджера |
| 8 | История | У связки актив-сторона винрейт выше 35% |
| 9 | Графики | Сделка не противоречит сильному сигналу тренда |
| 10 | Модель | Уверенность ML не ниже 52%, если модель включена |
| 11 | Баланс | Свободных денег хватает на ордер плюс запас 10% |
| 12 | Пауза | По этому активу не было ордера последние 10 секунд |
| 13 | Стоп-кран | Аварийный выключатель не активен |
Что это даёт: понимание, почему бот часто ничего не делает. Это не поломка, а работа фильтров. Самоделка «увидел расхождение, поставил» проигрывает именно здесь
Такие цепочки проверок - основа любого рабочего ИИ-агента, не только торгового
Шаг 6. Сколько ставить: Келли и потолки
Размер ставки считается по идее Келли: чем больше преимущество, тем крупнее ставка, но никогда не всё сразу
В блюпринте формула упрощена до понятной:
размер = базовый × (1 + коэффициент преимущества)
коэффициент = min(преимущество, 0.5) / 0.5
| Преимущество | Множитель | При базе $25 |
|---|---|---|
| 0% | 1.0x | $25 |
| 5% | 1.25x | $31.25 |
| 25% | 2.0x | $50 |
| 50% и выше | 2.0x потолок | $50 |
Сверху накинуты поправки: при уверенности выше 80% берётся половина базы, в последние две минуты множитель падает до 0.7, при отрицательном преимуществе до 0.4
И жёсткие потолки, которые не пробиваются ничем: 10% банка на сделку, $75 на один актив, $200 общая позиция, максимум 4 открытые сделки разом
Что это даёт: даже длинная череда промахов не выносит тебя из игры. Именно потолки, а не точность прогноза, держат бота живым
Шаг 7. Десять слоёв защиты и стоп-кран
Отдельная гордость блюпринта. Список из README, как есть:
| Защита | По умолчанию | Что делает |
|---|---|---|
| Дневной лимит убытка | 25% | Останавливает торговлю до конца суток |
| Серия убытков | 3 подряд | Уходит в паузу на 30 минут |
| Просадка от пика | 15% | Пауза, затем постепенное восстановление планки |
| Пол винрейта | 40% после 5 сделок | Пауза, пока показатель не выправится |
| Стоп-кран | включён | Жёсткая остановка при катастрофе |
| Здоровье данных | всегда | Блокирует торговлю на устаревших данных |
| Прогрев после обрыва | 5 секунд | Не торгует сразу после переподключения |
| Потолки позиций | на сделку, актив, всего | Жёсткие ограничения капитала под риском |
| Фильтр истории | винрейт 35% | Блокирует убыточные связки |
| Фильтр графика | сила 70% | Блокирует сделки против сильного тренда |
Стоп-кран срабатывает по пяти причинам, и две из них ручные: можно положить в папку файл с именем KILL_SWITCH или выставить переменную KILL_SWITCH=1. Состояние переживает перезапуск
Что это даёт: у тебя есть красная кнопка, которую можно нажать не разбираясь в коде. Для первых недель это важнее любой стратегии
Любопытно, что уверенный тон модели и реальная надёжность - разные вещи: разбор про подхалимство нейросети
Шаг 8. Откуда бот берёт данные
Четыре потока, каждый со своей ролью:
| Источник | Зачем | Проверка свежести |
|---|---|---|
| Chainlink | Цена расчёта, истина в последней инстанции | Не старше 120 секунд |
| Polymarket CLOB | Живой стакан, лучшие цены покупки и продажи | Не старше 60 секунд |
| Binance | Опережающий индикатор, на 50-500 мс раньше оракула | Не старше 30 секунд |
| Gamma API | Поиск рынков, целевые цены, результаты | Повтор при сбое |
Если хоть один поток протух, бот перестаёт открывать новое, но продолжает досматривать открытые позиции и расчёты. Это правильное поведение: торговать по устаревшей цене хуже, чем не торговать
Проверка свежести данных перед действием - привычка, которая пригодится и в постановке запросов к нейросети
Шаг 9. Как проверить, работает ли он
Через неделю бумажной работы у тебя накопится история. Открой дашборд и попроси Claude Code посчитать три вещи:
Пройди по журналу сделок бота, посчитай процент попаданий, итог по деньгам с учётом комиссий и покажи, в какую сторону бот ошибается систематически
Что увидишь: три числа и разбивку по активам
Как их читать, чтобы не обмануть себя:
Процент попаданий сам по себе не значит ничего. Можно угадывать 80% и терять деньги, если выигрыши мелкие, а проигрыши крупные. Смотри итог с комиссиями
Двадцать сделок это не статистика. Такой результат объясняется везением в любую сторону. Разговор начинается от полутора сотен закрытых рынков
Систематический перекос лучше случайного разброса. Если бот стабильно ошибается в одну сторону, это чинится настройкой. Если ошибки хаотичны, стратегия не работает вовсе
Тот же принцип работает и в контенте, и в продажах: считать, а не верить на слово
Что ломается у новичка
| Симптом | Что это значит | Что делать |
|---|---|---|
| Бот запустился и молчит | Фильтры не пропускают сигналы | Это норма, смотри строки об отказах в его отчёте |
| «File not found» на GitHub | Ветка не main | Открывай claude/polymarket-arbitrage-bot-ClrNV |
| Ошибки при установке библиотек | Не активирована venv | Проверь (venv) в начале строки терминала |
| Дашборд не открывается | Он запускается отдельной командой | python monitoring/terminal_ui.py или порт 8766 |
| Торговля стоит намертво | Сработал стоп-кран или пауза | Ищи строку TRADING_PAUSED и причину рядом |
Каждый из этих случаев лечится за минуту, если знать, куда смотреть. Именно поэтому бот пишет отчёт о себе даже тогда, когда ничего не делает
Сколько это стоит
Сам блюпринт бесплатный, лежит открыто на GitHub
Python и запуск бесплатны, это часть твоего компьютера
Claude Code платный, от 20 долларов в месяц. Единственная статья расходов, и она у большинства читателей уже есть
Бумажный режим ноль, потому что денег в нём нет
Итого вечер работы обходится в ноль дополнительных рублей
Если считаешь расходы на нейросети - посмотри, сколько уходит на подписки суммарно
Про реальные деньги: честно и коротко
Здесь я обязан сказать то, что в роликах не говорят
Из России торговать на Polymarket нельзя по правилам самой площадки. Россия входит в список стран, где можно только закрывать существующие позиции, а новые не открываются. Ограничение действует и на сайте, и на программном доступе, так что «зайти через код в обход» не работает
Проверить можно за секунду. Вставь команду:
curl https://polymarket.com/api/geoblock
Что увидишь: короткий ответ вида {"blocked":true,"country":"NL"}
Что это даёт: понимание, что бумажный режим тут не перестраховка автора статьи, а единственный доступный путь. И заодно готовая проверка, которую стоит вызывать первой строкой в любом боте, работающем с чужой площадкой
Обходить через VPN не советую: это нарушение правил площадки, вывод идёт через кошелёк, привязанный к личности, а статус таких рынков в российском праве не определён однозначно
Что остаётся. Чтение рынков открыто отовсюду и никакими ограничениями не покрыто. Ты получаешь рабочую систему, реальный навык и историю решений, не трогая деньги. А если журнал через месяц покажет, что бот не лучше рынка, ты получишь ответ, за который обычно платят деньгами
Что дальше
Ты только что развернул у себя систему, которую собрал другой человек за 403 коммита, и разобрался, как она устроена внутри. Это и есть главный навык: не писать с нуля, а брать готовое, понимать и настраивать под себя
Та же схема работает где угодно: бот, следящий за ценами конкурентов, помощник с утренней выжимкой новостей, сборка контента или подбор нейросетей под задачи
Показываю такие разборы почти каждый день у себя в канале: что собрал, что развалилось и почему 👉 заходи в канал
Частые вопросы
Нужны ли деньги, чтобы попробовать?
Нет. Блюпринт открытый, бумажный режим бесплатный. Платный только Claude Code, и он окупается на остальных задачах
Я не программист, у меня получится?
Код ты не пишешь: он уже написан автором блюпринта, а вопросы по нему задаёшь Claude Code словами. Начни с разбора про терминал, если пугает чёрное окно
Сколько времени занимает запуск?
Вечер до первого работающего прогона. Дальше время уходит не на код, а на понимание, почему бот отказывается от сделок
Тот результат из ролика правда?
Нет, история про 50 долларов и 5000 не подтвердилась: дашборд нарисован, история кошелька противоречит рассказу. Настоящий тут репозиторий, а не результат
Можно применить это к другой задаче?
Схема универсальная: собрать данные из нескольких источников, проверить сигнал фильтрами, посчитать размер действия, записать в журнал. Так же собираются ИИ-агенты под свои задачи и контент-конвейер
Почему нельзя просто попросить ИИ угадать вероятность?
Модель не знает вчерашних новостей и составов команд, а рынок с тысячами участников почти всегда информированнее. Блюпринт поэтому и работает не на догадках, а на разнице скорости между Binance и оракулом
Что делать, если бот стабильно в минусе на бумаге?
Радоваться, что узнал это бесплатно. Дальше крутить пороги: поднять минимальное преимущество, сузить список активов, включить фильтр графика
Где смотреть, как правильно ставить задачу помощнику?
Качество ответа держится на постановке: разбор про каркас запроса и про команды, меняющие ответ
Источники
- github.com/ArgonStark/polymarket-bot - оригинальный блюпринт, README и код (проверено 09.09.2026)
- Пост автора в X - первоисточник ролика
- Список стран с ограничениями в документации Polymarket - Россия в группе close-only
- Открытые данные рынков Polymarket - публичный API без ключей
- Kelly, J. L. «A New Interpretation of Information Rate» (1956) - исходная работа про размер ставки
Памятка: восемь галочек
python3 --versionпоказывает номер версии- Команда
claudeоткрывает окно помощника - Проект скачан, в начале строки виден
(venv) - Файл
.envсоздан, в нёмPAPER_TRADING_ENABLED=true - Бот запущен, в логе идут строки о подключении к данным
- Дашборд открывается на
localhost:8766 - Проверка
curl https://polymarket.com/api/geoblockотработала - Через неделю в журнале есть закрытые сделки и по ним посчитан итог