Backtesting واستخراج البيانات






+

سكوت بيرسيفال مقدمة في هذه المقالة سوف نلقي نظرة على اثنين من الممارسات ذات الصلة التي تستخدم على نطاق واسع من قبل التجار ودعا Backtesting واستخراج البيانات. هذه هي التقنيات التي هي قوية وذات قيمة إذا نستخدمها بشكل صحيح، ولكن التجار في كثير من الأحيان إساءة استخدامها. ولذلك، سنقوم أيضا استكشاف اثنين من المخاطر المشتركة لهذه التقنيات، والمعروفة باسم فرضية المشكلة وoverfitting متعددة وكيفية التغلب على هذه المزالق. Backtesting Backtesting هو مجرد عملية استخدام البيانات التاريخية لاختبار أداء بعض استراتيجية التداول. يبدأ Backtesting عموما مع الاستراتيجية التي نود أن اختبار، على سبيل المثال شراء GBP / USD عندما يعبر فوق 20 يوما المتوسط ​​المتحرك وبيع عندما يعبر دون أن المتوسط. الآن يمكننا أن اختبار هذه الاستراتيجية من خلال مشاهدة ما في السوق لا تسير إلى الأمام، ولكن ذلك يستغرق وقتا طويلا. هذا هو السبب في أننا استخدام البيانات التاريخية المتوفرة بالفعل. ومثل؛ لكن انتظر، انتظر ومثل!. أسمع قولك. ومثل؛ لا يمكن أن لك الغش أو على الأقل يكون متحيزا لأنك تعرف بالفعل ما حدث في الماضي ومثل؛؟ وهذا بالتأكيد مصدر قلق، لذلك backtest صحيح سوف تكون واحدة التي نحن لسنا على دراية البيانات التاريخية. يمكننا تحقيق ذلك عن طريق اختيار فترات زمنية عشوائية أو عن طريق اختيار العديد من فترات زمنية مختلفة التي لإجراء الاختبار. الآن يمكنني سماع مجموعة أخرى من أنت تقول، ومثل، ولكن كل ذلك البيانات التاريخية فقط يجلس هناك في انتظار أن يتم تحليلها من المغري أليس كذلك؟ ربما هناك أسرار عميقة في أن البيانات فقط في انتظار لالمهوسون مثلنا لاكتشاف ذلك. سيكون من الخطأ جدا بالنسبة لنا لدراسة تلك البيانات التاريخية أولا، لتحليلها ومعرفة ما إذا كان يمكن أن نجد أنماط مخبأة داخلها ومثل؛؟ هذه الحجة صحيحة أيضا، لكنه يقودنا إلى منطقة محفوفة بالمخاطر. العالم للتعدين البيانات تعدين البيانات تعدين البيانات ينطوي على البحث عن طريق البيانات من أجل تحديد أنماط وإيجاد الارتباطات المحتملة بين المتغيرات. في المثال أعلاه تشمل 20 يوما المتوسط ​​المتحرك استراتيجية، وصلنا للتو مع أن مؤشر معين من فراغ، ولكن لنفترض أن لدينا أي فكرة ما هو نوع من استراتيجية أردنا لاختبار؟ وذلك عندما يأتي استخراج البيانات في متناول اليدين. نحن يمكن البحث من خلال البيانات التاريخية لدينا على GBP / USD لنرى كيف تصرف السعر بعد أن عبرت العديد من المتوسطات المتحركة المختلفة. نتمكن من التحقق من تحركات الأسعار ضد العديد من أنواع أخرى من المؤشرات كذلك، وترى من التي تتوافق مع الحركات الكبيرة في الأسعار. موضوع استخراج البيانات يمكن أن يكون مثيرا للجدل لأنه كما ناقشت أعلاه، يبدو قليلا مثل الغش أو ومثل؛ استشرافا للمستقبل ومثل؛ في البيانات. هو استخراج البيانات تقنية علمية صحيحة؟ من جهة يقول الأسلوب العلمي الذي نحن من المفترض أن تجعل فرضية أولا ثم اختباره ضد بياناتنا، ولكن من ناحية أخرى يبدو مناسبا للقيام ببعض ومثل؛ الاستكشاف ومثل؛ البيانات أولا من أجل اقتراح فرضية. فما هو الحق؟ يمكننا أن ننظر في الخطوات في الأسلوب العلمي للفكرة إلى مصدر ارتباك. عملية بشكل عام تبدو مثل هذا: الملاحظة (البيانات) وGT؛ & GT؛ & GT؛ فرضية & GT؛ & GT؛ & GT؛ التنبؤ & GT؛ & GT؛ & GT؛ التجربة (بيانات) لاحظ أن نتمكن من التعامل مع البيانات خلال كل مراحل الملاحظة والتجربة. لذلك كل الآراء الصحيحة. يجب علينا أن نستخدم البيانات من أجل إنشاء فرضية معقولة، ولكن نحن أيضا اختبار هذه الفرضية باستخدام البيانات. هو خدعة لمجرد التأكد من أن مجموعتين من البيانات ليست هي نفسها! يجب علينا ألا اختبار فرضيتنا باستخدام نفس مجموعة من البيانات التي استخدمناها تشير إلى فرضيتنا. وبعبارة أخرى، إذا كنت تستخدم استخراج البيانات من أجل الخروج بأفكار استراتيجية، تأكد من استخدام مجموعة مختلفة من البيانات لbacktest تلك الأفكار. الآن سنقوم نوجه اهتمامنا إلى المزالق الرئيسية لاستخدام استخراج البيانات وbacktesting بشكل غير صحيح. ومن المعروف أن مشكلة عامة كما ومثل؛ الإفراط في التحسين ومثل؛ وأنا أفضل أن كسر هذا مشكلة الى نوعين متميزين. هذه هي الفرضية مشكلة وoverfitting متعددة. بمعنى أنهم الطرق المعاكسة لجعل نفس الخطأ. ينطوي على مشكلة فرضية متعددة اختيار العديد من الفرضيات البسيطة بينما overfitting ينطوي على خلق واحد فرضية معقدة للغاية. فرضية مشكلة متعددة لنرى كيف تنشأ هذه المشكلة، دعونا نعود إلى مثالنا حيث أننا backtested 20 يوما المتوسط ​​المتحرك الاستراتيجية. دعونا نفترض أننا backtest استراتيجية ضد عشر سنوات من بيانات السوق التاريخية ولو ولمح تخمين ما؟ النتائج ليست مشجعة جدا. ومع ذلك، يجري التجار خشن ومضطرب كما نحن، قررنا عدم التخلي بسهولة. ماذا عن المتوسط ​​المتحرك لمدة عشرة أيام؟ قد تعمل على نحو أفضل قليلا، لذلك دعونا backtest ذلك! نحن تشغيل backtest آخر، ونجد أن النتائج لا تزال غير ممتاز، ولكنها أفضل قليلا من النتائج لمدة 20 يوما. قررنا استكشاف قليلا وتشغيل اختبارات مماثلة مع المتوسط ​​المتحرك لمدة 5 أيام و 30 يوما. وأخيرا فإنه يحدث لنا أننا في الواقع يمكن اختبار فقط كل واحد المتوسط ​​المتحرك تصل إلى نقطة معينة، ونرى كيف أنهم جميعا القيام بها. لذلك نحن اختبار 2 يوما، لمدة 3 أيام، 4 أيام، وهلم جرا، وصولا إلى المتوسط ​​المتحرك 50 يوما. الآن بالتأكيد بعض من هذه المتوسطات وأداء ضعيف وغيرها سوف أداء جيدا إلى حد ما، ولكن هناك سيكون لديك لتكون واحدا منهم وهو أفضل المطلقة. على سبيل المثال قد نجد أن المتوسط ​​المتحرك 32 يوما تبين أن أفضل أداء خلال هذه الفترة بالذات عشر سنوات. هل هذا يعني أن هناك شيء خاص حول المتوسط ​​32 يوما، وأننا يجب أن نكون واثقين من أنه سوف أداء جيدا في المستقبل؟ للأسف تحمل العديد من التجار أن تكون هذه هي القضية، وأنها مجرد التوقف عن تحليلاتهم في هذه المرحلة، ظنا منهم أنها قد اكتشفت شيئا عميقا. وقعوا هم في مثل و؛ متعددة الفرضية مشكلة ومثل؛ شرك. المشكلة هي أنه لا يوجد شيء على الإطلاق غير عادي أو كبير حول حقيقة أن بعض المتوسط ​​تحولت إلى أن تكون أفضل. بعد كل شيء، نحن اختبار ما يقرب من خمسين منهم ضد نفس البيانات، لذلك كنا نتوقع العثور على عدد قليل من الفنانين جيدة، فقط عن طريق الصدفة. وهذا لا يعني كان هناك أي شيء خاص حول المتوسط ​​المتحرك معين ومثل؛ وون & مثل؛ في هذه الحالة. تنشأ المشكلة لأننا اختبار فرضيات متعددة حتى وجدنا واحد أن يعمل، بدلا من اختيار فرضية واحدة واختباره. وهنا تشبيه الكلاسيكي جيد. نحن يمكن أن يأتي مع فرضية واحدة مثل ومثل، سكوت عظيم في التقليب رؤساء على عملة ومثل؛ من ذلك، ونحن يمكن أن تخلق التنبؤات التي تقول، ومثل، وإذا كانت الفرضية صحيحة، فإن سكوت تكون قادرة على الوجه 10 رؤساء في صف واحد ومثل؛ وبعد ذلك يمكننا إجراء تجربة بسيطة لاختبار تلك الفرضية. اذا كنت استطيع الوجه 10 رؤساء في صف واحد في الواقع لا يثبت الفرضية. ولكن إذا كنت لا يمكن أن تنجز هذا العمل الفذ أنه يدحض بالتأكيد الفرضية. ونحن لم التجارب التي لا تدحض فرضية المتكررة، ثم ثقتنا في حقيقته ينمو. هذه هي الطريقة الصحيحة للقيام بذلك. لكن، ماذا لو كنا نخرج مع 1000 الفرضيات بدلا من مجرد واحد عن لي كونه عملة زعنفة جيدة؟ نحن يمكن أن تجعل من نفسها فرضية حول 1000 أشخاص مختلفين. لي، إد، سيندي، بيل، سام، الخ طيب، الآن دعونا اختبار لدينا فرضيات متعددة. نطلب من جميع 1000 شخص على الوجه لعملة واحدة. من المحتمل أن يكون هناك حوالي 500 من رؤساء الوجه. الجميع يمكنهم العودة إلى ديارهم. الآن نسأل هؤلاء الناس 500 على الوجه مرة أخرى، وهذه المرة حوالي 250 سوف يقلب رؤساء. على الوجه الثالث حوالي 125 شخصا الوجه رؤساء، في الرابع وتترك حوالي 63 شخصا، وعلى الوجه الخامس هناك حوالي 32. هذه 32 شخصا هم جميع مدهشا ليست لهم؟ لقد انقلبت كل خمسة رؤساء في صف واحد! إذا كان لنا أن نقف خمس مرات أكثر، والقضاء على نصف الشعب في كل مرة في المتوسط، ونحن سوف ينتهي مع 16، ثم 8 ثم 4 ثم 2 وأخيرا شخص واحد ترك الذي انقلبت عشرة رؤساء في صف واحد. انها بيل! بيل هو ومثل؛ fantabulous ومثل؛ زعنفة من النقود! أو هو؟ كذلك نحن في الحقيقة لا أعرف، وهذا هو بيت القصيد. بيل قد فاز مسابقة للخروج من الصدفة وحدها، أو أنه قد يكون جيدا أفضل زعنفة من رؤساء هذا الجانب من مجرة ​​المرأة المسلسلة. وعلى نفس المنوال، ونحن لا نعرف إذا كان المتوسط ​​المتحرك 32 يوما من مثالنا أعلاه مجرد أداء جيدا في اختبار لنا بمحض الصدفة، أو إذا كان هناك حقا شيء خاص حول هذا الموضوع. ولكن كل ما قمت به حتى الآن هو العثور على فرضية، أي أن متوسط ​​استراتيجية تتحرك 32 يوما مربحة (أو أن بيل هو عملة زعنفة كبيرة). نحن لم اختبارها في الواقع أن فرضية حتى الان. حتى الآن أن نفهم أننا لم تكتشف شيئا كبيرا حتى الآن حول المتوسط ​​المتحرك أو حول قدرة بيل على الوجه عملات ليوم 32، والسؤال الطبيعي الذي يطرح نفسه هو ماذا يجب أن نفعل بعد ذلك؟ كما ذكرت أعلاه، العديد من التجار لا يدركون أن هناك خطوة التالية المطلوبة على الإطلاق. حسنا، في حالة بيل كنت ربما تسأل، ومثل، آها، ولكن يمكن انه الوجه عشرة رؤساء في صف واحد مرة أخرى ومثل؛؟ في حالة المتوسط ​​المتحرك 32 يوما، وكنا نريد لاختباره مرة أخرى، ولكن بالتأكيد ليس ضد عينة البيانات نفسها التي استخدمناها لاختيار تلك الفرضية. فإننا اختيار فترة أخرى مدتها عشر سنوات ومعرفة ما إذا كانت استراتيجية عمل فقط كذلك. نحن يمكن أن تستمر في القيام بهذه التجربة عدة مرات كما كنا نريد حتى لدينا امدادات من فترات جديدة لمدة عشر سنوات نفد. نشير إلى هذا الأمر ومثل؛ من اختبار العينة ومثل ؛، وانها وسيلة لتجنب هذا المأزق. هناك طرق مختلفة من مثل هذه التجارب، واحدة منها هي ومثل، عبر التحقق من صحة ومثل ؛، لكننا لن ندخل في أن الكثير من التفاصيل هنا. Overfitting Overfitting هو في الحقيقة نوع من عكس المشكلة أعلاه. في المثال أعلاه الفرضية متعددة، ونحن ننظر في العديد من الفرضيات بسيطة والتقطت الحصاة التي كان أداؤها أفضل في الماضي. في overfitting علينا أولا أن ننظر في الماضي ومن ثم بناء فرضية المعقدة واحدة لأنه يناسب تماما مع ما حدث. على سبيل المثال إذا نظرت إلى معدل USD / JPY خلال الأيام ال 10 الماضية، وأنا قد نرى أن يغلق اليومية فعلت هذا: فوق، فوق، أسفل، فوق، فوق، فوق، أسفل، أسفل، أسفل، فوق. حصلت عليه؟ رؤية النمط؟ نعم، لا يمكنني في الواقع. ولكن إذا أردت أن استخدام هذه البيانات تشير إلى فرضية، وأنا قد تصل. بلدي مذهلة فرضية: إذا كان سعر الإغلاق ترتفع مرتين في صف واحد ثم وصولا ليوم واحد، أو إذا كان يذهب إلى أسفل لمدة ثلاثة أيام متتالية يجب أن نشتري، ولكن إذا كان سعر الإغلاق ترتفع ثلاثة أيام على التوالي علينا أن بيع، ولكن إذا كان يذهب ثلاثة أيام متتالية، ثم هبط ثلاثة أيام على التوالي علينا أن شراء. هاه؟ يبدو وكأنه فرضية أحمق أليس كذلك؟ ولكن إذا كنا قد استخدمت هذه الاستراتيجية خلال الأيام ال 10 الماضية، كنا على حق في كل صفقة واحدة قطعناها على أنفسنا! و& مثل؛ overfitter ومثل؛ يستخدم backtesting واستخراج البيانات بشكل مختلف عن ومثل؛ صناع الفرضية متعددة ومثل؛ فعل. و& مثل؛ overfitter ومثل؛ لا يأتي مع 400 استراتيجيات مختلفة لbacktest. لا يمكن! و& مثل؛ overfitter ومثل؛ يستخدم أدوات جمع البيانات لمعرفة استراتيجية واحدة فقط، مهما كانت معقدة، وهذا لكان أفضل أداء خلال الفترة backtesting. وسوف يعمل في المستقبل؟ لا يحتمل، ولكن يمكن أن نبقى دائما التغيير والتبديل في نموذج واختبار استراتيجية في عينات مختلفة (من عينة الاختبار مرة أخرى) لمعرفة ما إذا كان يحسن أدائنا. عندما نتوقف الحصول على تحسينات في الأداء والشيء الوحيد الذي يرتفع هو تعقيد نموذج لدينا، ثم نحن نعلم أننا قد عبرت خط في overfitting. استنتاج هكذا وباختصار، رأينا أن استخراج البيانات هو وسيلة لاستخدام البيانات لدينا سعر التاريخية تشير إلى استراتيجية التداول قابلة للتطبيق، ولكن ذلك علينا أن نكون على بينة من المزالق من فرضية المشكلة وoverfitting متعددة. طريقة للتأكد من أننا لا تقع فريسة لهذه العثرات هي backtest استراتيجيتنا باستخدام مجموعة بيانات مختلفة من واحد كنا خلال أعمالنا التنقيب واستخراج البيانات. نشير عادة إلى هذا مثل ك &؛ من اختبار العينة ومثل ؛.