21 سبتمبر 2026 · الهندسة

أعد تشغيل استراتيجيتك في منتصف الاختبار التاريخي. هل تتذكر ما تملكه؟

أعد تشغيل استراتيجيتك في منتصف الاختبار التاريخي. هل تتذكر ما تملكه؟

لا يتطلب اختبار مفيد للاختبار التاريخي البحث عن معلمة أفضل: أوقف العملية في منتصف الطريق، واستعدها، وأكمل إعادة التشغيل نفسها. مع مدخلات متطابقة ومحاكي تنفيذ مضبوط، ينبغي أن تطابق قراراتها وأوامرها وقيمة حقوق الملكية مسار تشغيل غير منقطع.

إذا لم تتطابق، فقد وجدت مشكلة في إدارة الحالة. تعتمد الاستراتيجية على شيء لم تحفظه أو لم تستطع إعادة بنائه. ويهم هذا الاعتماد عندما تُستأنف عمليات البحث، أو يُستبدل العاملون، أو تنشر خدمة تداول ورقي شيفرة جديدة.

أحب هذا الاختبار لأن إجابته المتوقعة واضحة على نحو غير معتاد. لا مجال للجدل حول ما إذا كان السوق قد تغيّر. فكلا التشغيلين يتلقى السوق نفسه.

إليك ثلاث طرق خاطئة لإعادة التشغيل. الأرقام للتوضيح؛ وقد يقع كل إخفاق في نظام حتمي في جوانب أخرى.

1. أعد تحميل بضعة شموع واعتبر المؤشرات جاهزة

لنفترض أن الاستراتيجية تستخدم متوسطًا متحركًا أسيًا بفترة 100. وتكون معادلته:

alpha = 2 / 101
ema_next = alpha * close + (1 - alpha) * ema_previous

تحتفظ العملية غير المنقطعة بقيمة EMA المتراكمة. أما العملية التي أُعيد تشغيلها فتجلب 100 شمعة، وتُهيّئ EMA بسعر الإغلاق الأول، وتفترض أن المؤشر بفترة 100 يحتاج إلى 100 مشاهدة.

يخلط هذا الافتراض بين معامل التنعيم للمؤشر ونافذة ذاكرة محدودة. يحتفظ EMA بأثر متناقص من حالته الابتدائية. إذا بدأت نسختان بفارق 10 وحدات سعرية في EMA، فإن الأسعار اللاحقة المتطابقة تقلّص ذلك الفارق كما يلي:

التحديثات منذ التهيئةالفارق المتبقينسبة الخطأ الابتدائي المتبقية
1001.35313.53%
2500.06740.674%
5000.0004540.00454%

الحساب هو 10 * (99 / 101)^k. جلب 100 شمعة يمنحك 99 تحديثًا فقط إذا كان أول رصد هو قيمة التهيئة.

غالبًا ما يظهر الخلل قرب حدّ اتخاذ القرار. ترى إحدى النسختين أن السعر فوق EMA، بينما تراه الأخرى تحته. وقد يؤدي فرق عددي صغير إلى صفقة إضافية كاملة. وبعد ذلك، قد تختلف أيضًا فترات التهدئة والسيولة المتاحة والقرارات اللاحقة.

احفظ حالة المؤشر التكرارية، وحالة تهيئته، وآخر حدث تمت معالجته. أو أعد التشغيل من حالة ابتدائية معروفة. قد يمنحك الإحماء الأطول تقريبًا مقبولًا، لكن اختر مدته بناءً على هامش خطأ محدد، وتحقق مما إذا كان هذا الهامش قادرًا على تغيير القرارات. «خمسة أضعاف الفترة» اصطلاح، وليس برهانًا.

والتاريخ لا يقتصر على المؤشرات. فالمئين المتحرك يحتاج إلى نافذته. وقد يحتاج النموذج التكيفي إلى حالة المحسّن. كما أن القاعدة التي تنتظر 3 شموع بعد خسارة تحتاج إلى تذكّر الخسارة والعداد.

2. احفظ المراكز وانسَ الأوامر قيد التنفيذ

المركز المستهدف لديك هو 10 وحدات. نُفّذ 4 من أمر شراء لـ10، وبقيت 6 وحدات معلّقة. تحفظ نقطة التحقق المركز عند 4، ثم تعيد التشغيل وترسل أمر شراء جديدًا بالوحدات الـ6 الناقصة.

إذا نُفّذ الجزء المتبقي من الأمر الأصلي والأمر البديل، فستملك 16 وحدة.

غالبًا ما يظل هذا الخلل خفيًا في نسخة الاختبار التاريخي، لأن إعادة تشغيل محرّك التنفيذ تمحو الأوامر الفعّالة بصمت. أما في التداول الورقي، فقد يحتفظ بها المحاكي أو الخدمة الخارجية. عندها ينتج عن شيفرة الاستعادة نفسها انكشاف مختلف بحسب المكوّن الذي ظل قائمًا.

عند إعادة التشغيلالحالة الفعليةما تراه الاستعادة المعتمدة على المركز وحده
المركز المستهدف1010
المركز المنفّذ44
كمية الشراء المعلّقة60
الكمية الإضافية المطلوبة06

يظهر الخلل في موجة أوامر غير مفسّرة فور الاستعادة. أحيانًا يضاعف الانكشاف. وأحيانًا يغلق مركزًا بينما لا يزال أمر الحماية الخاص به فعّالًا، ما يتيح لذلك الأمر فتح مركز جديد لاحقًا.

تحتاج نقطة التحقق إلى هوية الأمر وحالته خلال دورة حياته، إلى جانب المراكز. ويجب أن تطابق الاستعادة هذه السجلات مع نظام التنفيذ قبل إصدار إجراءات جديدة. أما الأمر ذو النتيجة المجهولة فيحتاج إلى التحقيق؛ فاعتبار «لم يُحفظ إقرار بالاستلام» بمعنى «لم يُرسل الأمر قط» هو ما يولّد الأوامر المكررة.

تساعدك معرّفات أوامر العميل الثابتة على معرفة ما حدث. لكنها لا تمنع التكرار إلا إذا كان النظام المستقبِل يفرض بالفعل قواعد التفرد أو منع التكرار المطلوبة. واحفظ أيضًا معرّفات التنفيذ التي عولجت، كي لا تؤدي إعادة تشغيل تنفيذ إلى زيادة المركز مرتين.

لديّ ميل خاص إلى شاشة حالة الأوامر المملة. في يوم إعادة التشغيل، تصبح صفوفها الصغيرة فجأة الواجهة الأكثر إثارة للاهتمام في المبنى.

3. استعد المركز وابدأ سجل P&L جديدًا

تأمل مثالًا فوريًا من دون رافعة مالية أو رسوم. ابدأ بسيولة قدرها $10,000، واشترِ 10 وحدات بسعر $100، وأنشئ نقطة تحقق عندما يصل السعر المعتمد إلى $110.

الحالة الصحيحة هي $9,000 نقدًا، إضافة إلى مركز قيمته $1,100: أي حقوق ملكية قدرها $10,100. إذا أعادت الاستعادة الوحدات الـ10 لكنها أعادت السيولة إلى $10,000 الأصلية، فستُظهر $11,100. لقد خلقت $1,000 بمجرد إعادة تشغيل عملية.

بعض النسخ الأخرى أقل إثارة. قد تحافظ الاستعادة على حقوق الملكية، لكنها تعيد سعر الدخول إلى $110. وقد تبقى حقوق الملكية الإجمالية صحيحة بينما يتغير توزيع الأرباح المحققة وغير المحققة. وإذا استند شرط وقف أو خروج إلى سعر الدخول، فسيغيّر هذا الاختصار المحاسبي سلوك التداول الآن.

أو قد ينسى النظام أعلى قيمة سابقة لحقوق الملكية. لنفترض أنها بلغت ذروتها عند $10,600 قبل أن تهبط إلى $10,100. يبلغ التراجع نحو 4.72%. أعد ضبط أعلى قيمة أثناء الاستعادة، وستعتقد الاستراتيجية فجأة أن تراجعها يساوي صفرًا. وهكذا تكون قد أعدت ضبط أي تحكم بالمخاطر قائم على التراجع من دون تفويض.

لذلك قد يظهر الخلل على شكل قفزة في حقوق الملكية، أو تحسن مريب في التراجع، أو توقف قاعدة للمخاطر عن العمل بعد عمليات النشر. احتفظ بالسجل وبحالة الاستراتيجية المعتمدة على الحسابات: حركات السيولة، والمراكز، وأساس التكلفة عند انطباقه، والرسوم المستحقة، وذاكرة التحكم بالمخاطر. وطابق حقوق الملكية المستعادة مع السجل عند الطابع الزمني نفسه للتقييم.

تحتاج نقطة التحقق إلى حدّ فاصل متسق. فحفظ السيولة بعد تنفيذ صفقة وكمية المركز قبل تنفيذها ينتج حالة لم توجد قط. ثبّت الحالات المرتبطة معًا، أو سجّل تسلسل أحداث دائمًا يمكن إعادة بنائها منه. واحفظ موضع الحدث مع تلك الحالة، كيلا تتجاوز الاستعادة التنفيذ أو تطبّقه مرتين.

في بيئة البحث، سأحتفظ باختبار يشغّل إعادة مرجعية واحدة بلا انقطاع، ثم يعيد تشغيل نسخة ثانية عند نقاط صعبة عمدًا: أثناء تهيئة المؤشر، وبعد تنفيذ جزئي، وفي أثناء تفعيل حدّ للمخاطر. استخدم ترتيب الأحداث نفسه واحتفظ بأي حالة عشوائية للمحاكي. وقارن أول قرار بعد الاستعادة، وسجلات الأوامر والتنفيذ، ومسار حقوق الملكية. فقد يخفي تطابق الرصيد النهائي وحده أخطاء متعاكسة.

أما عند التعطل بعد الإرسال وقبل الإقرار، فتحتاج بيئة الاختبار أيضًا إلى حفظ حالة خدمة التنفيذ بمعزل عن عملية الاستراتيجية. وإلا فإنها تمحو موضع الغموض الذي تحاول اختباره.

تشمل مواصفات الاستراتيجية ما تتذكره. اجعل هذه الذاكرة واضحة بما يكفي لتتمكن من إيقاف العملية في منتصف إعادة التشغيل، وتبيّن بالضبط كيف ستعود إلى العمل.

حالة الاستراتيجية، الاختبار التاريخي، استعادة نقاط التحقق، التداول الورقي
→ جميع المقالات