מדריך לבוט Polymarket · פרק 16 מתוך 32
ארביטראז' סטטיסטי ב־Polymarket: זוגות בין שווקים (אירועים מתואמים), מרווחים בין Polymarket ל־Kalshi, חזרה לממוצע, ואיך לקבוע את גודל הפוזיציות ב־stat-arb כשהשווקים סוף סוף מתיישבים.
מה הפרק הזה מכסה
ארביטראז' סטטיסטי ב־Polymarket מנצל תמחורים שגויים זמניים בין שווקים מתואמים - אותו אירוע ב־Polymarket מול Kalshi, או שווקים קשורים בתוך Polymarket עצמו. היתרונות קטנים (בדרך כלל 1-3 סנט) ושבריריים מבחינה תפעולית. הפרק הזה כנה לגבי מה עובד, מה לא עובד, ואיזה סיכון ביצוע רב-שלבי מחסל את רוב הניסיונות.
ארביטראז' סטטיסטי בין שווקים מנצל חוסר עקביות זמני בתמחור בין Polymarket ל־Kalshi, בין Polymarket ל־Manifold, או בין שווקים מתואמים בתוך Polymarket. היתרונות קטנים (בדרך כלל 1-3 סנט) ודורשים ביצוע מהיר בשתי הרגליים. זהו ספר ההדרכה הכנה, כולל המורכבות התפעולית שמחסלת את רוב הניסיונות.
- מה המשמעות של stat-arb בשווקי חיזוי
- דוגמאות למרווחים בין Polymarket ל־Kalshi
- זוגות בתוך Polymarket (אירועים מתואמים)
- חזרה לממוצע מול המשך מגמה
- קביעת גודל לפוזיציות בשווקים שמתיישבים (ולא תמידיים)
- סיכון: סטייה מעבר להתיישבות
- קוד: מנטר זוגות והדלקה לפי סף
מה המשמעות של stat-arb בשווקי חיזוי
ארביטראז' סטטיסטי בשווקי חיזוי פירושו מסחר במרווח בין שני שווקים שאמורים להיות מתומחרים באופן עקבי. יש שלושה סוגים נפוצים ב־Polymarket.
- בין זירות: אותו אירוע ב־Polymarket וב־Kalshi (או Manifold, PredictIt). התמחור אמור להתכנס; בפועל הוא נסחף ב־2-5 סנט.
- זוג של אותו אירוע: הורה מול סכום הרגליים בשווקי NegRisk מרובי-תוצאות. האינבריאנט של סכום ל־1 מאפשר לעשות arb כשהרגליים מסתכמות בפחות מ־1.0.
- זוג אירועים מתואמים: שני שווקים על תוצאות קשורות (למשל "Trump president on Jan 1" מול "Trump president on Mar 1"). הם אמורים להיסחר בטווח של 2-3 סנט זה מזה.
היתרונות קטנים. המורכבות התפעולית אמיתית. רוב הניסיונות נכשלים בביצוע, לא בתיאוריה.
דוגמאות למרווחים בין Polymarket ל־Kalshi
על סמך תצפיות ב־2025-26, Polymarket ו־Kalshi מציעות את אותם אירועים מרכזיים בארה"ב, אבל מתמחרות בהפרש קבוע של 1-4 סנט. הפער קיים מסיבות מבניות שצריך למודל בכל arb.
גורמים מבניים:
- אסימטריה בעמלות: Kalshi גובה 4-7% על עסקאות מנצחות (משתנה לפי שוק); Polymarket גובה 0 עמלת taker. בחישוב arb חייבים לנטרל את הנגיסה של Kalshi.
- פרמיית סיכון להתיישבות: כאשר ההכרעה של שוק עמומה, ה־UMA של זירה אחת עלול להכריע אחרת מהשופטים של הזירה השנייה. השוק מתמחר את זה.
- אוכלוסיית סוחרים: ב־Polymarket יש נטייה לקהל צעיר וקריפטו-נייטיבי יותר; ב־Kalshi יש נטייה לקהל מקצועי / hedge. הם לא מסכימים באופן שיטתי על אותם אירועים.
ה־arb עובד כשהפער גדול מהפרמיה המבנית בתוספת העמלות. פער של 5 סנט בשוק שבו הפרמיה המבנית היא 1c והעמלות המשולבות הן 1c הוא יתרון אמיתי של 3c.
זוגות בתוך Polymarket (אירועים מתואמים)
בתוך Polymarket, זוגות של אירועים מתואמים קלים יותר ל־arb מאשר בין זירות. אותה מבנה עמלות, אותו ארנק, וביצוע אטומי אפשרי.
דוגמאות שמתמחרות באופן לא עקבי בצורה קבועה:
- Trump president on date A מול Trump president on date B (כאשר B מאוחר מ־A בפחות מ־90 יום).
- האם Bitcoin יגיע ל־$100k עד 31 ביולי מול $100k עד 31 באוגוסט.
- רגלי Yes מול No באותו שוק בינארי (הסכום אמור להיות = 1.0; לפעמים סוטה עד 1.04 בספרים דלילים).
ה־Yes+No=1 arb הוא הנקי ביותר: קוראים את שתי הרגליים מאותו שוק, מפעילים FOK על שתיהן אם הסכום יורד מתחת ל־0.97 (עם מרווח בטיחות לעמלת המרווח). ההון הנדרש דומה בשתי הרגליים; הביצוע אטומי כאשר שתי ההתאמות חוזרות באותה תשובה.
חזרה לממוצע מול המשך מגמה
יש שני משטרים של stat-arb. חזרה לממוצע: הזוג התרחק בגלל רעש; אתם מהמרים על התכנסות. המשך מגמה: הזוג התחיל להיפרד כי הגיע מידע חדש; אתם מהמרים על המשך סטייה.
הקושי הוא להבדיל ביניהם. היוריסטיקה: אם הסטייה קרתה עם נפח גלוי (לווייתן דחף ספר של רגל אחת), זה חדשות - כדאי להימנע רק אם יש לכם מודל. אם היא נסחפה לאט עם נפח נמוך, זה רעש - אפשר לסחור חזרה לממוצע בביטחון.
למבנים חדשים: סחרו רק חזרה לממוצע, בזוגות שבהם הסטייה היא פחות מסטיית תקן אחת של הסחיפה ההיסטורית. המשך מגמה דורש מודל שקולט את החדשות; בלעדיו, אתם סוחרים מול זרימה מיודעת.
קביעת גודל לפוזיציות בשווקים שמתיישבים (ולא תמידיים)
שווקי חיזוי מתיישבים. זוגות קריפטו לא. זה משנה את המתמטיקה.
לפוזיציית pair-arb ב־Polymarket יש לוח תשלומים קבוע: כשהשניים מתיישבים, ההפרש בין המרווח החזוי למרווח בפועל ננעל. אין גלגול, אין החזקה אינסופית.
השלכה על גודל: המקסימום שאפשר להחזיק מוגבל לפי זמן עד להתיישבות, כי ההון נעול עד אז. זוג שמתיישב בעוד 6 חודשים יכול להניב 3c למניה, אבל אי אפשר להפעיל הון נוסף בינתיים אם שני השווקים כבר ממוספרים במלואם.
המסגור הנכון: stat-arb ב־Polymarket הוא סדרה של עסקאות בזמן מוגבל, לא אסטרטגיה מתמשכת. השוו PnL לכל יחידת הון נעול ליום, לא PnL גולמי.
סיכון: סטייה מעבר להתיישבות
התוצאה הגרועה ביותר ב־stat-arb היא שהתחזית שלכם להתכנסות שגויה כי ההנחה הבסיסית הייתה שגויה. דוגמאות:
- שיטרתם "Trump president on Apr 1" מתוך ציפייה שזה יתכנס ל־"Trump president on Mar 1" - אבל שוק התאריך 1 מתיישב YES ושוק התאריך 2 מתיישב NO בגלל הדחת מרץ. התזה שלכם ש"המרווח אמור להיות שטוח" הייתה שגויה.
- עשיתם arb בין Polymarket ל־Kalshi על אותו מנצח בגמר ה־NBA. Polymarket מתיישבת לפי הקבוצה שניצחה בסדרה הרשמית; Kalshi מתיישבת על פי הגדרה מעט שונה שכוללת הארכות שוברות שוויון בצורה אחרת. שתי הזירות מתיישבות YES לפי התנאים המוצהרים שלהן, אבל בכיוונים הפוכים.
קראו בעיון את קריטריוני ההתיישבות של כל שוק. arb בין זירות נמצא במרחק של אי-התאמת התיישבות אחת מהפסד מלא בשתי הרגליים.
קוד: מנטר זוגות והדלקה לפי סף
הפניה: מנטרים שני טוקנים מתואמים, ומפעילים arb כשהמרווח חוצה את הסף.
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)
הניקוי אחרי מילוי חלקי הוא קריטי. בלעדיו, ביצוע חלקי משאיר את הבוט חשוף כיוונית, וזה בדיוק ההפך מכל הרעיון של stat-arb.





