הבאק־טסט הניב תשואה שנתית של 20%. הוא השתמש בנתונים של 8 שנים, ב־1,640 עסקאות ובחלוקה נקייה של בדיקה מתגלגלת. ואז החלפנו את ההיסטוריה העדכנית של ספק הנתונים בערכים שנרשמו בזמן אמת, והיתרון ירד ל־3%.
המספר המפתיע לא היה התשואה המקורית, אלא 17 נקודות האחוז שהיו תלויות בנתונים מתוקנים. ידע בדיעבד כזה עלול להסתתר בפרסומים כלכליים, בנתוני יסוד של חברות, בהרכב מדדים ואפילו בשדות שוק פשוטים לכאורה. נתונים היסטוריים מספרים מה המקור אומר עכשיו. מערך נתונים בנקודת הזמן מספר מה האסטרטגיה שלכם יכלה לדעת אז.
למה נתונים היסטוריים עשויים להשתנות אחרי האירוע?
חלק מהערכים מתפרסמים תחילה כאומדנים ומתוקנים בהמשך. נתון כלכלי שמתפרסם ביום שישי עשוי להתעדכן בחודש הבא. חברה יכולה לפרסם מחדש נתון רווחים. ספק נתונים יכול לתקן נתון שגוי, להשלים מרווח חסר או להחליף ערך ראשוני בערך סופי. מסד נתונים ששומר רק את הערך העדכני ביותר גורם לכל השינויים האלה להיראות כאילו תמיד היו נכונים.
הדבר חשוב כשאסטרטגיה מדרגת חברות לפי הכנסות מדווחות או סוחרת בשוק לאחר פרסום נתונים מתוזמן. אם היא רואה את הנתון המתוקן חודשים לפני מועד פרסומו, הבאק־טסט נתן לה מידע שלא היה בשוק בזמן קבלת ההחלטה. חישוב האות יכול להיות מושלם, אך הקלט שלו עדיין מגיע מגרסה שגויה של ההיסטוריה.
קל ליפול כאן במלכודת: שדה בשם date מתאר לעיתים קרובות את התקופה שאליה הערך מתייחס, ולא את המועד שבו הוא נעשה זמין. ייתכן ששורת הכנסות רבעוניות שמסומנת 31 במרץ פורסמה רק במאי. התווית מתייחסת לתקופה העסקית, לא למידע שהיה זמין לאסטרטגיה.
באיזו חותמת זמן הבאק־טסט צריך להשתמש?
עקבו בנפרד אחר התקופה שאליה הערך מתייחס ואחר מועד הזמינות שלו. כשאפשר, שמרו גם את מועד הפרסום ואת מועד קליטת הנתון. אסטרטגיה יכלה להשתמש בערך רק לאחר שפורסם והתקבל במערכת; אם המועדים האלה שונים, השתמשו במאוחר מביניהם לשחזור שמרני.
| חותמת זמן | מה היא מתארת | איך היא עוזרת |
|---|---|---|
| מועד אפקטיבי | התקופה או האירוע שאליהם הערך מתייחס | מקבץ תצפיות לפי הדבר הנמדד |
| מועד הפרסום | מתי המקור פרסם את הגרסה הזו | מונע מפרסום להופיע לפני שהתקיים |
| מועד קליטת הנתון | מתי המערכת שלכם קיבלה את הגרסה | מתעד עיכובים בהעברה והשלמות מאוחרות |
לדוגמה, נניח שמכירות רבעוניות של חברה מכסות את ינואר עד מרץ, מדווחות ב־8 במאי בשעה 16:15 לפי שעון החוף המזרחי, ומגיעות למאגר המחקר שלכם בשעה 16:17. אסטרטגיה שמקבלת החלטה בנעילת המסחר ב־8 במאי אינה יכולה להשתמש בדוח הזה אם ההחלטה שלה בעת הנעילה התקבלה בשעה 16:00. אסטרטגיה שמקבלת החלטה למחרת בבוקר יכולה להשתמש בו. תאריך סוף הרבעון לבדו אינו יכול לענות על אף אחת מהשאלות.
איך בודקים אם התיקונים הם שמניעים את התוצאה?
הריצו את אותה אסטרטגיה פעמיים: פעם אחת עם גרסת הנתונים שהייתה זמינה בכל מועד החלטה היסטורי, ופעם אחת עם ההיסטוריה המתוקנת העדכנית ביותר. השאירו את הנחות הביצוע, היקום והקוד קבועים. ההפרש הוא תוצאה של רגישות לתיקונים, לא השוואה בין אסטרטגיות חדשות.
לאחר מכן בדקו מאין נובע הפער. האם הביצועים משתנים בימי פרסום? האם ההבדלים הגדולים ביותר מתרכזים בכמה חברות שפרסמו מחדש נתונים או בכמה תצפיות שתוקנו? האם האסטרטגיה סוחרת לפני מועד הפרסום הרלוונטי? בדיקה ממוקדת של אירועים מסבירה לעיתים קרובות יותר מתרשים נוסף של תשואות מצטברות.
המספרים האלה הם להמחשה, ולא קנס אחיד לכל מקרה. התוצאה השימושית היא השוואה מזווגת עבור האסטרטגיה שלכם, עם אותן עסקאות ועלויות ככל האפשר. אם הגרסה המתוקנת מציגה יתרון גדול, בררו אילו שדות ותאריכים אחראים להבדל לפני שתסמכו על הכותרת של הבאק־טסט.
מה צריך לתעד בביקורת נתונים בנקודת הזמן?
התחילו בשדות שהאסטרטגיה שלכם צורכת בפועל. עבור כל שדה, זהו את המקור, משמעות חותמת הזמן, מדיניות התיקונים והאפשרות לאחזר גרסאות קודמות. שאלו את ספק הנתונים איך הוא מייצג תיקונים: שורות שנדרסות, שורות גרסה חדשות או יומן ביקורת נפרד. הכיתוב „היסטורי” בדף מוצר לא מספק תשובה לכך.
- שמרו כל גרסה יחד עם מועד הפרסום או מועד הזמינות הראשון שלה.
- חברו מאפיינים להחלטות לפי מועד הזמינות, לא לפי תוויות התקופה.
- שמרו תמונת מצב קפואה או גרסת מקור שתאפשר להריץ מחדש ולשחזר את התוצאות.
- סמנו ערכים שמגיעים באיחור, מתוקנים או חסרים היסטוריה אמינה.
שמרו על היקף מעשי. אם האסטרטגיה שלכם משתמשת רק בעסקאות ובנרות של הבורסה, ייתכן שתיקונים בנתונים כלכליים אינם רלוונטיים. עם זאת, תיקונים בנרות והשלמות נתונים של ספק עדיין עשויים להיות חשובים, במיוחד כשהאות תלוי בשוק דליל או בחלון אירועים מדויק.
כשאין היסטוריה בנקודת הזמן
אל תתייחסו בשקט לערך של היום כאילו היה הערך של אתמול. סמנו את השדה כמגבלה, הוציאו אותו מטענות שתלויות בזמינות היסטורית, או הפעילו השהיה שמרנית והראו עד כמה התוצאה משתנה. נתון חלופי מושהה עשוי להועיל למחקר, בתנאי שההשהיה מפורשת ושהמגבלה מצורפת לתוצאה.
תפקיד הבאק־טסט הוא לשחזר החלטה על סמך המידע שהיה זמין באותה עת. אם הנתונים שלכם מציגים רק את הגרסה העדכנית ביותר, יש לתוצאה גבול ברור: היא יכולה לבדוק את האסטרטגיה מול היסטוריה משוחזרת של היום, אך אינה יכולה לקבוע בדיוק מה גורם היסטורי היה מסוגל לראות.
← כל הפוסטים


