Polymarket Bot Tutorial · Глава 24 из 32
Бот для Polymarket perpetual futures (perps): native leverage 2-25x, funding rate carry, математика дистанции до liquidation, sizing на основе ATR, сравнение с Binance/Bybit perps. Rules и code skeleton уровня production.
Что охватывает эта глава
Polymarket Perps - это более новый instrument с native leverage 2-25x и funding rates. Они ведут себя иначе, чем binary markets: liquidation здесь реальная, математика sizing другая, и источники edge не такие, как в prediction-market части. Эта глава посвящена bot patterns, специфичным для perps.
- Что такое perps и почему они отличаются
- Native leverage на Polymarket (2-25x)
- Механика funding rate
- Математика liquidation distance
- Position sizing на основе ATR
- Сравнение: Polymarket perps vs Binance/Bybit
- Risk: сценарии liquidation cascade
- Code: размещение leveraged perp order со stop
Что такое perps и почему они отличаются
Polymarket Perpetual Futures (запущены в конце 2025) - это instrument, отличный от binary prediction markets. Perps дают непрерывное price exposure к underlying - BTC, ETH или другим активам - с native leverage и funding rate.
Отличия от binaries:
- Continuous: нет даты expiry, нет resolution.
- Leveraged: доступны 2x-25x нативно, без сложных proxy contract.
- Funded: positive funding платит shorts; negative funding платит longs. Funding начисляется continuously.
- Liquidatable: если margin исчерпан, exchange принудительно закрывает позицию. Реальный loss.
С точки зрения стратегии perps - это CFD trading, а не prediction market trading. Источники edge полностью другие - technicals, funding-arb, basis trades; ни один из них не применим к binaries.
Native leverage на Polymarket (2-25x)
Polymarket Perps предлагают leverage от 2x до 25x. Чем выше leverage, тем меньше price move, который приведет к liquidation.
При 10x leverage adverse move на 10% уничтожает позицию. BTC регулярно движется на 10% в течение недели, поэтому позиции 10x+ при удержании несколько дней имеют ненулевой риск liquidation.
Практическая рекомендация: 2-5x leverage для swing trades на дни-недели; 5-10x для day trades; 10x+ только для сделок длительностью менее часа с tight stop. Выше 10x для retail - это gambling; funding cost + liquidation tail съедают expected return.
Механика funding rate
Funding - это почасовой payment, который longs платят shorts (или наоборот), чтобы удерживать perp price привязанной к spot price. Rate рассчитывается из price gap: positive gap → longs pay; negative gap → shorts pay.
Типичные величины: 0.01-0.05% за 8-часовой период в нормальных условиях; до 0.5% за период при экстремальных движениях. В годовом выражении это 1-50% - существенно для стратегии, которая держит позиции несколько дней.
Funding может быть всей edge в стратегии: входите в сторону, которая получает payment, а price exposure хеджируете spot или другим perp. Классический basis-trade arb.
Математика liquidation distance
Liquidation price для long: entry × (1 - 1/leverage). При 10x long, открытом по BTC $50,000, liquidation будет на $45,000 (adverse move 10%).
Для short: entry × (1 + 1/leverage). При short 10x на $50k liquidation на $55k.
Матиматика упрощена, так как не учитывает maintenance margin buffer (обычно 0.5-1% от theoretical liquidation price в вашу пользу). Для sanity используйте простую формулу; для точного числа проверяйте actual maintenance margin на exchange.
Практика: position size + leverage должны давать liquidation distance > 2x daily volatility underlying. Для ежедневной volatility BTC около 3% это означает leverage ≤ 16x для позиции без stop.
Position sizing на основе ATR
Average True Range (ATR) - это мера volatility: средний daily price range за последние N дней. Position sizing на основе ATR привязывает risk к текущим market conditions.
Паттерн: риск фиксированную сумму в долларах, например $50, на сделку. Position size = risk / (ATR × leverage). Если daily ATR у BTC $1,500 (3% от $50k), а leverage 10x, то position size будет $50 / (1500 × 0.1) = около $3,300 notional.
Это автоматически уменьшает позиции в режимах высокой volatility и увеличивает их в режимах низкой volatility. Ключевое преимущество: один плохой день меняет equity на ограниченную величину независимо от market regime.
Сравнение: Polymarket perps vs Binance/Bybit
Polymarket Perps по сравнению с основными CEX perp venues, май 2026.
| Polymarket Perps | Binance Perps | Bybit Perps | |
|---|---|---|---|
| Max leverage | 10x | 125x | 100x |
| Settlement | USDC on Polygon | USDT on BSC/internal | USDT |
| KYC required | varies by region | yes (most regions) | yes |
| API maturity | new, growing | mature, deep | mature |
| Liquidity (BTC) | moderate | extremely deep | deep |
Polymarket Perps - правильный выбор, если вы уже на Polymarket и важна операционная простота одного venue. Для sole-perp strategies в масштабе CEX выигрывают по liquidity. Большинство известных нам builders используют Polymarket Perps для basis-arb со своими binary positions, а не как standalone perp venue.
Risk: сценарии liquidation cascade
Катастрофический failure для perp: одно adverse move достаточной величины, чтобы вызвать liquidation, где сама liquidation создает pressure на book, которое ликвидирует еще больше позиций.
В истории CEX за 2024-25 BTC несколько раз двигался intraday на 10-20%, и 10x+ longs были cascaded out в течение часов. Polymarket Perps не immune; liquidity там тоньше, и похожее движение ликвидировало бы позиции еще быстрее.
Защита:
- Manual stop выше liquidation price: ставьте hard limit на 30-50% внутри вашей liquidation, чтобы выйти до срабатывания auto-liquidator (это экономит liquidation fee).
- Limits на position size: никогда не рискуйте более чем 10% equity на одной perp-позиции.
- Halt при смене regime: если 24h volatility превышает baseline в 2 раза, уменьшайте position sizes или ставьте на паузу новые входы.
Code: размещение leveraged perp order со stop
Reference: skeleton для размещения Polymarket Perp position с hard stop.
def open_long_with_stop(symbol, entry_px, leverage, risk_usd):
# Compute position size from risk budget
liquidation_px = entry_px * (1 - 1/leverage)
stop_px = entry_px * (1 - 0.7/leverage) # 70% to liquidation
risk_per_share = entry_px - stop_px
shares = risk_usd / risk_per_share
# Place long entry
long_order = perp_api.place_order(
symbol=symbol, side="long", size=shares, leverage=leverage,
order_type="market"
)
if long_order.status != "filled": return None
# Place hard stop just below entry
stop_order = perp_api.place_order(
symbol=symbol, side="close", size=shares, stop_price=stop_px,
order_type="stop_market", reduce_only=True
)
return {"long": long_order, "stop": stop_order}
Reduce-only stop гарантирует, что он может только закрыть существующую позицию, а не развернуть вас в short. Production additions: trailing stop на profit, monitor funding-cost, halt по position-size.





