بک تست و تست پیش رو ؛ اهمیت همبستگی


در مقاله پیشین از سری مقالات مرتبط با برنامهنویسی در بازارهای مالی به شرح و بررسی «چرا اکسپرت» پرداختیم. در این مقاله به بررسی «بک تست و تست پیش رو ؛ اهمیت همبستگی» میپردازیم.
– – –
بک تست اشاره به استفاده از یک سیستم معاملاتی روی دادههای تاریخی برای بررسی عملکرد آن در طول مدت مشخص شده، دارد.
– – –
بک تست

معاملهگرانی که علاقهمند به تجربه یک ایده معاملاتی در یک بازار زنده هستند، اغلب بهاشتباه بهطور کامل بر نتایج بک تست برای تعیین سودآوری سیستم اعتماد میکنند. درحالیکه بک تست گرفتن میتواند اطلاعات ارزشمندی به معاملهگران ارائه دهد، این اغلب گمراه کننده است و این بخشی از فرایند ارزشیابی میباشد.
تست برون نمونه و تست عملکرد پیش رو تأیید بیشتری در مورد اثربخشی سیستم ارائه میدهد و میتواند رنگ واقعی سیستم را، قبل از کار با پول واقعی نشان دهد. همبستگی خوب بین نتایج بک تست، تست برون نمونه و تست عملکرد پیش رو برای تعیین پایداری سیستم معاملاتی حیاتی است. بهرهگیری از یک منبع معتبر برای آموزش بکتست و آموزش بهینهیابی میتواند بسیار به پروسه بهینهیابی کمک کند. همچنین برنامهنویسی و سفارش کد بهینه یابی و نرم افزار بهینه یابی نیز میتواند ابزار مناسبی برای این مطلوب باشد.
مبانی بک تست گرفتن
بک تست اشاره به استفاده از یک سیستم معاملاتی روی دادههای تاریخی برای بررسی عملکرد آن در طول مدت مشخص شده، دارد. بسیاری از پلتفرمهای معاملاتی امروزی از بک تست گرفتن پشتیبانی میکنند. معاملهگران میتوانند ایدههای خود را با چند کلیک ساده تست کنند و بینشی در خصوص کارآیی یک ایده بدون به خطر انداختن پول خود در یک حساب معاملاتی به دست آورند. بک تست گرفتن میتواند ایدههای ساده مانند چگونگی عملکرد تقاطع میانگین متحرک روی دادههای تاریخی یا سیستمهای پیچیدهتر با ورودیهای و نقاط ورود متنوع را ارزیابی نماید.
یک منبع معتبر برای آموزش بک تست میتواند بسیار به معاملهگر در روند بهینهیابی سیستم معاملاتیاش کمک کند. تا زمانی که یک ایده بتواند به اندازه کافی ارزیابی شود این میتواند بک تست شود. برخی از معاملهگران و سرمایهگذاران ممکن است به دنبال یک برنامهنویس خبره برای توسعه این ایده به شکل قابل تست باشند.
به طور معمول این شامل یک برنامهنویس برای کدنویسی ایده را به زبان اختصاصی مورد استفاده توسط پلت فرم معاملاتی میباشد. برنامهنویس میتواند متغیرهای ورودی تعریف شده توسط کاربر را تعریف کند که به معاملهگر اجازه میدهد تا “سیستم” را ارتقا دهد.
یک مثال از این میتواند در سیستم تقاطع میانگین متحرک ساده ذکر شده در بالا باشد: معاملهگر قادر خواهد بود که طول دو میانگین متحرک استفاده شده در سیستم را وارد یا تغییر دهد. معاملهگر میتواند برای تعیین اینکه چه طولی از میانگین متحرک بهترین نتیجه را در دادههای تاریخی خواهد داشت بک تست انجام دهد.
مطالعات بهینه سازی
بسیاری از پلتفرمهای تجاری نیز اجازه مطالعات بهینه سازی را میدهند. این امر مستلزم وارد کردن یک محدوده برای ورودی مشخص و اجازه دادن به کامپیوتر برای “انجام عملیات ریاضی” جهت کشف کردن اینکه که کدام ورودی بهترین عملکرد را دارد میباشد. بهینهسازی چند متغیره میتواند عملیات ریاضی را برای دو یا چند متغیر اجرا نماید تا سطوحی از آنها با هم برای حصول بهترین نتیجه مشخص شود.
به عنوان مثال، معاملهگران میتوانند به این برنامه بگویند کدام ورودیهایی را که آنها میخواهند در استراتژی خود اضافه کنند. سپس دادهها با توجه به دادههای تاریخی آزمایش شده، به وزن ایدهآل آنها بهینه میشوند.
بک تست میتواند هیجانانگیز باشد در حالی که یک سیستم غیرسودمند اغلب میتواند به طور جادویی با چند مرحله بهینهسازی به یک ماشین پولساز تبدیل شود. متاسفانه بهینهسازی سیستم برای رسیدن به بالاترین میزان سودآوری تاریخی، اغلب منجر به سیستمی میشود که در معاملات واقعی ضعیف عمل میکند. بهینهسازی بیش از حد سیستمهایی را ایجاد میکند که تنها بر روی کاغذ خوب ظاهر میشوند.
برازش منحنی استفاده از تجزیه و تحلیل بهینهسازی برای ایجاد بیشترین تعداد معاملات برنده با بزرگترین سود بر روی دادههای تاریخی مورد استفاده در دوره آزمون میباشد. اگر چه این در نتایج بک تستگیری مؤثر به نظر میرسد، برازش منحنی به سیستمهای غیر قابل اعتماد منجر میشود، زیرا نتایج به طور خاص فقط برای دادههای خاص و دوره زمانی مشخص طراحی شده است.
بک تستگیری و بهینهسازی مزایای زیادی را به یک معاملهگر ارائه میکند، اما این تنها بخشی از روند در ارزیابی سیستم معاملاتی بالقوه است. گام بعدی معاملهگر این است که سیستم را روی دادههای تاریخی که در مرحله اولیه بک تستگیری استفاده نشده است، اعمال کند.
دادههای درون نمونه در مقابل برون نمونه
هنگام تست یک ایده در مورد دادههای تاریخی، ذخیره یک دوره زمانی از اطلاعات تاریخی برای آزمایش مفید است. دادههای تاریخی اولیه که ایده روی آنها تست و بهینه شده است، به عنوان دادههای درون نمونه در نظر گرفته میشود. مجموعه دادهای که معکوس شده است به عنوان دادههای برون نمونه شناخته میشود. این تنظیمات بخش مهمی از فرایند ارزیابی است زیرا راهی را برای تست ایده در دادههایی که جزء مدل بهینهسازی نیست، فراهم میکند. در نتیجه، این ایده به هیچ وجه تحت تأثیر دادههای برون داده تاثیری نخواهد بود و معاملهگران قادر خواهند بود تا چگونگی عملکرد سیستم در دادههای جدید را تعیین کنند. یعنی در تجارت واقعی.
معاملهگران میتوانند قبل از شروع هر گونه بک تست یا بهینهسازی، درصدی از دادههای تاریخی را که برای آزمایش برون نمونه ذخیره شدهاند، کنار بگذارند. یک روش این است تقسیم دادههای تاریخی به سه بخش و در نظر گرفتن یک سوم آن را برای استفاده در آزمایش برون نمونه میباشد. برای آزمایش اولیه و بهینهسازی فقط دادههای درون نمونه باید استفاده شوند.
شکل ۱ یک خط زمانی را نشان میدهد که در آن یک سوم دادههای تاریخی برای آزمایش برون نمونه رزرو شده است و دو سوم برای آزمایش درون نمونه مورد استفاده قرار میگیرد. اگر چه شکل ۱ دادههای برون نمونه را در ابتدای تست نشان میدهد، روشهای معمولی، قسمت بخش برون نمونه را بلافاصله قبل از قسمت عملکرد پیش رو در نظر میگیرند.

هنگامی که یک سیستم معاملاتی با استفاده از دادههای درون نمونه توسعه یافته است، آماده استفاده روی دادههای برون نمونه میباشد. معامله گران میتوانند نتایج عملکرد درون نمونه و برون نمونه را ارزیابی و مقایسه کنند.
همبستگی به شباهت بین عملکرد و روند کلی دو مجموعه داده اشاره دارد. معیارهای همبستگی را میتوان در ارزیابی گزارشهای عملکرد استراتژی ایجاد شده در طول دوره آزمایشی استفاده نمود. (یکی ویژگی که اکثر پلتفرمهای تجاری ارائه میدهند). هرچه همبستگی بین دو طرف قویتر باشد، احتمال اینکه یک سیستم در آزمایشهای عملکرد پیش رو و معامله زنده بهتر عمل کند بیشتر است. شکل ۲ دو سیستم مختلف را نشان میدهد که در نمونههای درون نمونه مورد آزمایش قرار گرفته و بهینه شدهاند و سپس روی دادههای برون نمونه اعمال میشوند.
نمودار در سمت چپ سیستمی را نشان میدهد که روی دادههای درون نمونه آزمایش و بهینهسازی شده است سپس روی دادههای برون نمونه استفاده شده است. نمودار سمت چپ سیستمی را نشان میدهد که بطور آشکار روی درون نمونه خوب عمل میکند ولی به طور کامل در دادههای برون نمونه شکست خورده است. نمودار سمت راست یک سیستم را نشان میدهد که در دادههای درون و برون نمونه به خوبی عمل مینماید.

اگر بین آزمونهای درون نمونه و برون نمونه، مثل نمودار چپ در شکل ۲، همبستگی کمی وجود دارد، احتمالاً سیستم بیش از حد بهینه شده و در معامله زنده خوب عمل نمیکند. اگر رابطهای قوی در عملکرد وجود داشته باشد، همانطور که در نمودار سمت راست شکل ۲ دیده میشود، مرحله بعدی ارزیابی شامل یک نوع تست اضافی از نمونه است که به عنوان تست عملکرد پیش رو شناخته میشود.
مبانی تست عملکرد پیش رو
تست عملکرد پیش رو، همچنین به عنوان تجارت کاغذ شناخته میشود، به معاملهگران مجموعهای دیگر از دادههای برون نمونه برای ارزیابی یک سیستم ارائه میکند. تست عملکرد پیشرو یک شبیهسازی از معاملات واقعی است و شامل پیگیری منطق سیستم در یک بازار زنده است. این نیز به عنوان معامله کاغذ نامیده میشود چونکه تمام معاملات تنها بر روی کاغذ اجرا میشود؛ یعنی ورود و خروجهای معامله به همراه هر گونه سود یا زیان سیستم ثبت شده است، اما معاملات واقعی انجام نمیشود.
یک جنبه مهم تست عملکرد پیشرو است که دقیقاً منطق سیستم را دنبال کند. در غیر اینصورت، ارزیابی این گام فرآیند، اگر نه غیر ممکن بلکه مشکل میشود. معاملهگران باید در مورد هر یک از ورود و خروجهای تجاری صادق باشند. اگر معامله مطابق منطق سیستم اتفاق بیفتد، باید مستند و ارزیابی شود.
بسیاری از کارگزاران یک حساب معاملاتی شبیهسازی شده را ارائه میدهند که میتوان معاملات را انجام داد و سود و زیان مربوطه محاسبه نمود. با استفاده از یک حساب معاملاتی شبیهسازی میتواند فضای نیمه واقع گرایانهای ایجاد نمود که در آن معامله عملی انجام و ارزیابی سیستم ایجاد میشود.
شکل ۲ نیز نتایج تست عملکرد پیش رو در دو سیستم را نشان میدهد. باز هم، سیستم نمایش داده شده در نمودار چپ، بر اساس آزمایش اولیه خوب عمل نمیکند. اما سیستم نمایش داده شده در نمودار راست، همچنان به خوبی در تمام مراحل، از جمله آزمایش عملکرد پیشرو ادامه مییابد. یک سیستم که نتایج مثبت با همبستگی خوب بین آزمون درون نمونه، برون نمونه و عملکرد پیش رو نشان میدهد اماده اجرا در بازار زنده میباشد.
مطلب آخر
بک تست گرفتن یک ابزار ارزشمند در اکثر پلتفرمهای تجاری است. تقسیم دادههای تاریخی به مجموعههای چندگانه برای ارائه آزمون درون نمونه و برون نمونه میتواند به معامله گران یک ابزار عملی و کارآمد برای ارزیابی یک ایده و سیستم معاملاتی ارائه نماید. از آنجایی که اکثر معامله گران روشهای بهینهسازی را در بک تست گرفتن به کار میگیرند، ارزیابی، سیستم بر روی دادههای پاک، برای تعیین پایداری آن، امری مهم میباشد.
ادامه آزمایش برون نمونه با تست عملکرد پیش رو یک لایه ایمنی دیگر را قبل از قرار دادن سیستم در بازار پرریسک واقعی فراهم میکند. نتایج مثبت و همبستگی خوب بین بک تست درون نمونه و برون نمونه و آزمایش عملکرد پیش رو احتمال اینکه یک سیستم در معامله واقعی خوب عمل کند را افزایش میدهد.چنین قابلیتی در متاتریدر 5 تعریف شده است و می توان بر اساس مقاله بالا در متا تریدر 5 عمل نمود.
– – –
در مقالهی بعدی به بررسی «مصاحبه با والری مازورنکف» میپردازیم.
با نشر مطالب سایت جهان بورس Jahanbourse با ذکر منبع،
ما زا در جهت فرهنگ سازی الگوریتم تریدینگ باری فرمایید.
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.