Skip to content

Resolution-Aware Perpetual Futures (PIRAP) on Binary Prediction Markets

Authors: Maksym Nechepurenko (2026) Source: arXiv:2605.10400 (preprint, công bố 11/05/2026) Tag: moi:2026-05-16 #perpetual-futures #prediction-markets #polymarket #derivatives-design #preprint

Ý tưởng cốt lõi

Nechepurenko (2026) đề xuất PIRAP — Polymarket Index Resolution-Aware Perpetual — một framework thiết kế hợp đồng perpetual futures cho binary prediction markets (ví dụ: "Sẽ có suy thoái 2026?", "Đảng nào thắng bầu cử?"). Vấn đề cốt lõi: prediction market underlying có cấu trúc bounded-event (giá trị resolve về 0 hoặc 1 tại moment cụ thể), khác hoàn toàn với crypto perpetuals truyền thống mà underlying là continuous price (BTC, ETH). Việc dùng nguyên xi cấu trúc perpetual cũ (basis funding + static vol-margin) sẽ gây thảm họa khi event resolve.

PIRAP gồm 6 thành phần cốt lõi:

  1. Index estimator: kết hợp mid-price, depth-weighted mid, và time-decayed VWAP — ổn định hơn raw mid trong order book mỏng.
  2. Jump-aware tiered margin: margin tính theo terminal-collapse magnitude bị bounded — không scale theo continuous vol như BTC perp.
  3. Leverage compression schedule: leverage tối đa giảm dần khi gần resolution — chống cascade liquidation tại moment-of-truth.
  4. Resolution-aware funding rule: funding có "boundary-aware correction" — khi giá gần 0 hoặc 1, funding chuyển sang dạng asymmetric để tránh manipulation.
  5. Multi-stage halt protocol: tạm dừng giao dịch theo từng giai đoạn khi có dấu hiệu pump/dump bất thường (giống circuit breaker NYSE nhưng calibrated cho prediction market).
  6. Eligibility framework: chỉ market có depth/volume tối thiểu được phép listing perpetual.

Hai mệnh đề non-portability propositions chứng minh: standard basis-only funding + continuous-vol static margin không thể safely áp dụng cho underlying là bounded-event.

Empirical evaluation: PMXT v2 archive Polymarket cho period 21/04/2026 - 27/04/2026, sample 13.298 markets pass adequacy gates (từ 61.087 ingested), 13.115 resolved trong empirical window.

Ý nghĩa: đây là một trong những bài đầu tiên thiết kế derivatives layer trên prediction markets — đây sẽ là mảnh đất alpha mới khi Polymarket, Kalshi, và các venue prediction khác mở rộng dần.

Ứng dụng giao dịch chính

Hai phân khúc:

  1. Maker/market designer: nếu bạn build platform offering perpetuals on prediction markets, dùng PIRAP framework để (a) tránh tail risk catastrophic, (b) attract liquidity provider, (c) compliance-friendly với regulator.

  2. Taker/trader: hiểu mechanics PIRAP để arbitrage và position properly:

    • Funding arbitrage: khi funding rate "đè" mạnh xa rồi resolution, có thể short perp + long spot (or vice versa) để extract carry mà không bị tail risk.
    • Leverage compression front-running: leverage cap giảm dần khi gần resolution → traders bị forced de-lever → cascade selling/buying — pattern có thể dự đoán.
    • Resolution boundary play: khi giá perpetual lệch xa "fair" implied probability từ underlying market (e.g. perpetual price 0.85 vs Polymarket spot 0.78), arb opportunity.

Áp dụng đa thị trường

Crypto perpetual futures (BTC/ETH perp traditional)

  • BTC/ETH perp KHÔNG cùng cấu trúc bounded-event → toàn bộ framework PIRAP không apply trực tiếp.
  • Tuy nhiên, một số insight có thể port:
    • Index estimator combining depth-weighted mid + VWAP: nhiều exchange đang dùng — paper formalize cách combine.
    • Multi-stage halt protocol: Binance/Bybit đã có "auto-deleveraging" nhưng thiếu tiered halt — đây là lesson để cải thiện.

Crypto spot

  • Không trực tiếp áp dụng.
  • Indirect: khi event-linked perpetual phát triển, sẽ tạo signal cho crypto spot — ví dụ "BTC giá > $200K cuối 2026" perp giá thay đổi → có thông tin về sentiment macro liquid mà spot không có.

Polymarket / Kalshi / Augur (prediction markets)

  • Đây là sản phẩm chính của paper. Trader trên Polymarket có thể dùng PIRAP framework để:
    • Đánh giá fair value của perpetual price khi market launch perpetual layer (Polymarket đang test).
    • Identify mispricing giữa spot prediction market và perpetual layer.
    • Position theo "boundary effect" gần resolution date.

US equity futures (ES, NQ, RTY)

  • Một số derivatives trên equity index có cấu trúc gần giống bounded-event: binary options, knock-out options, weekly options gần expiry với strike rất ATM.
  • Framework PIRAP có thể inspire risk management cho 0DTE option market making — vốn cũng có "terminal collapse" tại expiry.

VN30F (Hợp đồng tương lai chỉ số)

  • Không áp dụng trực tiếp vì VN30F là continuous-underlying.
  • Indirect lesson: cấu trúc margin tiered theo time-to-expiry (đặc biệt cuối phiên đáo hạn) có thể được institutionalize theo PIRAP design.

Cân nhắc cross-market chung

  • Bounded vs continuous underlying là phân biệt fundamental khi thiết kế derivatives — không thể "one-size-fits-all".
  • Lý thuyết của Nechepurenko mở ra subfield mới: event-linked derivatives sẽ là một lớp tài sản riêng trong 2-3 năm tới.

Minh họa Python

python
import numpy as np
import pandas as pd

def index_estimator_pirap(orderbook: dict,
                          recent_trades: pd.DataFrame,
                          decay_halflife_sec: float = 30) -> float:
    """
    Index estimator PIRAP: kết hợp mid-price, depth-weighted mid, time-decayed VWAP.

    orderbook: {'bid': [(price, size), ...], 'ask': [(price, size), ...]}
    recent_trades: DataFrame [ts, price, size], index trades gần nhất.
    """
    # 1. Mid price (best bid + best ask) / 2
    best_bid = orderbook['bid'][0][0]
    best_ask = orderbook['ask'][0][0]
    mid = (best_bid + best_ask) / 2

    # 2. Depth-weighted mid (5 levels mỗi bên)
    bid_levels = orderbook['bid'][:5]
    ask_levels = orderbook['ask'][:5]
    total_bid_size = sum(s for _, s in bid_levels)
    total_ask_size = sum(s for _, s in ask_levels)
    weighted_bid = sum(p * s for p, s in bid_levels) / total_bid_size if total_bid_size > 0 else best_bid
    weighted_ask = sum(p * s for p, s in ask_levels) / total_ask_size if total_ask_size > 0 else best_ask
    dw_mid = (weighted_bid * total_ask_size + weighted_ask * total_bid_size) / (total_bid_size + total_ask_size)

    # 3. Time-decayed VWAP
    now = recent_trades.index.max()
    dt = (now - recent_trades.index).total_seconds()
    weights = np.exp(-dt * np.log(2) / decay_halflife_sec)
    vwap = (recent_trades['price'] * recent_trades['size'] * weights).sum() / (recent_trades['size'] * weights).sum()

    # 4. Combine — equal weight 3 estimators
    return (mid + dw_mid + vwap) / 3


def leverage_compression_schedule(current_time: pd.Timestamp,
                                  resolution_time: pd.Timestamp,
                                  initial_max_leverage: float = 10.0) -> float:
    """
    Leverage cap giảm dần theo distance-to-resolution.
    Inspired by PIRAP — full leverage khi xa, compress khi gần.
    """
    hours_to_resolution = (resolution_time - current_time).total_seconds() / 3600
    if hours_to_resolution <= 0:
        return 1.0
    if hours_to_resolution >= 24 * 7:  # > 1 tuần
        return initial_max_leverage
    if hours_to_resolution >= 24:  # 1-7 ngày
        return initial_max_leverage * 0.5
    if hours_to_resolution >= 4:  # 4h-1d
        return initial_max_leverage * 0.2
    return initial_max_leverage * 0.05  # < 4h: very conservative


def funding_boundary_correction(perp_price: float,
                                spot_implied_prob: float,
                                base_funding_rate: float = 0.0001) -> float:
    """
    Boundary-aware funding: khi gần 0 hoặc 1, funding asymmetric để chống manipulation.
    """
    # Distance to nearest boundary
    distance = min(spot_implied_prob, 1 - spot_implied_prob)
    boundary_multiplier = 1.0 if distance > 0.20 else (distance / 0.20) ** 2
    basis = perp_price - spot_implied_prob
    return base_funding_rate * np.sign(basis) * abs(basis) * boundary_multiplier

Powered by dautu.tech