מדוע מאגר הנזילות של ההימורים מאבד יציבות
נזילות דקה — מאגר המוחזק בידי כמה ספקי נזילות — נראית עובדת בדיוק עד ההימור הגדול הראשון. הימור בגובה כמה אחוזים מעומק המאגר אוכל את הרמות הטובות ביותר, וההחלקה מרחיקה את המקדם בפועל מזה שהמשתמש ראה. הוא עובר למקור אחר, והנזילות שנותרה סופגת עיוות גדול עוד יותר.
ספק הנזילות מחשב תשואה לפי העמלות ולעיתים נדירות מכניס למשוואה הפסדים בלתי קבועים. כאשר המקדמים זזים, הרכב המאגר מתרחק מהמחירים החיצוניים: סוחרי ארביטראז' קונים את הנכס שהוזל ומחזירים אותו לאחר התזוזה, ובמאגר נשאר עודף של הנכס היורד. העמלה על ההימורים לא תמיד מכסה את הפער הזה, והראשון לצאת מהמאגר הוא מי שמחשב מהר יותר מכולם.
קבוצת הבעיות השנייה היא בעיות הסליקה. תוצאת האירוע מגיעה באיחור מהמקור, המקדמים מתעדכנים בינתיים לפי מצב מיושן, והתשלומים תלויים בסטטוס «בעיבוד». חוסר סנכרון של המקדמים בין המאגר לפלטפורמות חיצוניות פותח ארביטראז' פשוט: לוקחים הימור לפי המחיר שלנו, כשידועה כבר התוצאה.
בהמשך נפרט כיצד זה נסגר: תמחור לפי עומק המאגר, מגבלות על גובה ההימור ביחס לנזילות, אישור צולב של תוצאות ותור תשלומים עם קרן רזרבה.
אפקט מדיד: מה משתנה בסליקה ובתשלומים
מאגר נזילות הוא לא פונקציית תשלום אחת, אלא שרשרת: לקבע את התוצאה, לקחת מחיר בנקודת זמן מוגדרת, לחשב מחדש את החלקים ולחלק את הזיכויים. כל עוד השלבים האלה חיים בסקריפטים סביב ממשק הבורסה, כל חוליה נשברת בדרכה שלה. כשהכללים כתובים בחוזה, כל חוליה הופכת למדידה.
זמן הסליקה והזמינות. בעבר אספו את התוצאה של אירוע במשך שעות: ייצוא עסקאות, הצלבה עם לוגים, חישוב ידני של חלקים. במאגר חוזי הסליקה מתבצעת במעבר אחד — התוצאה מופיעה בתוך דקה מרגע אישור התוצאה, ומצבי ביניים זמינים בכל רגע. המשתתף רואה ממה מורכב החלק שלו, בלי לפנות לתמיכה.
שיעור הסליקות השנויות במחלוקת. המחלוקת כמעט תמיד אינה על תוצאת האירוע, אלא על האריתמטיקה: של מי השער, לאיזו שנייה, עם איזו סבילות. רגע הקיבוע, מקור המחיר וסף הסטייה נכתבים בכללי המאגר; עבור צמדים דקים אנחנו לוקחים מקור מצטבר כמו Chainlink ומקבעים חציון על פני חלון. שיעור הפניות השנויות במחלוקת יורד מעשרות אחוזים לאחוזים בודדים.
החלקה ועומק. גודל הפוזיציה מוגבל במגבלת חשיפה לתוצאה, כניסה ויציאה מתבצעות מול החלק השמור של המאגר. ההחלקה בפעולה טיפוסית מצטמצמת פי כמה: כניסה גדולה כבר לא מזיזה את הציטוט כך שהתשלום למשתתף הראשון אוכל את חלקו של השני.
סוגי כשל שנעלמים. זיכוי כפול, תשלום לפי מחיר מיושן, סליקה תקועה כאשר שירות חיצוני אינו זמין — אלה סוגי כשל נפרדים, ולא «באגים נדירים». אותם סוגרים באמצעות אידמפוטנטיות של הזיכוי, חלון קשיח לקיבוע המחיר ומקור גיבוי.
השוואת סכמות מאגר: אוטומטית, מנוהלת, היברידית
סכמת המאגר קובעת מי מציב את הציטוטים, מהיכן מגיע העומק וכיצד מחושבת עמלת ספק הנזילות. בהשקת הימורים בוחרים בפועל בין שלוש תצורות — וכל אחת נשברת במצב עומס אחר.
| אפשרות | מתי מתאימה | מגבלות |
|---|---|---|
| תמחור אוטומטי לפי נוסחה מיתרות הרזרבה | זרימת עסקאות אחידה, אין מפעיל ייעודי, נדרשת עבודה ללא עצירות | בנזילות דקה עיוות חד-צדדי מרחיק את המחיר מהשוק, והארביטראז' מרוקן את הרזרבה |
| מאגר מנוהל עם מפעיל | צמדים תנודתיים, מעגל משתתפים מצומצם, נדרשת התאמה ידנית של ציטוטים | התגובה תלויה באדם, וההשהיה בין תנועת השוק למחיר החדש גדלה |
| סכמת סליקה היברידית עם מקור נזילות חיצוני | נדרש עומק כבר בהתחלה והגנה מפני תנועות חדות | חשבונאות מורכבת יותר של חלקים ועמלה מצטברת, ומתווספת תלות בספק חיצוני |
היכן כל סכמה נשברת
האוטומטית אינה סובלת פערים בין הרזרבות: ברגע שצד אחד של המאגר מתרוקן, מחיר הסליקה מפסיק לשקף את השוק, וספקי הנזילות רושמים הפסד במקום רווח. הסכמה המנוהלת עומדת בתנודתיות, אבל מפסידה בנפח — המפעיל לא מספיק פיזית להזיז ציטוטים בקצב עסקאות גבוה.
סכמת הסליקה ההיברידית סוגרת את שני הקצוות, אם מקור הנזילות החיצוני מסונכרן עם החשבונאות הפנימית. בחוסר סנכרון נפרדים חלקי המשתתפים והעמלה שנצברה לספק הנזילות, וההצלבה הופכת לבדיקה ידנית. לכן מקבעים את הסכמה לפני ההשקה: החלפת המודל נוגעת בחלקים שכבר חולקו ובהיסטוריית הזיכויים.
שלבי העבודה: מביקורת המכניקה ועד מסירת הנהלים
מאגר נזילות להימורים הוא חבילה של חוזים, אורקל תוצאות וסליקת תשלומים. טעות בכל שכבה נראית כבר בכסף אמיתי, ולכן השלבים מתקדמים בקפדנות ברצף: השלב הבא מתחיל רק לאחר בדיקת השלב הקודם.
- ביקורת מכניקת המאגר. מפרקים את קליטת ההימורים, חישוב חלקו של ספק הנזילות והתנהגות המערכת כשהמאגר מוטה לצד אחד. התוצאה — מפת צווארי בקבוק עם הערכת סיכון לכל אחד.
- סכמת תזרימי הכספים. מקבעים את המעגלים — קליטת הימורים, רזרבת תשלומים, תגמול ספקים — ואת האופן שבו הכספים נעים ביניהם. הסכמה הופכת לנקודת אמת משותפת לפיתוח ולבדיקה.
- הגדרת סליקת התוצאות. קובעים את מקור התוצאה, כמה אישורים נדרשים ולפי איזה כלל נסגרת הסליקה כשהנתונים חלוקים. בדיוק כאן נוצרות רוב המחלוקות.
- מימוש ובדיקה פנימית. סוגרים תרחישי קצה: נזילות אפס, ביטול אירוע, זינוק חד בנפח ההימורים.
- בדיקה על נתונים היסטוריים. מריצים את המכניקה על אירועי עבר ופרופילי הימורים אמיתיים, מצליבים את חישוב התשלומים עם הצפוי ובוחנים את התנהגות המאגר בקטעים תנודתיים.
- מסירת תיעוד והשקה. מוסרים תיאור מעגלים, מדיניות סליקה, סדר פריסה, תוכנית נסיגה וצ'ק-ליסטים לתחזוקה.
לאחר המסירה הצוות שלכם מנהל את המאגר בעצמו: ההחלטות מקובעות בנהלים, ולא נשמרות רק בראשים של מהנדסים.
סכמות תזרים, מטריצת הרשאות ונהלי סליקה
מעגל הסליקה שורד גם את הצוות שהרכיב אותו וגם את הקבלן שהגדיר אותו: מתחלפים אדמיניסטרטורים, חותמים והרכב המאגר. לכן כל תוצר נמסר בצורה שאפשר לקרוא בלי גישה להתכתבויות ולערוצים סגורים — לפיה מהנדס חדש או הבודק שלכם ישחזר את היגיון תנועת הכספים.
- סכמת תנועת הכספים — מהפקדה למאגר ועד זיכוי התגמול והמשיכה: באיזה שלב משתנה היתרה, איזה חוזה נקרא, והיכן הכספים נתקעים במצב ביניים.
- סכמת התפקידים — מפקיד, מפעיל פרמטרים, גזבר, צופה: אילו פעולות חותם כל תפקיד והיכן נגמרות סמכויותיו.
- מטריצת הרשאות הגישה — טבלת «תפקיד × פעולה»: שינוי עמלה, מגבלות, השהיה, עדכון לוגיקה, משיכת עמלות שנאספו. עבור פעולות קריטיות מצוינים סף החתימות ומעגל מחזיקי המפתחות, ולצידם יומן שינויי פרמטרים: מי, מתי ומאיזו סיבה שינה את הפרמטר.
- נוהל לבירור תוצאות שנויות במחלוקת — כיצד מקבעים את הפער (חתך יתרות ברגע הסליקה ויומן אירועים), באיזה פרק זמן אנחנו מגיבים, מי מקבל את ההחלטה וכיצד המקרה נסגר ברישום ביומן.
- הוראות עצירה בחירום — סדר פעולות מדויק להשהיה, גורל התגמולים שזוכו אך לא נמשכו, והחזרת המאגר לפעולה עם בדיקת אינואריאנטים.
- נוהל עדכון לוגיקת הסליקה — הרצה על עותק של המאגר, חלון שינויים, העברת מצב, ונסיגה מוגדרת מראש לגרסה הקודמת.
- תיעוד מעגל הסליקה — נוסחאות הזיכוי וכללי העיגול, סדר חתכי המצב, והתנהגות בקצוות: נזילות אפס, משיכה חדה של משתתף גדול.
מקרה בוחן: המחזור גדל, שיעור הסליקות השנויות במחלוקת ירד פי כמה
מאגר להימורי בלוקצ'יין על אירועי ספורט הושק בסכמה משולבת: הנזילות ישבה בכמה ארנקים, המקדמים חושבו במודול סליקה לפי שער שהמפעיל הזין ידנית. בסופי שבוע עמוסים המאגר לא הספיק לסגור פוזיציות גדולות, התשלומים יצאו באיחור של עד 9 שעות, ופערים בין השער המקובע למחיר השוק טופלו ידנית.
שיעור הסליקות השנויות במחלוקת הגיע ל-7.4% מכלל אירועי העונה. כל מחלוקת — משיכה מושהית, התכתבות וחישוב מחדש בדיעבד; ספקי הנזילות הוציאו את הנפח שלהם, כי לא הבינו כיצד נוצר המחיר.
מה שינו
את המאגר פיצלו לליבה ולרזרבה לתשלומים גדולים — ירידה של שוק אחד הפסיקה להזיז את המחיר של כל המאגר. השער ואירועי התשלום נקשר לאורקל Chainlink והוגדר מסדרון סטייה: בחריגה ממנו קליטת ההימורים בשוק נסגרת אוטומטית, והסליקה מתבצעת לפי המחיר המאושר האחרון.
את התשלומים העבירו לסליקה באצוות עם סדר דטרמיניסטי ויומן אירועים: שליחה חוזרת לא יוצרת תשלום שני, וטרנזקציה תקועה מתרוממת אוטומטית. לוח בקרה לכל שוק מציג עומק, החלקה ושיעור הימורים שנדחו.
מה התוצאה
במהלך שתי עונות המחזור של המאגר גדל פי 4.5, והעומק בשווקים העמוסים ביותר נשמר בתוך 3% מהיעד. שיעור הסליקות השנויות במחלוקת ירד ל-0.8% — המקרים שנותרו קשורים כמעט תמיד לטעות הזנה של המפעיל, ולא ללוגיקת הסליקה. זמן התשלום הממוצע — 40 שניות, והאחוזון ה-99 נכנס בתוך 4 דקות גם בשעות שיא.
במה סליקה לפי אורקל שונה מסליקה לפי ריבוי חתימות?
סליקה לפי אורקל לוקחת את התוצאה ממקור חיצוני — ספר פקודות ציבורי של בורסה או צירוף ציטוטים מכמה פלטפורמות. ריבוי חתימות יוצא מהחלטה של קבוצת מאשרים: הטרנזקציה יוצאת רק לאחר שנאסף סף המפתחות.
הסכמה הראשונה מתאימה היכן שהתוצאה היא מספר חד-משמעי, והשנייה — היכן שהתוצאה דורשת פרשנות: הכרה באירוע, פסילה, עובדה משפטית.
השהיית האישור באורקל כוללת את פרק הזמן בין עדכוני המקור ואת חלון המחלוקת — הסליקה נכנסת בדקות ואינה תלויה בנוכחות אנשים. ריבוי חתימות ממתין לחתימה של כל אחד ממשתתפי הסף: בזמן שהמפתחות נאספים, המאגר מחזיק פוזיציה פתוחה, והציטוט מתיישן. בשוק עם סבבים קצרים הפסקה כזו הופכת להפסד שיטתי בזמן.
גם עלות האישור היא בעלת אופי אחר. אורקל — תשלום על בקשות ומנוי לזרם ציטוטים, והוא צפוי מראש ואינו גדל עם מספר ההימורים. ריבוי חתימות זול יותר בסליקות נדירות, אבל מחייב להחזיק סט מפתחות, לעקוב אחר רוטציה ולשלם למאשרים.
אמון: באורקל הסיכון נמצא במקור — מניפולציה בנתונים או תקלה של הפלטפורמה; בריבוי חתימות — קנוניה של המאשרים, והסף רק מייקר אותה ולא מסיר אותה.
סכמת הסליקה נבחרת לפי תדירות הסליקות ויכולת האימות של התוצאה. לשווקי מחירים וספורט — אורקל עם צירוף של כמה מקורות, חיתוך ערכים חריגים וערוץ נתונים גיבוי. לאירועים — ריבוי חתימות עם סף, רוטציית מפתחות, חלון ערעור ופיקדון. בסכמה היברידית האורקל סוגר את הסבב, וריבוי החתימות פועל כערעור בתוך חלון המחלוקת.
שאלות על אורקלים, חשיפה ועמלות
האורקל מספק את תוצאת האירוע, אבל בין פרסום התוצאה לתשלום יש כמה הסתייגויות טכניות. הן כמעט אינן נראות בבדיקות וצפות רק לאחר השקת המאגר, כשיש בו הימורים.
החשיפה מחושבת כפוזיציה נטו לכל תוצאה בנפרד, ולא לפי השוק כולו. המגבלה לתוצאה נקבעת בפרמטרים של המאגר: כשמגיעים אליה, קליטת ההימורים על אותה תוצאה נסגרת, והמקדמים מחושבים מחדש לפי התפלגות הכספים בפועל.
מה קורה להימורים פתוחים בתוצאה שנויה במחלוקת?
חישוב התשלומים מוקפא, והכספים נשארים בחוזה המאגר. חלון ההכרעה מתארך בתקופת הערעור, והתוצאה נקבעת בהחלטת האורקל; בפסק זמן מופעל כלל החזרת גוף ההימור.
מתי נגבית עמלת המאגר?
ברגע סליקת התשלום, ולא בעת קליטת ההימור. היא אינה נמשכת לארנק נפרד, אלא נשארת במאגר ומגדילה את חלקם של ספקי הנזילות — התשואה מחושבת לפי הסליקה בפועל.
איך מוסיפים שוק חדש בלי לעצור את המאגר?
שוק הוא רשומה נפרדת במרשם החוזה, כשמאגר הנזילות משותף. הוא מתווסף בטרנזקציה של אדמיניסטרטור, מקבל מגבלה לתוצאה ומתחבר לאותו אורקל; הימורים פתוחים בשווקים אחרים אינם נפגעים.
מה קורה לחוזים כשמחליפים את לוגיקת הסליקה?
העדכון מתבצע דרך חוזה פרוקסי: המימוש משתנה, ומצב המאגר וההימורים הפתוחים נשמרים. גרסת הלוגיקה מקובעת ברגע ההימור — הימורים שכבר התקבלו נספרים לפי הכללים הקודמים.
נדון במשימה ונחזור עם הערכה ותוכנית
כדי לחזור עם הערכת היקף העבודה, ולא עם מילים כלליות, נדרש תיאור המשימה בלוגיקה שלכם: איזו רשת ואיזה סוג סטייקינג, של מי הטוקן שמתקבל למאגר, כיצד מזוכה התגמול ומה קורה ביציאה מהמאגר. ככל שהכלכלה מתוארת בצורה קונקרטית יותר, כך נפרק את העבודה לשלבים בדיוק רב יותר.
בנפרד נדבר על הרשאות ונתונים — היעדרם הוא בדרך כלל מה שמעכב את ההתחלה. מספיק סביבת בדיקות, גישות לחוזים והבנה מי בצד הלקוח מאשר את התוצאה. מזה מרכיבים את היקף העבודה, תוכנית ההטמעה והערכת היקף העבודה.
- הגדרת המשימה: רשת, סוג סטייקינג, תפקידי המשתתפים, תרחישי כניסה ויציאה מהמאגר.
- כלכלה: מקור התגמול, עמלת הפרוטוקול, סדר החלוקה בין ספקי הנזילות.
- הרשאות ונתונים: מאגרי קוד, סביבת בדיקות, צמתים, גישה לחוזים ולמפתחות עם מודל אחסון מוגדר.
- מגבלות: תקרות הפקדה ומשיכה, דרישות דיווח למשתתפי המאגר.
- היקף העבודה: חוזים, אינטגרציה עם ארנקים, ניטור פוזיציות, בדיקות אבטחה.
- תוכנית הטמעה: סדר השלבים, נקודות קבלה, עלייה לרשת הראשית, ליווי לאחר ההשקה.
בסיום אתם מקבלים תוכנית עבודה עם שלבים, נקודות קבלה ותחומי אחריות. תארו את המשימה בצורה חופשית — נחזור עם הערכה וניתוח של הנקודות השנויות במחלוקת.







