gm 👋
Собрал вам инфы из твиттера о том, как правильно готовить WebSocket-коннекты для торговых ботов на Polymarket. Хотя в целом, тема универсальная — применимо к любому WS: CLOB, Gamma, Binance, что угодно.
Суть проблемы: WS — штука грязная. Пропущенные тики, stale data, микро-дисконнекты. Это значит, что стратегия исполняется не так, как задумана. Fills хуже, хедж кривой, entry point пропущен. Разница между вылизанным WS и сырым коннектом — это разница в деньгах.
И так, 6 советов.
WS Warmup. Первые 3-5 секунд любого коннекта — мусор, stale биды. Стартуешь коннект за 15 секунд до открытия торгового окна и мониторишь качество тиков. Условие: ≥3 тика на токен за последние 5 секунд и ни одного скачка больше 5 центов. Не прошёл — скипаешь окно.
Объём. Создаешь до 300 параллельных WS-коннектов на один источник. Бот берёт первый тик с дедупликацией — какой из коннектов дал данные первым, тот и используется. Каждые 4 секунды убиваешь и респавнишь самые медленные 10%.
Stale Tic Guard. Каждый входящий тик сравнивается с последней известной ценой из warmup-монитора. Дельта больше 15 центов — реджект, пишешь в лог. Простая, но критичная проверка.
First Tic Skip. Первый тик каждого нового коннекта — это закэшированный снапшот ордербука, не реальные данные. Дропаешь безусловно.
Timing Offset. Не стартуй все коннекты одновременно. 100 штук — распределяешь по одной секунде, старт каждые 10ms. Это даёт разным коннектам шанс поймать разные тики вместо одного и того же.
Anti-Jitter Reaper. Трекаешь Jitter EMA на каждый коннект — это экспоненциальная скользящая средняя по таймингу между тиками. Нестабильные коннекты убиваются первыми. Grace period 8 секунд для новых коннектов, бюджет — макс 20 респавнов в минуту.
Если ваши вебсокеты не делают всё это — другие трейдеры будут быстрее.
Post #876
4.79K
- 🐳 44
- 👍 17
- 🥴 6
- 🤔 2