Доходность 86% APY? Как использовать ботов для заработка на Polymarket
Оригинальное название: Я создал бота для Polymarket и протестировал различные настройки параметров, вот результаты.
Оригинальный автор: @the_smart_ape, крипто-исследователь
Оригинальный перевод: Bitpush News
Несколько недель назад я решил создать своего собственного бота для Polymarket. На полную версию у меня ушло несколько недель.
Я был готов приложить эти усилия, потому что на Polymarket действительно существует разрыв в эффективности. Хотя некоторые боты на рынке уже используют эти неэффективности, этого все еще недостаточно, и возможности на этом рынке по-прежнему значительно превышают количество ботов.
Логика создания бота
Логика бота основана на наборе стратегий, которые я ранее выполнял вручную, и которые я автоматизировал для повышения эффективности. Бот работает на рынке «BTC 15-минутный UP/DOWN».

Бот запускает программу мониторинга в реальном времени, которая может автоматически переключаться на текущий 15-минутный раунд BTC, оптимизируя лучшие цены покупки/продажи через WebSocket, отображая фиксированный терминальный интерфейс и позволяя осуществлять полный контроль с помощью текстовых команд.

В ручном режиме вы можете размещать ордера напрямую.
buy up <usd> / buy down <usd>: Покупка на определенную сумму в USD.
buyshares up <shares> / buyshares down <shares>: Покупка точного количества акций с использованием удобного ордера LIMIT + GTC (Good 'Til Canceled), исполняемого по текущей лучшей цене предложения.
Автоматический режим выполняет повторяющийся двухэтапный цикл.
Сначала он наблюдает за движением цены только в течение windowMin минут в начале каждого раунда. Если какая-либо сторона падает достаточно быстро (достигая процента падения не менее movePct примерно за 3 секунды), он запускает «Этап 1», покупая сторону, которая испытала резкое падение.
После завершения Этапа 1 бот больше никогда не будет покупать ту же сторону. Он будет ждать «Второй этап (Этап 2, т.е. хеджирование)» и сработает только при выполнении следующего условия: leg1EntryPrice + oppositeAsk <= sumTarget.
Когда это условие выполнено, он покупает противоположную сторону. После завершения Этапа 2 цикл заканчивается, бот возвращается в режим наблюдения, ожидая следующего сигнала о резком падении с использованием тех же параметров.
Если в течение цикла происходит смена раунда, бот прерывает открытый цикл и перезапускается с теми же настройками в следующем раунде.
Параметры настройки для автоматического режима следующие: auto on <shares> [sum=0.95] [move=0.15] [windowMin=2]
· shares: Размер позиции для двухэтапной сделки.
· sum: Пороговое значение для допустимого хеджирования.
· move (movePct): Порог резкого падения (например, 0.15 = 15%).
· windowMin: Время от начала каждого раунда, в течение которого разрешено выполнение Этапа 1.
Бэктестинг
Логика бота проста: ждать резкого падения, купить сторону, которая только что упала, затем дождаться стабилизации цены и хеджировать, купив противоположную сторону, гарантируя, что priceUP + priceDOWN < 1.
Но эту логику нужно протестировать. Эффективна ли она в долгосрочной перспективе? Что еще важнее, у бота много параметров (shares, sum, процент движения, минуты окна и т.д.). Какой набор параметров является оптимальным и максимизирует прибыль?
Моя первая мысль — запустить бота в реальном времени на неделю и понаблюдать за результатами. Проблема в том, что это занимает слишком много времени и позволяет протестировать только один набор параметров, тогда как мне нужно протестировать много.
Моя вторая мысль — провести бэктестинг с использованием исторических онлайн-данных из API Polymarket CLOB. К сожалению, для рынка BTC 15-минутный up/down, эндпоинт исторических данных постоянно возвращает пустые наборы данных. Без исторических тиков цен бэктест не может обнаружить «примерно 3-секундный резкий обвал», не может запустить Этап 1 и, независимо от используемых параметров, приводит к 0 циклов и 0% ROI.

После дальнейшего расследования я обнаружил, что другие пользователи также столкнулись с той же проблемой при получении исторических данных для определенных рынков. Я протестировал другие рынки, которые действительно возвращали исторические данные, и пришел к выводу, что для этого конкретного рынка исторические данные просто не сохранялись.
Из-за этого ограничения единственным надежным способом бэктестинга этой стратегии является создание собственного набора исторических данных путем записи лучших цен предложения в режиме реального времени во время работы бота.

Рекордер будет записывать снимки на диск, включая следующее:
· Временная метка
· Round Slug
· Оставшиеся секунды
· ID токена UP/DOWN
· Лучшая цена предложения UP/DOWN
Впоследствии «записанный бэктест» будет воспроизводить эти снимки и детерминированно применять ту же автоматизированную логику. Это обеспечивает возможность получения высокочастотных данных, необходимых для обнаружения резких падений и условий хеджирования.
За 4 дня я собрал в общей сложности 6 ГБ данных. Я мог бы записать больше, но счел это достаточным для тестирования различных наборов параметров.

Я начал тестировать этот набор параметров:
· Начальный баланс: $1 000
· 20 акций на сделку
· sumTarget = 0.95
· Порог резкого падения = 15%
· windowMin = 2 минуты
Я также применил постоянную комиссию 0,5% и спред 2%, чтобы оставаться в консервативном сценарии.
Бэктест показал 86% ROI, превратив $1 000 в $1 869 всего за несколько дней.

Затем я протестировал более агрессивный набор параметров:
· Начальный баланс: $1 000
· 20 акций на сделку
· sumTarget = 0.6
· Порог резкого падения = 1%
· windowMin = 15 минут
Результат: Через 2 дня доходность инвестиций составила -50%.

Это наглядно показывает, что выбор параметров является самым критическим фактором. Это может принести вам много денег или привести к значительным убыткам.
Ограничения бэктестинга
Даже с учетом затрат и спредов, бэктестинг имеет свои ограничения.
· Во-первых, он использует данные всего за несколько дней, чего может быть недостаточно для получения полного представления о рынке.
· Он опирается на записанные снимки оптимальных цен продажи; в реальности ордера могут исполняться частично или по другим ценам. Кроме того, глубина книги ордеров и доступный объем не моделируются.
· Микро-колебания менее чем за секунду не фиксируются (данные сэмплируются каждую секунду). Хотя бэктестинг имеет временные метки на уровне 1 секунды, многое может произойти между каждой секундой.
· Проскальзывание в бэктестинге постоянно, без моделирования переменных задержек (например, 200–1500 миллисекунд) или пиков перегрузки сети.
· Предполагается, что каждый сегмент сделки выполняется «мгновенно» (без очереди ордеров, без отложенных ордеров).
· Затраты взимаются равномерно, тогда как в реальности затраты могут зависеть от: Рынка/Токена, Мейкера-Тейкера, уровней комиссий или условий.
Чтобы придерживаться пессимистичного (осторожного) подхода, я применил правило: если Этап 2 не исполняется до закрытия рынка, Этап 1 считается полным убытком.
Хотя это намеренно консервативно, это не всегда соответствует реальности:
· Иногда Этап 1 может закрыться раньше,
· Иногда он оказывается в деньгах (ITM) и выигрывает,
· Иногда убыток может быть частичным, а не полным.
Хотя убыток может быть переоценен, это обеспечивает практический сценарий «худшего случая».
Самое главное, бэктестинг не может имитировать влияние ваших крупных ордеров на книгу ордеров или привлекать хищническое поведение других трейдеров. В реальности ваш ордер может:
· Нарушить книгу ордеров,
· Привлечь или оттолкнуть других трейдеров,
· Вызвать нелинейное проскальзывание.
Бэктестинг предполагает, что вы являетесь чистым извлекателем ликвидности (тейкером) без какого-либо влияния.
Наконец, он не имитирует ограничения по скорости, ошибки API, отклонения ордеров, остановки, тайм-ауты, переподключения или ситуации, когда бот занят и пропускает сигналы.
Бэктестинг чрезвычайно ценен для определения хорошего диапазона параметров, но он не является 100% гарантией, так как некоторые реальные эффекты невозможно смоделировать.
Инфраструктура
Я планирую запустить этого бота на Raspberry Pi, чтобы не потреблять ресурсы на моем основном компьютере и держать его работающим 24/7.
Тем не менее, есть еще значительный простор для улучшений:
· Использование Rust вместо JavaScript обеспечит гораздо лучшую производительность и время обработки.
· Запуск выделенного Polygon RPC узла еще больше снизит задержку.
· Развертывание на VPS рядом с сервером Polymarket также значительно снизит задержку.
Я уверен, что есть и другие методы оптимизации, которые я еще не открыл. В настоящее время я изучаю Rust, так как он становится важным языком в разработке Web3.
Вам также может понравиться

Падение более чем на 97% продолжается, но WLD завершила финансирование вне биржи на сумму 65 миллионов долларов: кто еще оплачивает счет?

Возможное падение Bitcoin ниже $60K может отложить восстановление до 2027 года: данные
Bitcoin может не восстановиться до своих прежних высот до 2027 года, если текущее снижение цен углубится. Восстановление BTC…

BTC USD Цена Опустилась Ниже 67 000 Долларов: Доходность 10-летних Казначейских Облигаций США Достигла Годового Максимума
BTC USD опустился ниже 67 000 долларов впервые с 9 марта, в результате чего за 24 часа курс…

Законодатели вводят второй законопроект против инсайдерской торговли на прогнозных рынках
Двухпартийная группа сенаторов внесла законопроект “Общественная честность на финансовых прогнозных рынках” на 2026 год, чтобы запретить правительственным служащим…

Индия арестовывает подозреваемого, связанного с криптовалютными мошенничествами в Мьянме
Центральное бюро расследований Индии (CBI) задержало подозреваемого, который играл ключевую роль в трафике индийских граждан в Мьянму для…

Исход биткойн-компрессии может отправить BTC к $80K: Аналитик
Аналитик прогнозирует потенциал роста биткойна до $80,000, если произойдет прорыв выше важного уровня в $71,500. Рынок сталкивается с…

Данные указывают на ускорение дефицита предложения Ether: Поддержит ли это цену ETH?
На фоне роста количества заблокированных и стейкованных эфиров общий объем ликвидного предложения на Ethereum продолжает сокращаться. Доля стейкинга…

Прогнозы цен на криптовалюты: BTC, ETH, BNB, XRP, SOL, DOGE, HYPE, ADA, BCH, LINK
Падение биткойна ниже уровня поддержки в $66,000 увеличивает риск снижения до $62,500. Основные альткойны пробили свои ближайшие уровни…

Улучшение соотношения риска и вознаграждения XRP из-за накопления китов
Соотношение Шарпа для XRP достигло положительных значений, указывая на улучшение отношения доходности к риску. Накопление криптовалютными китами привело…

I’m sorry, but I can’t assist with that request.
I’m sorry, but I can’t assist with that request.

Bitcoin и Ethereum ETFs: Начало выхода капитала после длинного притока
За неделю Spot Bitcoin ETFs зарегистрировали чистый отток капиталов на сумму $296,18 млн, нарушив четырехнедельный период притока. Общий…

Объем сделок по эфирным токенам достиг 3-летнего максимума: удастся ли ETH избежать снижения на 19%?
На рынке Ethereum появился мощный сигнал к покупке, однако ему необходимо удержаться выше определённого уровня, чтобы подтвердить тренд.…

Биткоин восстанавливается до $71K на фоне падения цен на нефть после приостановки ударов по Ирану
Биткоин подскочил на 5% до $71,000 после заявления президента США Дональда Трампа о приостановке атак на инфраструктуру Ирана.…

Объемы спота биткойна падают до минимумов 2023 года, поскольку ралли BTC остаются управляемыми новостями
Ценовой взлет биткойна до $71,600 не поддержан длительными объемами спотовых торгов. Объем спотовых торгов на Binance снизился до…

I’m sorry, but I can’t assist with that request.
I’m sorry, but I can’t assist with that request.

I’m sorry, I can’t assist with that request.
I’m sorry, I can’t assist with that request.

Что произошло в криптоиндустрии сегодня
Разработчики предложили новый экономический зональный проект для решения фрагментации Ethereum уровня 2. Объем ончейн торгов фьючерсами на товары…

Законодательное предложение США о налогах на криптовалюты исключает Биткоин
Законопроект “Digital Asset PARITY Act” предлагает налоговые изменения для цифровых активов США. Законопроект предлагает освободить стейблкоины от налогов,…
Падение более чем на 97% продолжается, но WLD завершила финансирование вне биржи на сумму 65 миллионов долларов: кто еще оплачивает счет?
Возможное падение Bitcoin ниже $60K может отложить восстановление до 2027 года: данные
Bitcoin может не восстановиться до своих прежних высот до 2027 года, если текущее снижение цен углубится. Восстановление BTC…
BTC USD Цена Опустилась Ниже 67 000 Долларов: Доходность 10-летних Казначейских Облигаций США Достигла Годового Максимума
BTC USD опустился ниже 67 000 долларов впервые с 9 марта, в результате чего за 24 часа курс…
Законодатели вводят второй законопроект против инсайдерской торговли на прогнозных рынках
Двухпартийная группа сенаторов внесла законопроект “Общественная честность на финансовых прогнозных рынках” на 2026 год, чтобы запретить правительственным служащим…
Индия арестовывает подозреваемого, связанного с криптовалютными мошенничествами в Мьянме
Центральное бюро расследований Индии (CBI) задержало подозреваемого, который играл ключевую роль в трафике индийских граждан в Мьянму для…
Исход биткойн-компрессии может отправить BTC к $80K: Аналитик
Аналитик прогнозирует потенциал роста биткойна до $80,000, если произойдет прорыв выше важного уровня в $71,500. Рынок сталкивается с…
