סוכן אסטרטגיות יכול לזהם קבוצת בדיקה בלי שאפילו שורת בדיקה אחת תיכלל במשימת אימון. אם הסוכן רואה את ציון הבדיקה, משנה פרמטר ומריץ שוב, הציון הזה כבר השפיע על האסטרטגיה. הקוד אולי מכנה את התקופה «מחוץ למדגם». אבל תהליך המחקר כבר הפך אותה לחלק מהחיפוש.
ראיתי את זה קורה מטעמי נוחות: סוכן מריץ סדרת בדיקות, קורא טבלת סיכום ואז מציע שיפור קטן. איש לא ביקש ממנו להתאים את האסטרטגיה לקבוצת הבדיקה. לולאת המשוב עשתה את זה בכל זאת.
טעות 1: לתת לסוכן להציץ אחרי כל הרצה
הנזק מתבטא בדרך כלל בציון Sharpe שעולה בקבוצת הבדיקה בצעדים קטנים ומסודרים. הסוכן מנסה 30 גרסאות, שומר את הטובה ביותר ואז מנסה 30 גרסאות סביבה. כל שינוי בפני עצמו נראה סביר. יחד, השינויים הופכים את תקופת הבדיקה ליעד לאופטימיזציה.
הנה דוגמה פשוטה. נניח שאין לאסטרטגיה יתרון אמיתי, ואתם בודקים 100 גרסאות בלתי תלויות על קבוצת בדיקה שמורה. אם תבחרו את זו עם ציון Sharpe הגבוה ביותר, בהחלט ייתכן שתמצאו במקרה תוצאה מחמיאה. ברוב חיפושי האסטרטגיות הגרסאות לא יהיו באמת בלתי תלויות, אבל זה לא מציל את התהליך: משוב חוזר עדיין מתגמל הגדרות שבמקרה מתאימות למאפיינים הייחודיים של קבוצת הבדיקה.
הפרידו את קבוצת הבדיקה השמורה באמצעות גבול לתוצאות. הסוכן יכול לפתח את האסטרטגיה על בסיס תקופות האימון והתיקוף; הוא לא יכול לשלוף מדדים או תרשימים של קבוצת הבדיקה השמורה. השאירו את ההערכה הסופית למשימה נפרדת, הריצו אותה פעם אחת אחרי הקפאת החלטות המחקר, ותעדו יחד עם התוצאה את גרסת האסטרטגיה ואת תמונת מצב הנתונים.
טעות 2: לכנות כל תקופה מאוחרת יותר «חדשה»
טווח תאריכים אינו חדש רק מפני שהוא מגיע אחרי חלון האימון. אם הסוכן ראה ציון מאותו טווח, או אם אדם השתמש בירידה המרבית שלו כדי לבחור מאפיין אחר, הטווח הזה כבר הפך לחלק מלולאת המשוב.
| תקופה | שימוש מותר | מה משנה את מעמדה |
|---|---|---|
| אימון | התאמת כללים ופרמטרים | שום דבר; היא נועדה לחיפוש |
| תיקוף | השוואת מועמדות וקבלת החלטות מחקר | שימוש חוזר מקל על התאמת יתר |
| קבוצת בדיקה סופית שמורה | הערכה אחת של המועמד שהוקפא | קריאת התוצאה ושינוי המועמד |
| תקופת מסחר עתידית על הנייר | מעקב פרוספקטיבי אחר התנהגות היישום | שימוש בתוצאות לכוונון יוצר מחזור מחקר חדש |
הערכה מתגלגלת מסוג walk-forward יכולה לעזור לאמוד כיצד תהליך מחקר קבוע מתנהג לאורך זמן. היא לא מאפשרת להציץ ללא הגבלה בתוצאות של כל מקטע. אם סוכן רואה תוצאות של מקטעים ומתאים את החיפוש, גם אלה הופכים למשוב. שמרו תקופה סופית בלתי נגועה להחלטה שאתם באמת רוצים לקבל.
טעות 3: להקפיא את הקוד אבל לשנות את השאלה
לפעמים קוד האסטרטגיה נשאר קבוע, אבל החוקר משנה את אופן ההערכה אחרי שרואה את התוצאה: מחליף מדד ייחוס, מוציא חודש קשה, מדווח על יקום אחר או מתמקד במדד שנראה החזק ביותר. קבוצת הבדיקה הכתיבה את הסיפור גם אם שום פרמטר לא השתנה.
הנזק מתגלה בדוח מלוטש עם כותרת חד־משמעית אחת, בלי תיעוד של שאר נקודות המבט שנבדקו. אסטרטגיית מניות עשויה להיראות חלשה מול מדד שוק רחב אך חזקה מול מזומן; אסטרטגיית קריפטו עשויה לבלוט בזירה אחת אחרי שבדקתם כמה זירות. ההשוואות האלה יכולות להועיל, אבל בחירה ביניהן אחרי שראיתם את קבוצת הבדיקה השמורה היא עוד שלב של בחירה.
נהלו יומן מחקר. לכל הרצה שמרו את ההשערה, גרסת הקוד, תמונת מצב הנתונים, חיפוש הפרמטרים, חלונות ההערכה, המדדים שהתבקשו והאם הסוכן או החוקר ראו את התוצאה. יומן תמציתי מועיל יותר מתווית שנשמעת מושלמת כמו «מחוץ למדגם».
לאחר מכן, הגדירו במפורש את שאלת ההערכה הסופית מראש: איזו מועמדת, איזה יקום שווקים, איזה מדד ייחוס, אילו עלויות ואילו מדדים? אם התשובה משתנה אחרי שהתוצאה מתקבלת, התייחסו להרצה הבאה כמחקר ושמרו נתונים חדשים לבדיקת הסיום הבאה.
מה עוד אפשר ללמוד מקבוצת בדיקה שמאגר הנתונים שלה זוהם?
היא לא חסרת תועלת. אפשר לראות כיצד האסטרטגיה התנהגה בתקופה הזאת ולהיעזר בה לאבחון כשלים. פשוט הפסיקו להציג את הציון שלה כאישור בלתי תלוי. השתמשו בה כראיה מתהליך הפיתוח, הקפיאו את המועמדת הבאה והעריכו אותה בתקופת מסחר עתידית על הנייר, עם אותן הנחות חשבונאיות והנחות ביצוע.
בתהליך עבודה שמונע בידי סוכנים, קל לאבד את הספירה של מספר הניסויים: הנחיה אחת יכולה ליצור עשרות הרצות לפני שמישהו שם לב. ההגנה היא תהליכית. הגבילו את מה שהסוכן יכול לבדוק, תעדו כל ניסוי והשאירו הערכה אחת שתוצאותיה לא יכולות להשפיע על המועמדת שנבחנת.
← כל הפוסטים


