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


