يمكن لوكيل الاستراتيجيات تلويث مجموعة اختبار من دون إدراج صف واحد منها في مهمة تدريب. فإذا اطّلع الوكيل على نتيجة الاختبار، وغيّر إحدى المعلمات، ثم أعاد التشغيل، تكون تلك النتيجة قد أثّرت بالفعل في الاستراتيجية. قد يسمّي الكود الفترة «خارج العينة»، لكن عملية البحث جعلتها جزءًا من عملية الاستكشاف.
رأيت ذلك يحدث بدافع التيسير: يشغّل وكيلٌ مجموعة تجارب، ويقرأ جدولًا موجزًا للنتائج، ثم يقترح تحسينًا طفيفًا. لم يطلب منه أحد الملاءمة على مجموعة الاحتفاظ. لكن حلقة التغذية الراجعة تولّت ذلك على أي حال.
الخطأ 1: السماح للوكيل بالاطّلاع بعد كل تشغيل
غالبًا ما تبدو آثار الضرر على هيئة ارتفاع منتظم ومتدرج في قيمة Sharpe للاختبار. يجرّب الوكيل 30 نسخة، ويحتفظ بالأفضل، ثم يجرّب 30 نسخة حولها. يبدو كل تغيير منفردًا معقولًا، لكن مجموعها يحوّل فترة الاختبار إلى هدف للتحسين.
إليك مثالًا مبسطًا. لنفترض أن الاستراتيجية لا تملك أفضلية حقيقية، وأنك تختبر 100 نسخة مستقلة على مجموعة احتفاظ. إذا اخترت أعلى قيمة Sharpe، فمن الممكن جدًا أن تعثر بالمصادفة على نتيجة تبدو مبهرة. لن تكون النسخ مستقلة حقًا في معظم عمليات البحث عن الاستراتيجيات، لكن ذلك لا ينقذ العملية: فالتغذية الراجعة المتكررة تظل تكافئ الإعدادات التي تلائم مصادفةً خصائص مجموعة الاحتفاظ.
اجعل مجموعة الاحتفاظ خلف حاجز للنتائج. يمكن للوكيل التطوير باستخدام فترتي التدريب والتحقق، لكن لا يمكنه استرجاع مقاييس مجموعة الاحتفاظ أو رسومها البيانية. أجرِ التقييم النهائي في مهمة منفصلة، مرة واحدة بعد تثبيت خيارات البحث، وسجّل إصدار الاستراتيجية ولقطة البيانات مع النتيجة.
الخطأ 2: اعتبار كل فترة لاحقة «جديدة»
لا تصبح الفترة الزمنية جديدة لمجرد أنها تلي فترة التدريب. فإذا اطّلع الوكيل على نتيجة تلك الفترة، أو استخدم شخصٌ تراجعها لاختيار خاصية مختلفة، أصبحت الفترة جزءًا من حلقة التغذية الراجعة.
| الفترة | الاستخدام المسموح | ما يغيّر وضعها |
|---|---|---|
| التدريب | ملاءمة القواعد والمعلمات | لا شيء؛ فهي مخصصة للاستكشاف |
| التحقق | مقارنة الخيارات واتخاذ قرارات البحث | تكرار الاستخدام يزيد سهولة فرط الملاءمة |
| مجموعة الاحتفاظ النهائية | تقييم واحد للخيار المثبّت | قراءة النتيجة وتغيير الخيار |
| فترة مستقبلية للتداول الورقي | رصد سلوك التنفيذ استباقيًا | استخدام النتائج للضبط ينشئ دورة بحث جديدة |
يمكن أن يساعد التقييم المتدرج بطريقة walk-forward على تقدير سلوك عملية بحث ثابتة عبر الزمن. لكنه لا يتيح الاطّلاع بلا حدود على نتائج كل طية. فإذا رأى الوكيل نتائج الطيات وعدّل بحثه بناءً عليها، تصبح تلك النتائج جزءًا من التغذية الراجعة أيضًا. احتفظ بفترة نهائية لم تُمس لاتخاذ القرار الذي تريد اتخاذه فعلًا.
الخطأ 3: تثبيت الكود مع تغيير السؤال
أحيانًا يظل كود الاستراتيجية ثابتًا، لكن الباحث يغيّر التقييم بعد رؤية النتيجة: يستبدل المؤشر المرجعي، أو يستبعد شهرًا ضعيفًا، أو يعرض مجموعة أصول مختلفة، أو يركّز على المقياس الذي يبدو أقوى. تكون مجموعة الاختبار قد وجّهت الرواية حتى لو لم يتغير أي معامل.
تظهر آثار الضرر في تقرير مصقول بعنوان رئيسي واحد واضح، من دون سجلّ للطرق الأخرى التي جُرّبت. قد تبدو استراتيجية الأسهم ضعيفة مقارنة بمؤشر سوق واسع، لكنها قوية مقارنة بالنقد؛ وقد تتألق استراتيجية العملات المشفرة على منصة واحدة بعد فحص عدة منصات. يمكن أن تكون هذه المقارنات مفيدة، لكن الاختيار بينها بعد الاطّلاع على مجموعة الاحتفاظ خطوة أخرى في الانتقاء.
احتفظ بسجلّ للأبحاث. لكل تشغيل، احفظ الفرضية، وإصدار الكود، ولقطة البيانات، والبحث عن المعلمات، ونوافذ التقييم، والمقاييس المطلوبة، وما إذا كان الوكيل أو الباحث قد اطّلع على النتيجة. سجلّ موجز أنفع من وصف يبدو مثاليًا مثل «خارج العينة».
ثم حدّد السؤال النهائي بوضوح قبل التقييم: أي خيار، وأي مجموعة أسواق، وأي مؤشر مرجعي، وأي تكاليف، وأي مقاييس؟ إذا تغيّرت الإجابة بعد ظهور النتيجة، فاعتبر التشغيل التالي بحثًا، واحتفظ ببيانات جديدة للفحص النهائي التالي.
ما الذي يمكنني الاستمرار في تعلّمه من مجموعة احتفاظ ملوّثة؟
ليست عديمة الفائدة. يمكنها أن تبيّن سلوك الاستراتيجية خلال تلك الفترة وتساعد في تشخيص الإخفاق. لكن توقّف عن عرض نتيجتها كتأكيد مستقل. استخدمها دليلًا للتطوير، وثبّت الخيار التالي، وقيّمه خلال فترة مستقبلية فعلية للتداول الورقي، مع افتراضات المحاسبة والتنفيذ نفسها.
في سير عمل تقوده الوكلاء، يسهل إغفال عدد التجارب: فقد ينشئ توجيه واحد عشرات التشغيلات قبل أن ينتبه أحد. والحماية إجرائية: قيّد ما يمكن للوكيل الاطّلاع عليه، وسجّل كل تجربة، واحتفظ بتقييم واحد لا يمكن لنتيجته أن تؤثر في الخيار الجاري الحكم عليه.
→ جميع المقالات


