בדיקת עבר יכולה להיראות משכנעת יותר אחרי שהרעתם את הנתונים שלה. הסירו הדפסות מכוערות, השלימו פערים במחירים מסודרים, ויחס Sharpe עשוי לעלות. השיפור הזה יכול להיות סימן אזהרה: ייתכן שכלל הניקוי מחק בדיוק את תנאי השוק שהאסטרטגיה שלכם צריכה לשרוד.
איכות הנתונים חשובה. ציטוטים מוצלבים או עסקה כפולה יכולים ליצור ביצוע שאיש לא היה יכול לקבל. אבל מסנן שמעלים תצפיות לא נוחות הוא גם בחירה מודלית. התייחסו אליו באותה חשדנות שבה הייתם מתייחסים לתכונת אות חדשה.
מתי מחיר שגוי הוא באמת נתון שגוי?
התחילו בשאלה מה התצפית מייצגת. עסקה שמחירה רחוק מהשוק הרווח באותו רגע יכולה להיות רשומה פגומה, שטיפה אמיתית של נזילות דלה, או אירוע ייחודי לזירת מסחר מסוימת. נר של דקה עם עמודת נפח אפס עשוי להעיד שלא התבצעו עסקאות, ואילו נר חסר עשוי להעיד שהפיד כשל. יש לטפל בכל אחד מהמקרים האלה אחרת.
נבחן אסטרטגיית חזרה לממוצע פשוטה, שקונה כשהמחיר יורד ב־1% מתחת לממוצע נע קצר ויוצאת כשהוא מגיע לממוצע. בשעות הלילה, כשהנזילות דלה, מתבצעת עסקה אחת במחיר הנמוך ב־1.2% מהמחיר הקודם, ואז השוק מתאושש בחדות. אם ההדפסה אמיתית, ייתכן שאסטרטגיה עם הוראת לימיט ממתינה הייתה מתבצעת. אם מדובר בטיק שגוי שלא נתמך בציטוט בר־ביצוע, ספירת הביצוע ממציאה יתרון.
מחיקת הנר אינה בטוחה באופן אוטומטי. ייתכן שעדיין הייתה לאסטרטגיה הוראה ממתינה בשוק, והעסקה האמיתית הבאה הייתה יכולה למלא אותה. שחזור שאפשר להגן עליו צריך לדמות מה האסטרטגיה הייתה יכולה לראות, ומול מה סביר שההוראה שלה הייתה מתבצעת.
כיצד כלל ניקוי משפיע על התוצאה?
הריצו את האסטרטגיה עם טיפולי נתונים מוגדרים במפורש והשוו בין השינויים. שמרו את המקור הגולמי ותעדו כל החרגה או תיקון, כולל הסיבה. לאחר מכן דווחו עד כמה התוצאה תלויה בהחלטות האלה.
| טיפול בנתונים | תועלת אפשרית | סיכון לבדיקת העבר |
|---|---|---|
| הסירו הדפסה שחורגת מטווח שגיאות מתועד של הבורסה | מונע מרשומה לא תקפה וידועה לקבוע ערך קיצוני | הכלל עלול לסווג עסקאות לגיטימיות בטעות בשוק מהיר |
| העבירו את המחיר האחרון על פני מרווח חסר | מונע כשל של אינדיקטורים בגלל פערים | יוצר מחיר שייתכן שלא התבצעה בו שום עסקה |
| השתמשו בציטוטים מאוחדים במקום בעסקאות האחרונות | מספק תמונה טובה יותר של מחירי הביצוע המוצגים | גודל הציטוט, הגישה לזירת המסחר והמיקום בתור עדיין חשובים |
| הסירו את כל נרות החריגים לפי סף סטטיסטי | מפחית את הרגישות לערכים קיצוניים | עלול להסיר תקופות לחץ אמיתיות שבהן האסטרטגיה מפסידה את רוב הפסדיה |
נניח שריצה ללא סינון מניבה יחס Sharpe של 0.9, ואילו ריצה שמחריגה 0.8% מהנרות עולה ל־1.4. כשלעצמה, זו לא הוכחה לניצחון באיכות הנתונים. בדקו אם הנרות שהוסרו מתרכזים סביב זינוקים בתנודתיות, אם הם אחראים לחלק משמעותי מהרווח וההפסד, ואם כלל ההחרגה הוגדר לפני שראיתם את התוצאה.
נהלו יומן חריגות נתונים: מקור, חותמת זמן, שדות שהושפעו, סיבת הפעולה והאם ההחלטה התקבלה לפני בחינת ביצועי האסטרטגיה או אחריה.
איך בודקים אם הניקוי שינה את היתרון?
הקפיאו את האסטרטגיה והשוו כמה טיפולים סבירים על פני אותם תאריכים. כללו, ככל האפשר, שחזור של הנתונים הגולמיים, קבוצת תיקונים מתועדת ומקרה ביצוע שמרני לתצפיות שנותרו עמומות. בכל ריצה דווחו את מספר העסקאות, המחזור, הירידה המרבית והתרומה לרווח והפסד מהמרווחים שהושפעו, לצד יחס Sharpe.
לאחר מכן בדקו את העסקאות שמשתנות. אם הזכיות הגדולות ביותר של האסטרטגיה נעלמות כשמחריגים קבוצה קטנה של הדפסות חשודות, בחנו את הרשומות האלה אחת־אחת. אם דווקא ההפסדים נעלמים, בדקו אותן באותה הקפדה. כלל שנבדק בקפידה רק כשהוא פוגע בבדיקת העבר כבר משפיע על המחקר.
כדי שהמחקר יהיה ניתן לשחזור, נהלו גרסאות של קובצי הספק או של סכומי הביקורת שלהם, של קוד הניקוי ושל רשימת החריגים. ספק עשוי לשנות נתוני עבר; הריצה הבאה שלכם צריכה לאפשר לזהות אם האסטרטגיה השתנתה או שהקלטים השתנו.
אבל ניקוי הוא לא הכרחי?
כן. השארת רשומה שברור שהיא פגומה עלולה להמציא עסקה, לעוות את התנודתיות או לשבש אינדיקטור. ואיש לא צריך להעמיד פנים שפיד גולמי הוא אמת מוחלטת. הנקודה המעשית מצומצמת יותר: ניקוי דורש ראיות, כלל קבוע מראש ובדיקת רגישות, משום שהוא עשוי לשנות איזה שוק בדיקת העבר מתיימרת לייצג.
כשניקוי נתונים משפר ביצועים, שאלו איזו תצפית הוא הסיר והאם הייתם מקבלים את אותה החלטה בלי לראות את עקומת ההון. אם אינכם בטוחים, שמרו את שתי הגרסאות ברשומת המחקר. ההבדל ביניהן הוא חלק מהתוצאה.
← כל הפוסטים


