ثمة سؤال يتهرب منه كل اختبار تاريخي: هل كان الكود نفسه، لو غُذّي بالسوق نفسه حيًّا، ليفعل الشيء نفسه؟ لا يمكنك الإجابة عنه بمزيد من الاختبارات التاريخية. الطريق الوحيد هو تشغيل الاستراتيجية على بيانات حية بدلالات تنفيذ حقيقية، ثم التحقق — صفقة بصفقة — من أن العالمَين متفقان. نجري هذا الفحص يوميًا وبشكل آلي، وقد كان أكثر أدوات المنصة إنتاجية في اصطياد الأخطاء.
اليوم الأول: ابنِ المرآة
تعمل كل استراتيجية مُرقّاة داخل عقدة حية معزولة خاصة بها، تستهلك تدفقات المنصات الحقيقية: عروض أسعار حية للتنفيذات، فروق أسعار حقيقية، وساعات جلسات حقيقية. لا حالة مشتركة بين الاستراتيجيات (تعلّمنا هذا الدرس بالطريقة الصعبة — عقدة مشتركة سمحت لاستعلامات مركز استراتيجية بالتسرّب إلى أخرى). ويُسجَّل كل تنفيذ مقترنًا بقيمة الإشارة التي أنتجته.
كل صباح: أعِد التشغيل وقارِن
تأخذ مهمة يومية النافذة الورقية لكل استراتيجية، وتُمرّر الكود ذاته عبر محرك الاختبار التاريخي على المدة نفسها باستخدام بيانات الكتالوج، ثم تطابق التنفيذات واحدًا لواحد: الاتجاه نفسه، وتفاوت زمني ضمن الحدود نفسها، والحجم نفسه. المخرَج ليس معامل ارتباط ولا انطباعًا عامًا، بل جدولًا: مُطابَق، ورقي فقط، إعادة فقط. الاستراتيجية السليمة تستقر عند 54 من 55 مُطابَقة. أما غير السليمة فتخبرك بالضبط أي صفقة تباعدت ومتى.
ما الذي انكسر، بترتيب انكساره
- تنفيذات فترة الإحماء. كانت العقدة الحية تغذّي البيانات التاريخية لتسخين المؤشرات — والاستراتيجيات ذات معالِجات الشموع المخصصة كانت تتداول عليها بكل ارتياح. لم تَرَ الاختبارات التاريخية قط تلك الدخولات الوهمية. جاء الإصلاح كحارس في طبقة إرسال الأوامر، لا كإصلاح داخل استراتيجية بعينها، لأن كل استراتيجية ترث العلة خلاف ذلك.
- إحماء متعدد الأرجل بشكل تسلسلي. استراتيجية مقطعية عرضية كانت تُحمّي أداة واحدة في كل مرة؛ فكانت كل رِجل ترى أشقاءها فارغين ولا تُهيَّأ نقطة الارتكاز أبدًا. حيًّا لم تتداول شيئًا؛ وعند الإعادة تداولت بشكل سليم. صفر صفقات مُطابَقة — لكن المقارنة وحدها هي التي قالت ذلك بصوت مسموع.
- حلقات انهيار بسبب دقة التيك. تصل تيكات aggTrade الحية بدقة تختلف عمّا تتوقعه أداة بيئة الاختبار المعزولة. فدخلت العقدة في حلقة انهيار عند تحقُّق شرط لم يكن الاختبار التاريخي ليُطلقه أبدًا، لأن شموع الكتالوج مُطبَّعة أصلًا.
- فقدان الذاكرة عند إعادة التشغيل. إعادة تشغيل العملية كانت تُطلق منطق الدخول من جديد على مراكز قائمة بالفعل — وفي استراتيجية إعادة موازنة، تتحول إعادة التشغيل بهدوء إلى إعادة موازنة. في التداول الحي هذه ليست حاشية على هامش التطابق؛ بل راية حمراء مربوطة بأموال حقيقية.
لاحظ النمط: ولا واحدة من هذه الأخطاء خطأ في الإشارة. جميعها أخطاء عند حدود التنفيذ — الإحماء، والحالة، والدقة، وإعادات التشغيل. وهذا بالضبط صنف الأعطال الذي تعمى عنه الاختبارات التاريخية بنيويًا، لأن محرك الاختبار التاريخي هو حدّ التنفيذ داخل الاختبار التاريخي.
أوجه اللاتماثل التي نبقيها عن قصد
العالمان غير متطابقين عمدًا. فالاختبار التاريخي يحتسب نصف فرق سعر مُنمذَجًا زائد تأثيرًا بجذر تربيعي داخل الأرباح والخسائر؛ أما التداول الورقي فيدفع الفارق الحقيقي ضمن سعر التنفيذ ودون أي نموذج تأثير. إضافة الفارق المُنمذَج إلى الورقي (أو الفارق الحقيقي إلى الاختبارات التاريخية) ستؤدي إلى احتسابه مرتين. التطابق يعني القرارات نفسها والتنفيذات نفسها ضمن هامش تسامح — لا أرباحًا وخسائر متطابقة بتةً ببتة. ومعرفة أي الفروق مبدئي وأيها خلل هي معظم الانضباط المطلوب.
الاختبار التاريخي فرضية. التداول الورقي هو التجربة. وتطابق الإعادة هو دفتر المختبر الذي يمسكك متلبسًا وأنت تخدع نفسك.
إن كنت تشغّل استراتيجيات ولا تقارن السلوك الحي بسلوك الإعادة وفق جدول منتظم، فلديك صنف كامل من الأخطاء لم تره قط. نحن نعثر على واحد منها كل أسبوعين تقريبًا، وكل واحد منها كان غير مرئي من داخل الاختبار التاريخي.
→ جميع المقالات
