פקודות בלוק וסליפייג': היכן הולכת התוצאה
פקודה גדולה לעיתים רחוקות מבוצעת במחיר אחד. ספר הנזילות סופי: כדי לצבור נפח, ביצוע פקודת בלוק עובר דרך כמה רמות, וכל עסקה הבאה נסגרת גרוע יותר מהקודמת. הפער בין מחיר מחושב למחיר בפועל הוא סליפייג', ובשוק דק הוא מכסה את העמלות במידה רבה.
לאחר מכן נכנסת מכניקה שנייה — השפעה על השוק. ברגע שחלק מהנפח נכנס לפיד העסקאות, עושי שוק מזיזים ציטוטים, ארביטראז'ים מושכים את המחיר לרמה החדשה, וצופים רואים עקבות של קונה גדול.
נזילות ספר הפקודות ברמות שנחצו יורדת בתוך שניות, והנפח הנותר מבוצע ביוקר עוד יותר — השוק מגלם את הפקודה מראש.
לכן מחיר הביצוע אינו שווה למחיר הציטוט ברגע קבלת ההחלטה. האלגוריתם פותר בעיה הפוכה: לפצל את הנפח כך שהמחיר הממוצע יהיה קרוב יותר למחיר המחושב, והעקבות בספר הפקודות — מינימליות.
פרופיל TWAP מותח את הכניסה לאורך זמן, VWAP קושר את הקצב להתפלגות הנפח, לוגיקת IS מחפשת איזון בין סיכון ההמתנה לעלות ההשפעה.
כאן בדיוק הולכת התוצאה: שברי אחוזים לעסקה לאורך מרחק הופכים לסעיף ההוצאות העיקרי. להלן נפרק ממה מורכב הסליפייג' של פקודה גדולה ואילו פרמטרי ביצוע מכווננים לנזילות ספציפית של ספר הפקודות ולפרופיל המכשיר.
מה נותן ביצוע אלגוריתמי: אפקט בגדלים מדידים
פקודת בלוק גדולה כפקודה אחת אוכלת בבת אחת כמה רמות של ספר הפקודות: העסקה הראשונה מזיזה את המחיר, והנפח הנותר יוצא ברמות גרועות יותר. הסליפייג' גדל לא ליניארית — ככל שהפקודה גדולה יותר ביחס לנפח היומי של המכשיר, כך כל חלק נפח נוסף יקר יותר.
ביצוע אלגוריתמי מסיר את התלות הזו: הנפח נחתך לפקודות בנות ומתחלק בזמן. חלקו של הסליפייג' שנחסך נמדד ביחס למדד ייחוס ממוצע לתקופה — השוואה ל-VWAP מראה עד כמה מחיר הביצוע הממוצע קרוב יותר לשוק מאשר בפקודת שוק אחת על כל הנפח.
גם העקבות בספר הפקודות נשלטות: כל פקודה בת קטנה מצפיפות גלויה ברמה שלה ומוצבת כלימיט, לכן ספר הפקודות לא מתפרק ואסטרטגיות חיקוי לא הולכות אחרינו.
יציבות מחיר הביצוע נקבעת מראש בטווח סטייה מותר — הפיזור בין עסקת הבת הטובה לגרועה מצטמצם, והתוצאה משוחזרת על סדרת פקודות, ולא תלויה ברגע שנתפס במקרה.
בנפרד נעלם סוג של כשלים בתנועות חדות. חיתוך פרימיטיבי ממשיך להשלים את הנפח בכל מחיר; ביצוע עם השהיה וחישוב מחדש לא סוחר במרווח כזה וחוזר לשוק מאוחר יותר, כשהמרווח והצפיפות חזרו לנורמה.
זה נראה בדוח המדדים: שיעור הפקודות הבנות שהוזזו ובוטלו, סטיית המחיר הממוצע מהיעד, התפלגות הנפח המבוצע לאורך זמן.
פקודות בלוק: TWAP, VWAP או IS — מה לבחור
כל שלושת המצבים פותרים משימה אחת — לפצל פקודת בלוק גדולה כך שהשוק לא יראה אותה כולה. ההבדל המרכזי הוא מדד הייחוס שאליו קשור הקצב: זמן, פרופיל נפח או מחיר קבלת ההחלטה. פרמטרי החיתוך — צעד המרווח, מגבלת השתתפות בנפח, גבולות מחיר, רנדומיזציה — נבחרים לספר פקודות ולאופק ספציפיים.
| מצב | מתי מתאים | היכן נשבר |
|---|---|---|
| TWAP | נזילות אחידה, אין רקע חדשותי, האופק חשוב יותר ממחיר הכניסה | זינוק תנודתיות: חלקים שווים נופלים לספר דק, המחיר הממוצע בורח |
| VWAP | מכשיר נזיל עם פרופיל נפח תוך-יומי יציב | פרופיל היום חורג מההיסטורי — חדשות, נפח חריג; ההזמנה מפגרת אחרי השוק |
| IS | יש מחיר החלטה ואות רגיש לזמן; קצב אגרסיבי מותר | ספר דק: ההשפעה על השוק אוכלת את הרווח, המחיר הממוצע יוצא גרוע ממחיר ההחלטה |
| POV | צריך להיות בלתי נראה, ההשתתפות מוגבלת לחלק מהנפח בפועל | הנפח בספר יורד — ההזמנה נמתחת ולא נכנסת באופק |
מה מבררים לפני בחירה
בפועל לא מקבעים מצב אחד לכל הפקודה: מפצלים אותה לשלבים — התחלה לפי IS על הנזילות הזמינה, עיקר הנפח לפי VWAP והשלמת היתרה לפי TWAP בחלון שקט. מעבר לפי סטייה ממדד הייחוס ולפי יתרת הנפח נקבע בקונפיגורציית הביצוע, ולא מוחלט ידנית.
איך אנחנו מטמיעים אלגוריתמי ביצוע: שלבי העבודה
הטמעת אלגוריתמי ביצוע מתחילה בביקורת לוגיקת המסחר, לא בקוד. בודקים כיצד נוצרות פקודות בלוק, מה מגביל את הנפח וכיצד מחושב מחיר הייחוס, ומתעדים את הפער בין ביצוע צפוי לבפועל — הוא בדיוק מראה איזה אלגוריתם יניב אפקט.
- ביקורת לוגיקת המסחר. מפרקים את זרימת הפקודות, מקורות המחירים, עיגול הלוט וכללי הפלטפורמות. בפלט — מפה של מקומות שבהם הביצוע מפסיד בסליפייג' ואיפה נדרש שליטה בהשתתפות בנפח.
- סכמת ביצוע. בוחרים היכן מתאים TWAP, היכן VWAP, והיכן IS עם עדיפות לסטייה מינימלית ממחיר ההחלטה. מתאמים אופק, גבולות בלוקים והתנהגות בעת עצירת מסחר.
- כיול פרמטרים. בוחרים גודל פקודות בנות, צעד זמן, חלק השתתפות מותר ומגבלות סטיית מחיר. הפרמטרים חיים בקונפיגורציה, לא בקוד — משנים אותם בלי לבנות מחדש.
- בדיקה על נתונים היסטוריים. מריצים תרחישים על הקלטות ספר הפקודות והעסקאות, כולל שווקים דקים ותנועות חדות. משווים לביצוע בסיס ובודקים יציבות התוצאה, ולא ריצה בודדת מוצלחת.
- בקרת סיכון. מוסיפים מגבלות, איסור ביצוע מחוץ לשעות מותרות ותיעוד כל פקודה בת, כדי לאפשר שחזור לוגיקת ההחלטה.
- מסירה. מוסרים קונפיגורציות, סכמה, דוח ריצות ותקנון שינוי פרמטרים, ונשארים בקשר בתקופת הביצועים האמיתיים הראשונים.
מדיניות, קונפיגורציות ותקנוני ביצוע
פקודת בלוק היא לא פקודה אחת, אלא רצף פעולות בזמן, לכן התוצאה תלויה במגבלות שהוגדרו, בחלונות ביצוע ובכללי התנהגות בעת סטיית שוק. יחד עם הקוד אנחנו מוסרים ללקוח קווי מתאר לניהול האלגוריתם — מהרשאות גישה ועד תקנון פעולות של מהנדס תורן. כל האמור נשאר בקווי המתאר שלכם ואינו דורש את השתתפותנו בעבודה היומיומית.
- קונפיגורציית ביצוע: פרמטרי פיצול נפח, חלון זמן, סטייה מותרת ממחיר היעד, מגבלת חלק פסיבי והתנהגות בעת חוסר נזילות — כקבצים ניתנים לעריכה, ולא כערכים בתוך הקוד.
- מדיניות גישה: תפקידים להפעלה, השהיה ועריכת פרמטרים, הפרדת הרשאות בין סוחר, בקרת סיכון ומהנדס תורן, יומן פעולות עם שיוך ליזם.
- סכמות אינטראקציה: זרימת פקודות ודוחות בין המערכות שלכם למודול המבצע, נקודות כשל ונוהל פעולה בעת ניתוק תקשורת.
- תקנון עבודה: סדר הפעלה ועצירה של קמפיין, מגבלות סיכון, ספי השהיה אוטומטית בעת סטיית מחיר חריגה או ירידת ביצוע.
- תיעוד: תיאור פרמטרים עם גבולות ערכים מותרים, הוראה למשמרת תורנית, רשימת בדיקות בסטיות אופייניות.
- מסירה לצוות: פירוק הקוד והקונפיגורציות, תרגול משותף של תרחיש השהיה, גישה למאגר ולסביבת בדיקות.
מקרה בוחן: כיצד ירד הסליפייג' בפקודות גדולות
פנה אלינו עושה שוק שביצע פקודות בלוק בכמה פלטפורמות, כולל Binance: נפח של פקודה אחת הזיז את המחיר בעצמו, וכל דקת עיכוב ייקרה את הכניסה. לפני האלגוריתמיזציה פיצלו את הנפח ידנית — הסוחר הציב לימיטים, עקב אחרי ספר הפקודות והזיז אותם לפי המצב.
מדידות על סדרת ביצועים גדולים נתנו תמונה לא נעימה: פיזור המחיר בין העסקה הראשונה לאחרונה הגיע ל-60–80 נקודות בסיס, בערך בארבעה מעשרה מקרים היה צריך להתערב ידנית, וסגירת הנפח המלא נמשכה 5–6 שעות ולא תמיד הסתיימה בחלון.
מה שינו
הרכבנו חיתוך לפי TWAP עם צעד אדפטיבי: גודל המנה מחושב מחדש מהנפח בפועל ברמות הטובות, ולא לפי טיימר קבוע. פרופיל VWAP בונים לפי התפלגות נזילות היסטורית בתוך חלון המסחר, כדי שרוב הנפח יבוצע במקום שבו הספר עמוק יותר.
מדד בקרה — implementation shortfall: את הסטייה מחשבים ממחיר ההחלטה, ולא מההצבה הראשונה, לכן האלגוריתם לא 'מדביק' שוק שכבר ברח. לימיטים פסיביים בתוך המרווח מוגבלים בסיכון אי-ביצוע מותר, והיתרה נסגרת באגרסיביות אם עד סוף החלון נשאר מעט זמן.
מה השתנה
לפי תוצאות מדידות חוזרות על נפחים דומים, פיזור מחיר הביצוע הצטמצם ל-18–25 נקודות בסיס, שיעור ההתערבויות הידניות ירד מ-40% למקרים בודדים, וזמן ביצוע הנפח התקצר מ-5–6 שעות ל-80–90 דקות. הנפח שלא הושלם בממוצע אינו עולה על 2%.
כל הצבה נרשמת ביומן עם חתימת זמן וסטייה ממדד הייחוס — לאחר הביצוע הלקוח מקבל ניתוח שבו רואים כמה סליפייג' נתן השוק, וכמה נתנה לוגיקת החיתוך.
מה לעשות אם חלק מהנפח כבר בוצע ידנית
האלגוריתם לא מבצע פקודה 'מאפס' — בהפעלה מחדש הוא משווה את נפח היעד לנפח שבוצע בפועל בבורסה ועובד רק עם היתרה. מקור האמת — לא המאגר הפנימי שלנו, אלא מצב הפוזיציה בספר הפקודות והיסטוריית העסקאות: היא נמשכת לפי מזהה פקודת האב בעת ההתחלה.
לכן התערבות ידנית לא יוצרת ביצוע כפול: אם חלק מהנפח כבר נסגר ידנית, יתרת הפקודה מחושבת מחדש, ופקודות בנות שהוצבו מבוטלות לפני הראשונה החדשה.
הצעד השני — חישוב מחדש של לוח הזמנים. אצל נפח שבוצע חלקית משתנה לא רק הגודל, אלא גם האופק: המנות הנותרות מתחלקות מחדש על הזמן שלא חלף, אחרת היתרה תישפך לשוק בגוש אחד ותזיז את המחיר.
מגבלות הנפח והסטייה ממחיר הייחוס מחושבות מחדש — את הייחוס לוקחים מהאורקל Chainlink — ונבדקות מול המרווח בפועל בספר הפקודות לפני כל מנה.
המחיר הממוצע הוא המקום השברירי ביותר. כדי שעסקאות ידניות ועבודת האלגוריתם לא 'יאכלו' זו את זו, המחיר הממוצע המשוקלל מחושב על כל הפקודה, כולל ביצועים ידניים, ונשמר כמגבלה: אם הממוצע הנוכחי גרוע מהתוכנית, האלגוריתם מאט, ולא מדביק את הנפח באגרסיה. הסף נקבע מראש: כמה סטייה מותרת ברגע נתון וכמה — בסיכום.
הפעלה מחדש בטוחה, כי החשבונאות נעשית לפי עסקאות בפועל, ולא לפי כוונה. כל מחזור רושם ביומן נפח לפני ואחרי תיקון ידני, מחיר וסיבת עצירה — לפיו רואים מהיכן נוצרה הסטייה מהתוכנית. אם הנפח נסגר כולו מחוץ לאלגוריתם, הוא לא פותח מנות חדשות ומסיים את העבודה לפי המצב בפועל.
ספקות טכניים לפני הטמעה: שאלות נפוצות
לפני הפעלת ביצוע בלוק בודקים לא 'האם האלגוריתם יעבוד', אלא כיצד הוא מתנהג בגבולות: ספר דק, מגבלות הפלטפורמה, היפוך מחיר חד. להלן — שאלות נפוצות שעולות בדיונים טכניים, והתשובות שלנו לגופן.
מה יקרה אם הנזילות בספר הפקודות תרד?
TWAP חותך את הנפח לחלקים שווים בזמן, לכן בספר דק כל מנה מתחילה לאכול יותר מחיר. אנחנו קובעים סף השתתפות בנפח הכולל: בחריגה ממנו האלגוריתם לא מציב את החלק הבא, אלא ממתין להתאוששות הצפיפות. סיכון הביצוע עובר ללוח הזמנים, ולא לסליפייג'.
איך נלקחות בחשבון מגבלות וכללי הפלטפורמה?
מגבלות נפח, תדירות בקשות וצעד מחיר מינימלי מוטמעות בקונפיגורציה לפני ההתחלה: מנות מחושבות בהתחשב בפקודות שכבר נשלחו ואושרו. פקודה שנדחתה מנותחת, ולא חוזרת על עצמה בעיוורון — אחרת סדרת סירובים מזיזה את כל לוח הביצוע.
איך נשלטת איכות הביצוע?
כל מנה מתועדת: זמן ההחלטה, מחיר היעד והמחיר בפועל, השתתפות בנפח. לאחר מכן מחושבת הסטייה ממדד הייחוס — פרופיל VWAP או מחיר ההפעלה עבור IS. זה נותן ניתוח אובייקטיבי של העסקה במקום הערכה 'ביצענו בסדר'.
האם אפשר לעצור את הביצוע ולהסיר את היתרות?
כן. קיימים עצירה ידנית, הסרת פקודות פעילות וביטול יתרות שלא בוצעו. נפח שלא הושלם נרשם בדוח עם סיבת העצירה, כדי שהחלטה להמשיך תתקבל לפי נתונים, ולא לפי ניחושים.
נדון במשימה: מה נדרש להערכת ביצוע
כדי לחזור עם הערכה ותוכנית הטמעה, אנחנו צריכים לא כוונה כללית, אלא נתוני קלט על המכשיר ומצב הביצוע. ככל שקווי המתאר של העסקה מתואר מדויק יותר, כך יש פחות הנחות בהרכב העבודה והלוחות ריאליים יותר.
- מכשיר, פלטפורמות ומצב מסחר: ספוט או נגזרים, בורסה אחת או כמה עם ניתוב פקודות ביניהן.
- רשימת זוגות וגדלים אופייניים של פקודות בלוק — מהנפח החד-פעמי תלוי הבחירה בין TWAP, VWAP ואסטרטגיית מזעור סטייה ממחיר ההחלטה.
- אופק ביצוע: במהלך היום, שבוע עבודה או עד השגת מחיר היעד.
- אמת מידה ל-VWAP: לחשב לפי פרופיל הנפח של הפלטפורמה, לפי השוק המצרפי או לפי הפרופיל ההיסטורי שלכם.
- מגבלת חלק ההשתתפות בנפח: איזה חלק מהשוק מותר לתפוס כדי לא להזיז את המחיר בפקודות שלכם.
- סטייה מותרת ממחיר הייחוס וכללי התנהגות בחריגה ממנה: השהיה, הפחתת קצב או הוצאת היתרה.
- גישה: גישה תוכנתית לחשבון עם הרשאת קריאה והצבת פקודות, קווי מתאר לבדיקות, מגבלות לימיטים.
- מדדי ביצוע נוכחיים, אם התהליך כבר קיים: שיעור הנפח שלא בוצע, סטייה ממוצעת מאמת המידה, זמן עד סגירה מלאה של הפוזיציה.
לפי הנתונים האלה אנחנו מרכיבים מפת ביצוע, מעריכים את הרכב העבודה לפי אסטרטגיות, בקרות סיכון ודיווח, וחוזרים עם הערכה ותוכנית הטמעה לפי שלבים. תארו את המשימה בהיקף כזה — ומשם השיחה כבר עניינית.







