חקלאות אוטומטית: היכן נשברת הרווחיות
חקלאות אוטומטית נשברת לא באסטרטגיה, אלא בחישוב הרווחיות. האחוז המוצהר של הבריכה הוא חיתוך רגעי שאף אחד לא מביא למכנה משותף: בפרוטוקול אחד התגמולים מגיעים בטוקן אחד, באחר — בכמה, חלקם לא נזילים ונמכרים בהנחה.
בלי נרמול הרווחיות הבוט משווה דברים שאינם בני השוואה ובוחר את הבריכה שנראית הטובה ביותר על הנייר, אך בפועל מניבה פחות.
המקור השני להפסדים — עלות העמלות. כל פעולה בשרשרת (החלפה, הוספת נזילות, איסוף תגמולים, איזון מחדש) עולה גז, וכשהעומס ברשת גובר, העלויות הללו אוכלות את המרווח מהר יותר משהאסטרטגיה מספיקה לצבור אותו.
בוט שמאזן מחדש לפי לוח זמנים ולא לפי כדאיות כלכלית משלם על כל תנועה בלי קשר לשאלה אם היא החזירה את עצמה או לא.
הגורם השלישי — החלקה (slippage) וחיסול הפוזיציה. בתנועת מחיר חדה, עסקה גדולה מתבצעת במחיר גרוע יותר, ופוזיציית הלוואה עם מינוף עוברת לחיסול לפני שהבוט מספיק להגיב. כאן חשובה לא מהירות התגובה כשלעצמה, אלא הספים שבהם הפוזיציה נסגרת או נבנית מחדש.
כל שלוש הסיבות מצטמצמות לאחת: יש לחשב את הרווחיות במטריקה אחידה, לגלגל את העמלות אל תוך ההחלטה על כל פעולה, ולשמור על סיכון החיסול תחת שליטה ברמת הפרמטרים — ולא בתקווה לתזמון מוצלח. נבחן כיצד זה נסגר בארכיטקטורה של הבוט.
מה נותן בוט פארמינג מנוהל
פארמינג מנוהל מתחיל בנרמול התשואה: הבוט מביא מקורות שונים למדד אחיד — תוך התחשבות בתדירות הצבירה, בחסימות משיכה ובעמלות כניסה/יציאה.
בלי זה השוואת תשואות היא חסרת משמעות: שתי פוזיציות עם אותו APY למעשה מניבות תוצאה שונה, כי האחת צוברת תגמולים מדי יום, והשנייה — פעם בשבוע עם אובדן חלק על גז. לאחר הנרמול הבוט מדרג את המאגרים לפי התוצאה הנקייה ושומר על התיק בגבולות פרופיל הסיכון שהוגדר.
הפחתת עמלות היא משימה הנדסית נפרדת. הבוט מקבץ פעולות לחבילה אחת, בוחר חלון עם עומס רשת נמוך ואינו נוגע בפוזיציה לשם העברה על עשיריות האחוז: איזון מחדש מופעל רק כאשר הרווח בתשואה מכסה את עלות הגז עם מרווח. זה מסיר את המקור העיקרי להפסדים בלתי מורגשים — עשרות עסקאות קטנות שאוכלות את המצטבר.
יציבות התשואה נשענת על איזונים מחדש צפויים: הבוט מחשב מחדש משקלים לפי לוח זמנים ובסטייה מחלקים מטרה, ולא לפי רגשות או חדשות. הגנה מפני חיסול פועלת כמעגל נפרד — בקרת מקדם הבטוחה, סגירה חלקית אוטומטית של הפוזיציה ומשיכת הבטוחה עם התקרבות לסף. הסף נקבע מראש, ולכן ההחלטה מתקבלת על ידי כלל, ולא על ידי מפעיל תורן בלילה.
בסך הכל זה מעביר את הפארמינג ממצב ידני למנוהל: התשואה מפסיקה להיות תלויה במי שצופה היום בפוזיציות, העמלות הופכות לסעיף צפוי, והשפליות מוגבלות בסיכון שנבחר מראש.
דרכים לאוטומציה של חקלאות תשואות
אוטומציה של חקלאות תשואות היא מגוון פתרונות, מפעולות ידניות ועד סוכנים אוטונומיים לחלוטין. הבחירה תלויה בכמה פוזיציות אתם מחזיקים, באיזו תדירות משתנה התשואה והאם אתם מוכנים לכך שהבוט פועל ללא אישורכם.
| גישה | מתי מתאימה | מגבלות |
|---|---|---|
| ניהול ידני | 1-3 פוזיציות, איזונים מחדש נדירים | תגובה באיחור: בזמן שאתם ישנים, התשואה יורדת והעמלות עולות |
| סקריפטים לפי לוח זמנים | מאגרים יציבים, שיעורים צפויים | אינם מגיבים לשינויים חדים; בעת תקלה בצומת הפעולה פשוט לא מתבצעת |
| בוט אוטונומי | פוזיציות רבות, תשואה תנודתית | דורש הגנת מפתחות, מגבלות וניטור; שגיאה בלוגיקה משוכפלת על כל הפוזיציות |
| גישה היברידית | רוב תרחישי העבודה | נדרשת הגדרת ספים שבהם הבוט קורא לאדם |
ניהול ידני מעניק שליטה מלאה, אך מפסיד במהירות: בין האות לעסקה חולפות שעות, וחלק מההכנסה הולך לאיבוד על עמלות ושיעור שהוחמץ. סקריפטים סוגרים את השגרה — הם מבצעים פעולות לפי לוח זמנים, אך אינם מעריכים את המצב: אם התשואה ירדה, הסקריפט ימשיך להפקיד כספים לפי התוכנית הישנה.
בוט אוטונומי מחשב תשואה מנורמלת לכל פוזיציה, משווה אותה לסף ומעביר את הכספים בעצמו. כאן חשובות המגבלות: תקרה לגודל פעולה בודדת, הגנת מפתחות וכלל עצירה בעת אנומליה. בלי זה, שגיאה אחת בלוגיקה חוזרת על עצמה בכל הפוזיציות בו-זמנית.
בפועל, לרוב עובדת הגישה ההיברידית: הבוט מנהל את השגרה והאיזונים מחדש, בעוד ההחלטות על שינוי אסטרטגיה או סכומים גדולים נשארות בידי האדם. המהנדסים שלנו מגדירים את הספים כך שהאוטומציה לא תחרוג מהמסגרת שהוגדרה.
כיצד אנו מטמיעים בוט פארמינג
את ההטמעה אנו מתחילים לא מהקוד, אלא מניתוח של מה שכבר עובד: אילו מאגרים מעורבים, כיצד מחושבת התשואה, והיכן אובד הגז. ללא שלב זה הבוט מאוטמט כאוס ומקבע תרחישים הפסדיים.
- ביקורת אסטרטגיות. אנו מרכזים פלטפורמות, מאגרים ונכסים בטבלה אחת, ומביאים את התשואה לבסיס בר-השוואה — ללא זה השוואת שיעורים חסרת משמעות. בנפרד אנו מחשבים איזה חלק מההכנסה נאכל על ידי עמלות והחלקה בכניסה וביציאה.
- נרמול מדדים. אנו מביאים את השיעורים לאופק אחיד ומביאים בחשבון כיצד התשואה משתנה עם גידול הסכום המושקע. בפלט — דירוג אסטרטגיות לפי תוצאה נטו, ולא לפי אחוז ראווה.
- תכנון הלוגיקה. אנו מגדירים תנאי כניסה ויציאה, ספי איזון מחדש, ומגבלות לפוזיציה אחת. אנו מטמיעים תרחישים שבהם הרשת עמוסה: הבוט ממתין לירידת עלות העסקה, ולא משלם כל מחיר עבור מהירות.
- הגדרת הבוט. אנו מרכיבים תצורה עבור הפלטפורמות והנכסים הנבחרים, ומחברים ארנקים עם הרשאות מוגבלות. המפתחות נשמרים כך שמשיכת כספים ללא אישור הבעלים אינה אפשרית.
- בדיקות. אנו מריצים את הלוגיקה על נתונים היסטוריים ועל נפח קטן ברשת אמיתית. אנו משווים את התשואה המחושבת לזו בפועל ומתקנים את הספים, עד שהפער נכנס לטווח מותר.
- מסירה ותיעוד. אנו מוסרים את הבוט המוגדר, תיאור האסטרטגיות, הוראות עצירה ותקנון פעולות בעת תקלה בפלטפורמה. צוות הלקוח יכול לשנות פרמטרים בלעדינו.
כל שלב מסתיים בארטיפקט שניתן לבדוק: טבלת אסטרטגיות, סט ספים, דוח על הרצת בדיקה. זה מאפשר לעצור את העבודה בכל שלב ולראות מה כבר נעשה.
מה כלול באספקה
בסיום הפרויקט נשאר ברשותכם מעגל פעיל של חקלאות אוטומטית (farming) וסט מלא של ארטיפקטים, שבאמצעותם ניתן להפעיל אותו, להעביר אותו לצוות אחר או להרחיב אותו בלעדינו. להלן מה בדיוק כלול באספקה.
- קונפיגורציות אסטרטגיה. קבצים עם פרמטרים לכל רשת ופרוטוקול: מאגרים (pools) יעד, ספי כניסה ויציאה, כללי נרמול תשואה לבסיס השוואה אחיד, מגבלות על גודל הפוזיציה. ניתנים לעריכה ללא בנייה מחדש של הבוט.
- תרשימי ארכיטקטורה. לוגיקת חלוקת ההון בין המאגרים, סדר חתימת הטרנזקציות, נקודות כשל והתנהגות בעת אי-זמינות של צומת או פרוטוקול.
- מדיניויות גישה. תפקידים למפעיל, לצופה ולמפתחות שירות, הפרדת הרשאות לשינוי אסטרטגיה ולהוצאת כספים, כללי רוטציה של מפתחות ועבודה עם אחסון חומרה.
- נהלי תפעול. סדר ההפעלה והעצירה, תגובה לעלייה בעלות הגז, פעולות בעת סטייה של התשואה בפועל מהתשואה המחושבת, פרוטוקול התערבות ידנית.
- דיווח. לוח בקרה (dashboard) לפוזיציות ולתשואה המצטברת, יומן פעולות עם האשים של טרנזקציות, סיכום תקופתי של עמלות וסטיות מהתוכנית.
- ניטור והתראות. מערך בדיקות למצב הבוט, ספי הפעלה וערוצי התראות לצוות.
- תיעוד והעברה. הוראות פריסה, תיאור הקונפיגורציות, ניתוח אירועים טיפוסיים ומפגש העברת ידע למהנדסים שלכם.
הסט self-sufficient: הקונפיגורציות והנהלים מתארים את התנהגות המערכת במלואה, ולכן התמיכה אינה כבולה אלינו. תארו את המשימה — נחזור עם הערכה ותוכנית אספקה המותאמת למעגל שלכם.
מקרה בוחן: נרמול תשואה בשוק תנודתי
הלקוח — מנהל מאגר נזילות — הגיע עם בעיה: תשואת הפוזיציות קפצה משבוע לשבוע, וחלק מהרווח נאכל על ידי עמלות הרשת בכל איזון מחדש. הבוט של חקלאות אוטומטית פעל לפי סף קבוע והופעל בשעות היקרות ביותר, כאשר עומס הרשת היה בשיאו.
בסופו של דבר התשואה בפועל על ההון הייתה נמוכה באופן ניכר מהתשואה המחושבת, ולא היה ניתן לחזות אותה חודש מראש.
מה שינו
הפרדנו שתי משימות שבעבר פתר טריגר אחד: נרמול תשואה וניהול עמלות. הלוגיקה נבנתה מחדש כך שההחלטה להעביר כספים מתקבלת רק כאשר קיים סטייה יציבה של התשואה מהטווח היעד, ולא על בסיס זינוק חד-פעמי. סף ההפעלה נקשר לחציון על פני חלון התצפית — פיקים אקראיים של APY כבר לא מפעילים פעולות מיותרות.
מודול נפרד מעריך את עלות הפעולה לפני שליחתה: אם העמלה אוכלת חלק גדול מדי מהתועלת הצפויה, ההעברה נדחית לחלון של עומס נמוך. פעולות מקובצות מאחדות מספר פעולות לטרנזקציה אחת, וחלק מההעברות עברו לרשת מהשכבה השנייה, שבה עלות הפעולה נמוכה בסדר גודל.
מדדים לפני ואחרי
| מדד | לפני | אחרי |
|---|---|---|
| פיזור התשואה לפי שבועות | תנודתיות גבוהה | טווח יציב |
| חלק הרווח שנאכל על ידי עמלות | ניכר | הופחת פי כמה |
| איזונים מחדש מיותרים | קבועים | רק לפי אות יציב |
| יכולת חיזוי ההכנסה לחודש | נמוכה | גבוהה |
האפקט המרכזי — לא התשואה בשיא, אלא יכולת החיזוי שלה: ההון הפסיק לאבד על רעש ועל טרנזקציות יקרות, והמנהל קיבל דינמיקה ברורה בטווח הארוך.
במה שונה חקלאות אוטומטית מחקלאות ידנית?
ניהול ידני הוא מחזור של "בדקתי תשואה → העברתי נזילות → אספתי תגמולים → שילמתי גז", שאתם חוזרים עליו עבור כל מאגר וכל רשת.
חקלאות אוטומטית מעבירה את המחזור הזה לכללים: אתם מגדירים פעם אחת את מאגרי היעד, את טווח התשואה המותר ואת מגבלות העמלות, ומכאן המערכת עצמה עוקבת אחרי השערים ומעבירה את הכספים. ההבדל אינו ב"מהירות לחיצת הכפתור", אלא בכך שההחלטה מתקבלת על פי נתונים ולא על פי התרשים שראיתם.
ההבדל המרכזי הוא נרמול התשואה. השערים במאגרים מתבטאים ביחידות שונות: במקום אחד שנתית עם השקעה חוזרת, במקום אחר בסיסית בלי התחשבות בתדירות איסוף התגמולים.
השוואה ידנית כמעט תמיד נעשית לפי "המספר היפה" בממשק, ומאגר עם השקעה חוזרת תכופה נראה משתלם יותר, אף שלאחר ניכוי העמלות הוא מפגר. האוטומציה מביאה את כל השערים לבסיס אחד — תוך התחשבות בתדירות ההשקעה החוזרת, בעמלות הרשת ובעומק המאגר — ורק אז משווה.
ההבדל השני הוא כלכלת הגז. בניהול ידני כל פעולה משולמת בנפרד, וברשת יקרה איסוף תגמולים קטנים אוכל את הרווח. חקלאות אוטומטית עובדת במנות: הפעולות מקובצות, חלק מהחישובים עובר לרשת בעלת עלות עסקה נמוכה, ואיסוף התגמולים מבוצע רק כאשר המצטבר עולה על סף הרווחיות. זהו סף האוטומציה — הנקודה שמתחתיה תנועת הכספים אינה מכסה את העמלה.
הסף מחושב ולא מנוחש: משווים את התשואה הצפויה לתקופה מול העלות המלאה של הפעולות — עמלת הרשת, עמלת הפרוטוקול והחלקה בעת ההמרה. אם המאגר מניב פחות, האוטומציה מדלגת עליו וממתינה. בניהול ידני חישוב זה בדרך כלל אינו נעשה כלל, ולכן חלק מהפעולות יוצאות בהפסד.
ביעילות הפער מתגלה בקנה מידה: מאגר אחד עדיין אפשר לנהל בידיים, אבל חמש רשתות ועשרה פוזיציות דורשים נוכחות מתמדת. חקלאות אוטומטית שומרת על איכות החלטות זהה גם ביום וגם בלילה, בלי להחמיץ חלונות עם תשואה מוגברת. ניהול ידני נשאר הגיוני במקום שבו הפוזיציות מעטות ואתם רוצים לשלוט אישית בכל עסקה.
ספקות טכניים נפוצים
חקלאות אוטומטית עובדת עם כספים בבריכות, ולכן הספקות כאן אינם תיאורטיים: כל תקלה היא או תשואה שלא נאספה, או פוזיציה שנותרה ללא השגחה. להלן ניתוח של שלוש שאלות שנשאלות לרוב לפני ההתחלה: כיצד מוגנים הכספים, מה קורה בעת כשל של צומת או רשת, וכיצד תקלות משפיעות על התשואה הסופית.
כיצד הבוט מקבל גישה לכספים ומה הוא יכול לעשות איתם?
הבוט פועל דרך ארנק נפרד עם הרשאות מוגבלות: חתימת העסקאות הועברה לצומת מבודד, המפתח אינו נשמר בצורה גלויה ואינו יוצא מהמתחם. הלוגיקה מוגבלת לרשימה לבנה של חוזים ופעולות — העברה, משיכה והחלפת מקבל אינן נכללות בה. אם משהו ישתבש, שלילת ההרשאות אורכת עסקה אחת, ולא ניתוח של היסטוריית הפעולות.
מה יקרה בעת כשל של צומת, רשת או הבוט עצמו?
מצב הפוזיציות ותור הפעולות נכתבים ליומן לפני שליחת העסקה, ולכן לאחר הפעלה מחדש הבוט ממשיך מנקודת העצירה, ולא מאפס. כאשר הצומת אינו זמין הוא עובר לגיבוי, בעת עיכוב בלוק — אינו שולח כפילויות ואינו משלם על עסקאות שנדחו.
אם הרשת אינה זמינה מעבר לסף מוגדר, הבוט אינו פועל באקראי, אלא מקבע את הפוזיציה וממתין לאישור מהמפעיל.
כיצד תקלות והשבתות משפיעות על התשואה?
התשואה אובדת לא בגלל התקלה עצמה, אלא בגלל הפרש השערים והריביות בזמן ההשבתה. לכן נרמול ה-APY מחושב מחדש לפי הזמן בפועל בפוזיציה, ולא לפי הנקוב של הבריכה, והבוט אינו רודף אחרי עלייה כפולה בריבית אם עמלת הכניסה והיציאה אוכלת את התוצאה.
מזעור ה-gas כאן עובד ישירות על התשואה: ככל שהעברת הנזילות זולה יותר, כך יש טעם לעשותה לעתים קרובות יותר.
בנפרד אנו בודקים את ההתנהגות על נתונים היסטוריים: כיצד האסטרטגיה שורדת תנועות חדות בריביות ותקופות של עומס גבוה ברשת. זה מראה את סוג הכשלים האמיתי לפני שהכספים נכנסים למשחק.
נדון במשימת ה-farming שלכם
כדי לחזור עם הערכה ותוכנית עבודה, אנחנו צריכים לא רעיון כללי אלא נתוני קלט על המשימה שלכם. נאסוף אותם בשיחה הראשונה — בדרך כלל מדובר ב-40-60 דקות עם מהנדס שיוביל את הפרויקט, בלי מנהלים-מתווכים.
מה עוזר לנו להעריך במהירות ובדיוק את היקף העבודה:
- רשימת הרשתות והפרוטוקולים שבהם מתוכנן farming אוטומטי: מזה תלויה הארכיטקטורה של הבוט ומערך האינטגרציות.
- לוגיקת האסטרטגיה: אילו pools, איך מחשבים תשואה, לפי איזה סף נכנסים ויוצאים, מה עושים בירידה חדה של הריבית.
- דרישות לנרמול APY: האם מתחשבים בתגמולים בטוקנים, בעמלות, בסיכוני הפסדים לא קבועים — או שמחשבים רק את הריבית הנומינלית.
- מגבלות gas: סף עלות מקובל לעסקה, נכונות להמתין לחלון עם עומס נמוך ברשת, עדיפות למהירות או לחיסכון.
- גישות ותשתית: nodes משלכם או של צד שלישי, היכן נשמרים המפתחות, האם יש ארנק נפרד לאסטרטגיה.
- נכסים קיימים: סקריפטים, טבלאות, נהלים ידניים — לעתים קרובות אפשר לעשות בהם שימוש חוזר במקום לכתוב מאפס.
- קריטריוני קבלה: אילו מדדים נחשבים להצלחה — שיעור העסקאות הרווחיות, סטייה של APY בפועל מה-APY המחושב, מספר החלונות שהוחמצו.
אחרי השיחה אנחנו מתעדים את הסיכומים וחוזרים עם הערכת לוחות זמנים, הרכב העבודות ותוכנית התנעה של הפרויקט. אם במהלך הדיון נראה סיכון באסטרטגיה או בבחירת הרשת — נאמר זאת ישירות ונציע חלופה, ולא נכלול אותו בשקט באומדן.
תארו את המשימה בצורה הנוחה לכם — נחזור עם הערכה ותוכנית עבודה.







