Polymarket Bot Tutorial · Kabanata 16 ng 32
Statistical arbitrage sa Polymarket: cross-market pairs (correlated events), Polymarket-vs-Kalshi spreads, mean reversion, at paano sukatin ang stat-arb positions kapag nag-re-resolve ang markets.
Ano ang sinasaklaw ng kabanatang ito
Ang statistical arbitrage sa Polymarket ay nag-exploit ng transient mispricings sa pagitan ng correlated markets - parehong event sa Polymarket vs Kalshi, o related markets sa loob mismo ng Polymarket. Ang edges ay maliit (1-3 cents karaniwan) at operationally fragile. Ang kabanatang ito ay honest tungkol sa kung ano ang gumagana, kung ano ang hindi, at ang multi-leg execution risk na pumapatay sa karamihan ng mga pagtatangka.
Ang cross-market statistical arbitrage ay nag-eexploit ng transient pricing inconsistencies sa pagitan ng Polymarket at Kalshi, Polymarket at Manifold, o sa pagitan ng correlated markets sa loob ng Polymarket. Ang edges ay maliit (1-3 cents karaniwan) at nangangailangan ng mabilis na execution sa parehong legs. Ang kabanatang ito ay ang honest playbook kasama ang operational complexity na pumapatay sa karamihan ng mga pagtatangka.
- Ano ang ibig sabihin ng stat-arb sa prediction markets
- Polymarket-vs-Kalshi spread examples
- Pairs sa loob ng Polymarket (correlated events)
- Mean reversion vs trend continuation
- Sizing para sa nagre-resolve (hindi perpetual) na markets
- Risk: divergence pagkalipas ng resolution
- Code: pairs monitor at threshold-trigger
Ano ang ibig sabihin ng stat-arb sa prediction markets
Ang statistical arbitrage sa prediction markets ay nangangahulugang pag-trade ng spread sa pagitan ng dalawang markets na dapat ay consistent ang presyo. Tatlong flavors ang karaniwan sa Polymarket.
- Cross-venue: parehong event sa Polymarket at Kalshi (o Manifold, PredictIt). Ang pricing ay dapat mag-converge; sa praktika ay nag-drift ito ng 2-5 cents.
- Same-event-pair: parent vs sum ng legs sa NegRisk multi-outcome markets. Ang sum-to-1 invariant ay nagpapahintulot sa iyo na mag-arb kapag ang legs ay nagsa-sum sa wala pang 1.0.
- Correlated-event-pair: dalawang markets tungkol sa related outcomes (e.g. "Trump president on Jan 1" vs "Trump president on Mar 1"). Dapat mag-price sa loob ng 2-3 cents ng isa't isa.
Ang edges ay maliit. Ang operational complexity ay totoo. Karamihan sa mga pagtatangka ay namamatay sa execution, hindi sa teorya.
Polymarket-vs-Kalshi spread examples
Mula sa obserbasyon noong 2025-26, ang Polymarket at Kalshi ay naglilista ng parehong major US events ngunit nag-price ng 1-4 cents na magkalayo sa steady na batayan. Ang gap ay umiiral para sa structural na dahilan na kailangan mong i-model sa anumang arb.
Structural drivers:
- Fee asymmetry: Ang Kalshi ay kumukuha ng 4-7% sa winning trades (nag-iiba ayon sa market); ang Polymarket ay kumukuha ng 0 taker fee. Ang arb math ay dapat mag-net out ng kagat ng Kalshi.
- Settlement risk premium: kapag malabo ang resolution ng market, ang UMA ng isang venue ay maaaring mag-resolve nang iba kaysa sa judges ng isa. Ang market ay nagpe-price nito.
- Trader population: ang Polymarket ay mas bata at mas crypto-native; ang Kalshi ay mas professional / hedge. Sila ay hindi sumasang-ayon sa parehong events nang systematic.
Ang arb ay gumagana kapag ang gap ay lumampas sa structural premium plus fees. Ang 5-cent gap sa market kung saan ang structural premium ay 1c at combined fees ay 1c ay 3c na real edge.
Pairs sa loob ng Polymarket (correlated events)
Sa loob ng Polymarket, ang correlated-event pairs ay mas madaling mag-arb kaysa cross-venue. Parehong fee structure, parehong wallet, atomic execution na posible.
Mga halimbawa na patuloy na nag-i-price nang hindi consistent:
- Trump president sa date A vs Trump president sa date B (kung saan ang B ay later kaysa A ng < 90 araw).
- Tatamaan ba ng Bitcoin ang $100k pagsapit ng July 31 vs $100k pagsapit ng August 31.
- Yes vs No legs sa parehong binary market (sum dapat = 1.0; minsan nag-drift hanggang 1.04 sa thin books).
Ang Yes+No=1 arb ay ang pinakamalinis: basahin ang parehong legs mula sa parehong market, mag-fire ng FOK sa parehong kung ang sum ay bumaba sa ibaba ng 0.97 (allowing for spread tax). Ang kapital na kinakailangan ay halos pantay sa bawat leg; ang execution ay atomic kapag ang parehong fills ay bumalik sa parehong response.
Mean reversion vs trend continuation
Dalawang stat-arb regimes. Mean reversion: ang pair ay nag-drift ng magkahiwalay sa dahilan ng noise; pumusta ka sa convergence. Trend continuation: ang pair ay nagsimulang mag-diverge dahil dumating ang bagong impormasyon; pumusta ka sa karagdagang divergence.
Ang pagkilala sa kanila ay ang mahirap na bahagi. Heuristic: kung nangyari ang divergence sa visible volume (may whale na naglakad sa book ng isang leg), news ito - i-fade lamang kung mayroon kang model. Kung nag-drift ito nang dahan-dahan na may low volume, noise ito - mag-trade ng reversion nang may confidence.
Para sa mga bagong builders: mag-trade ng mean reversion lamang, sa pairs kung saan ang divergence ay < 1 standard deviation ng historical drift. Ang trend continuation ay nangangailangan ng model na nakakahuli ng news; kung wala, nag-trade ka laban sa informed flow.
Sizing para sa nagre-resolve (hindi perpetual) na markets
Ang prediction markets ay nag-re-resolve. Ang crypto pairs ay hindi. Ito ang nagpapabago ng math.
Ang pair-arb position sa Polymarket ay may fixed payout schedule: kapag nag-resolve ang parehong markets, ang pagkakaiba sa pagitan ng predicted spread at actual spread ay naka-lock. Walang rolling, walang infinite holding.
Sizing implication: ang maximum na maaari mong hawakan ay nakatakda ng time-to-resolution, dahil ang capital ay naka-lock hanggang sa oras na iyon. Ang pair na nagre-resolve sa 6 na buwan ay maaaring magbigay sa iyo ng 3c bawat share ngunit hindi mo pwedeng paghirapan ang mas maraming kapital sa pansamantala kung ang parehong markets ay fully sized.
Ang tamang framing: ang stat-arb sa Polymarket ay serye ng bounded-time trades, hindi tuluy-tuloy na strategy. Ihambing ang PnL bawat unit ng naka-lock na kapital bawat araw, hindi ang gross PnL.
Risk: divergence pagkalipas ng resolution
Ang pinakamasamang stat-arb outcome ay kapag mali ang iyong prediction-of-convergence na hula dahil mali ang underlying premise. Mga halimbawa:
- Sinhortan mo ang "Trump president on Apr 1" na inaasahang mag-converge sa "Trump president on Mar 1" - pero ang date 1 market ay nag-resolve YES at ang date 2 ay nag-resolve NO dahil sa March impeachment. Ang iyong "spread dapat flat" na tesis ay mali.
- Inarbo mo ang Polymarket vs Kalshi sa parehong NBA Finals winner. Nag-re-resolve ang Polymarket sa team na nanalo sa official series; nag-re-resolve ang Kalshi sa bahagyang naiibang definition na kinabibilangan ng overtime tie-breakers nang iba. Pareho silang nag-re-resolve YES sa kanilang stated terms, ngunit sa magkasalungat na direksyon.
Basahin ang resolution criteria ng bawat market nang mabuti. Ang cross-venue arb ay isang resolution-mismatch ang layo mula sa full loss sa parehong legs.
Code: pairs monitor at threshold-trigger
Reference: subaybayan ang dalawang correlated tokens, mag-fire ng arb kapag tumawid ang spread sa threshold.
def pairs_monitor(token_a, token_b, threshold_cents=3, size=10):
"""Buy A and Sell B when (1 - ask_A) + bid_B > 1 + threshold."""
while True:
book_a = fetch_book(token_a)
book_b = fetch_book(token_b)
if not (book_a.best_ask and book_b.best_bid):
time.sleep(2); continue
# implied: cost of buying A at ask + value of selling B at bid
edge = (1 - book_a.best_ask) + book_b.best_bid - 1
if edge > threshold_cents / 100:
print(f"ARB edge={edge:.3f}; firing")
r_a = fok_buy(token_a, price=book_a.best_ask, size=size)
if r_a.status != "matched": continue
r_b = fok_sell(token_b, price=book_b.best_bid, size=size)
if r_b.status != "matched":
# leg A filled, B failed -- unhedged, exit A
fok_sell(token_a, price=book_a.best_bid, size=size)
time.sleep(3)
Ang cleanup-on-partial-fill ay kritikal. Kung wala, ang partial execution ay nag-iiwan sa bot na directionally exposed, na siyang kabaliktaran ng buong punto ng stat-arb.





