Polymarket Bot Tutorial · Глава 21 из 32

Стратегии bot для binary Yes/No markets на Polymarket: standard event contracts, жёстко ограниченное leverage 1x, масштабирование через breadth портфеля, распространённые ошибки (chasing 0.99) и code skeleton.

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

Binary (Yes/No) markets - это основа Polymarket. Большинство стратегий строится именно здесь. В этой главе рассматриваются cap по leverage, ловушка цены 0.99, в которую попадают новички, и pattern breadth-not-size, к которому приходят production bots.

  • Что покрывают binary markets
  • Cap по leverage 1x (и как масштабироваться в обход него)
  • Распространённая ошибка: chasing 0.99 prices
  • Portfolio breadth как effective leverage
  • Risk на market против risk на portfolio
  • Code: сканирование binary markets и размещение sized buys

Что покрывают binary markets

Binary markets - это основа Polymarket: один yes/no вопрос с двумя outcome tokens. "Сможет ли Трамп выиграть выборы 2024 года?" - это binary; "Кто выиграет выборы 2024 года?" с 5 кандидатами - это NegRisk (глава 11).

Два outcome tokens (YES и NO) в binary market в сумме дают 1.0 минус небольшой spread tax. Можно покупать любую сторону; у каждой стороны есть свой order book. Pricing симметричен - покупка YES по 0.40 эквивалентна продаже NO по 0.60 в terms expected payoff.

Большинство не-tournament markets на Polymarket - бинарные: вопросы о погоде, исходы отдельных политических событий, отдельные sports games, single price-target crypto questions. Pattern bot здесь в основном одинаковый.

Cap по leverage 1x и как масштабироваться в обход него

Binary markets на Polymarket имеют leverage 1x: вы тратите $40, чтобы купить 100 shares по 0.40; максимальный payout - $100. Margin и liquidation здесь нет. Capital efficiency ниже, чем у perp futures (глава 24), где доступно 2-25x.

Масштабирование в обход cap 1x означает одно из трёх: (1) размещать больше capital across markets - диверсифицировать, а не lever, (2) циклически использовать capital through resolving markets - capital освобождается при каждом resolution и переходит в следующий market, (3) использовать NegRisk markets, где arb на sum-to-1 может создавать effective synthetic leverage.

Правильная рамка для binary strategy: low-leverage, high-breadth. 50 small positions в 50 markets - типичный профиль зрелого bot, а не 5 big positions в 5 markets.

Распространённая ошибка: chasing 0.99 prices

Самый частый провал binary-bot: купить near-resolution heavy favorite по 0.99, ожидая лёгкий payout в 1 cent при YES resolution.

Математика: при 0.99 вы платите 99c, чтобы выиграть 1c. Failure rate 1% (1 из 100 markets), при котором вы теряете 99c на каждом проигрыше, стирает 99 успешных выигрышей по 1c. Risk-reward ratio на этом экстремуме крайне жёсткое.

Capacity тоже проблема. Order book на 0.99 тонкий; если выставить meaningful size, цена уходит к 0.995 или выше, и без того слабый edge ещё сильнее ухудшается.

Избегайте markets с ценой > 0.92, если у вас нет specific strategy, разработанной под tail-yield arb profile. Большинству binary bots не стоит покупать выше 0.85.

Portfolio breadth как effective leverage

Вы не можете leverage отдельные positions, но можете leverage variance characteristics портфеля, удерживая много uncorrelated bets одновременно.

50 positions по $20 - это $1,000 в работе. Если win rate 55% при economics +3c/-4c, ожидаемый daily PnL равен (0.55 × 3 − 0.45 × 4) × 50 × $0.20 = $1.50 expected, при ограниченной variance. Та же expected return, но намного меньший drawdown, чем у одной позиции на $1,000.

Ограничение: positions должны быть действительно uncorrelated. 50 NFL favorites в один уикенд - это не 50 independent bets; в основном это одна weather-and-favorite bet, коррелирующая между games. Диверсифицируйте по sport, event type, time horizon.

Risk на market против risk на portfolio

Два risk cap, и оба обязательны.

  • Per-market: максимум $X на market независимо от edge. Ограничивает катастрофический single-market loss. Типичное значение: $25-100 на market.
  • Portfolio: максимальный total capital, размещённый в любой момент времени. Ограничивает total drawdown в периоды неудачи по всему портфелю. Типичное значение: 50-70% wallet balance.

Cap per-market важнее, потому что он ограничивает blast radius любой отдельной bug или ситуации edge-disappears. Portfolio cap - это sanity check; при 50+ positions закон больших чисел обычно удерживает вас в пределах, даже если его нет.

Оба cap должны enforced в code, а не в голове. Bot без enforced caps со временем найдёт конфигурацию, в которой размещает 90% capital в одном market, и потеряет его.

Code: scan binary markets и place sized buys

Reference: scan top-volume binary markets, filter valid setups, place sized FOK buys.

def scan_and_buy():
    events = gamma_top_events(limit=50, active=True, closed=False)
    for ev in events:
        for m in ev.get("markets", []):
            if m.get("negRisk"): continue   # binaries only
            outs = json.loads(m["outcomes"])
            prices = [float(p) for p in json.loads(m["outcomePrices"])]
            for i, out_name in enumerate(outs):
                if not setup_qualifies(m, i, prices[i]): continue
                tok = json.loads(m["clobTokenIds"])[i]
                size = compute_size(m, prices[i])
                if size < 5: continue
                place_fok(tok, "BUY", prices[i] + 0.02, size, neg_risk=False)

def setup_qualifies(m, idx, price):
    return 0.10 <= price <= 0.85    # avoid extremes

Функция setup_qualifies - это место, где живёт ваша strategy. Wrapper - это просто plumbing.

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

Что такое binary market на Polymarket?
Это market ровно с двумя outcomes - YES (1 USD, если событие происходит, 0 USD, если нет) и NO. Большинство событий на Polymarket бинарные: "Произойдёт ли X к Y?" Каждая share приносит 1 USD на выигравшей стороне и 0 на проигравшей, с cap.
Можно ли leverage binary position на Polymarket?
Не с native leverage. Binary markets имеют cap 1x - ваш max loss равен стоимости покупки. Synthetic leverage достигается через breadth портфеля: 50 small concurrent binary positions с положительным expected value масштабируются быстрее, чем одна большая позиция.
Почему покупать по 0.99 рискованно?
При 0.99 upside - 1 cent (примерно 1% return), тогда как downside - 99 cents (loss -99%, если маловероятное событие всё же произойдёт). Такая asymmetry risk-reward очень жёсткая - одно black-swan событие стирает 100 обычных выигрышей. Жёсткое правило для наших bots: не покупать выше 0.95, если ваша expected value math не безупречна.
Какой размер сделки использовать на один binary market?
1-5% bankroll на market. При bankroll $500 это 5-25 USD на position. Kelly criterion даёт теоретический максимум (~edge / variance), но большинству retail bots стоит использовать fractional-Kelly на уровне 25-50% от full Kelly, чтобы пережить variance.
Как находить profitable binary markets?
Три фильтра: (1) Liquidity - объём 10K+ USD за 24h, чтобы можно было войти и выйти. (2) Resolution clarity - markets с двусмысленными criteria несут dispute risk. (3) Источник edge - news, statistical model или domain expertise. Без одного из этих трёх у вас нет edge, у вас есть hope.
Binary markets менее risky, чем NegRisk multi-outcome?
На уровне market - да (механика чище, нет cross-leg risk). На уровне portfolio - зависит от структуры. Диверсифицированный portfolio из 30 binary markets часто имеет lower variance, чем concentrated NegRisk multi-outcome bet.