بک تست (Backtesting)، و فوروارد تست (forward testing) چیست؟

شناخت و پیش بینی روند بازار، یکی از جذاب ترین و مهم ترین وظایف تریدر هاست. بک تست و فوروارد تست، هر دو، روش هایی مناسب برای تخمین بازارند.

نوشته شده در آموزش ترید 12 دقیقه مدت مطالعه · >
استراتژی ترید بک تست

آیا فکر می کنید که ایده های خوبی در مورد بازار دارید اما نمی دانید چگونه این ایده ها را بدون به خطر انداختن سرمایه تان پیاده سازی کنید؟ دانستن نحوه ی بک تست استراتژی های ترید، حکم آب و نان را برای یک تریدر هدفمند دارد.

فرضیه ی اصلی بک تست بر پایه ی این اصل است که آنچه در گذشته کارآمد بوده، در آینده نیز کارآمد خواهد بود. به یاد داشته باشید که این مسئله بسیار حساس می باشد. فرآیندی که در یک وضعیت خاص بازار سودآور بوده است، میتواند در وضعیتی دیگر منجر به شکست شود. اما خودتان چگونه میتوانید این فرآیند را پیش ببرید؟ و چگونه باید به ارزیابی آن بپردازید؟ یک بک تست ساده چگونه است؟ آیا بک تست مشابه با پیپر تریدینگ (paper trading) است؟ بیایید با هم نگاهی به یک فرآیند ساده ی بک تست  بیندازیم.

مقدمه

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

بک تست چیست؟

به طور خلاصه، هدف اصلی بک تست  در نشان دادنِ میزان اعتبار ایده های تریدینگ شما است. در واقع، بر اصل “تداوم یک استراتژی” متمرکز است و عملکرد آینده ی استراتژی ر ا برحسب اطلاعات گذشته به دست می آورد. شما در حقیقت به اطلاعات گذشته ی بازار نظر می اندازید، و می بینید که یک استراتژی چگونه اجرا خواهد شد. اگر به نظر آید که یک استراتژی دارای پتانسیل خوبی است، احتمالش هست که در یک بستر ترید واقعی نیز کارآمد ظاهر شود و استفاده گردد.

هدف یک ابزار بک تست، تحلیل ریسک ها و سودآوری یک استراتژی است. سپس، آن استراتژی سرمایه گذاری میتواند براساس بازخوردهای آماری، بهینه سازی و تقویت شود. یک بک تست مناسب همچنین تضمین می کند که آن استراتژی حداقل در هنگام اجرا در فضای واقعی ترید، با دوام خواهد بود. طبیتاً میتوان از پلتفرم یا ابزار بک تست برای سنجش میزان ریسک های ترید استفاده کرد.

اگر نتایج بک تست نشان دهنده ی عملکردی زیر حدّ مطلوب باشد، آن ایده ی ترید باید کنار گذاشته شود یا اصلاح گردد. البته شرایط بازاری که در نظر گرفته شده است، نیز مهم است. با تغییر شرایط بازار، همان بک تست میتواند نتایج متفاوتی را در پی داشته باشد.

در سطح حرفه ای، استراتژی های بک تست در ترید را میتوان بسیار ضروری دانست. این موضوع به خصوص در مورد استراتژی های ترید الگوریتمی (همچون ترید خودکار) صدق می کند.

انجام بک تست با مجموعه داده های اشتباه میتواند منجر به نتایجی گمراه کننده شود. به همین دلیل باید دوره ای را برای بک تست پیدا کنید که کاملاً بازتاب کننده ی شرایط کنونی بازار باشد. این کار بسیار سخت است، زیرا بازار همیشه در حال تغییر است.

فوروارد تست یا پیپر تریدینگ چیست؟

با بررسی های بالا، اطلاعاتی کلی از بک تست به دست آوردیم. همچنین می دانیم که عملکرد گذشته حاکی از نتایج آینده نیست. پس چگونه میتوانیم یک استراتژی هدفمند را برای وضعیت های کنونی بازار پیش بگیریم؟ میتوانیم این کار را از طریق آزمودن آن در بازار بدون به خطر انداختنِ سرمایه تان انجام دهیم. به این فرآیند فوروارد تست عملکرد یا معامله کاغذی می گوییم.

معامله کاغذی، شبیه سازی یک استراتژی در بستر واقعی بازار است. به آن “معامله کاغذی” می گوییم، زیرا با آنکه تریدها روی برگه می آیند، هیچ سرمایه ی واقعی استفاده نمیشود. این فرآیند برای شما بستری مناسب فراهم می سازد تا بتوانید استراتژی خود را بهبود بخشید و ایده ای از عملکرد آن به دستتان بیاید.

عالی، اما از کجا باید شروع کرد؟ میتوانید از شبکه های آزمایشی (Demo) برای پیاده سازی استراتژی هایتان بدون به خطر انداختنِ سرمایه تان استفاده کنید. میتوانید تنها ظرف چند دقیقه، یک حساب کاربری بسازید. سپس میتوانید به کمک آن حساب، به آزمودنِ استراتژی های خود بپردازید. بدین ترتیب در بستری ترید خواهید کرد که کاملاً مشابه با بازار لحظه ای واقعی است.

مسئله ای که در اینجا ممکن است رخ دهد، “دیدنِ نیمه ی پُر لیوان است”. منظور آن است که فرد تنها زیرمجموعه ای از داده ها را انتخاب کند که مُهر تأییدی بر دیدگاه تعصبی فردی او باشد. هدف از فوروارد تست، آزمودن یک استراتژی در شرایط واقعی بازار است. اگر سیستم به شما چیزی می گوید، به آن توجه کنید. اگر تنها تریدهایی را انتخاب کنید که بر طبق تعصب فردی شما “به نظر خوب” بیاید، آنگاه این تست برای استراتژی هدفمند، قابل قبول نخواهد بود.

مقایسه بک تست دستی و خودکار

بک تست دستی شامل تحلیل چارت ها و اطلاعات گذشته، و قرار دادن دستیِ تریدها براساس استراتژی می باشد. بک تست اتوماتیک اساساً همین کار را انجام می دهد، اما فرآیند آن از طریق کدهای کامپیوتری به صورت خودکار در می آید. این کدها از طریق زبان های برنامه نویسی همچون پایتون (Python) یا نرم افزار تخصصی بک تست ساخته میشوند.

بسیاری تریدرها از صفحه گسترده های (spreadsheet) گوگل یا اکسل استفاده می کنند. بدین ترتیب، قادر خواهند بود تا عملکرد یک استراتژی را ارزیابی کنند. این اسناد میتوانند نقش گزارش هایی را بازی کنند که حاوی نتایج آزمون استراتژی هستند. آنها میتوانند حاوی هر نوع اطلاعاتی باشند. این اطلاعات شامل پلتفرم ترید، دسته ی دارایی، دوره ی ترید، تعداد برد و باخت های ترید، نسبت شارپ (Sharpe Ratio)، بیشترین افت قیمت، سود خالص، و غیره میشوند.

به صورت خلاصه، نسبت شارپ برای ارزیابی نرخ بازگشت سرمایه ی احتمالی یک استراتژی به نسبت ریسک استفاده میشود. هرچه مقدار نسبت شارپ بیشتر باشد، آن سرمایه گذاری یا استراتژی ترید میتواند جذاب تر باشد.

حداکثر افت قیمت، لحظه ای است که استراتژی ترید شما به بدترین عملکرد خود از زمان آخرین اوج آن رسیده است. به بیانی دیگر، این مقدار همان بیشترین افت درصد سبد خریدتان در طول دوره ی مورد تحلیل است.

پیش از بک تست ، چه باید کرد؟

پیش از اجرای بک تست یک استراتژی معملاتی ، بهتر است دقیقاً تعیین کنید که به دنبال چه مطالبی هستید. چه نکته ای منجر میشود که استراتژی خود را حفظ کنید؟ در طرف مقابل، چه چیزی فرضیه های شما را رد می کند؟ اگر این اطلاعات را از قبل داشته باشید، تعصب اولیه ی شما تأثیری منفی بر نتایج بک تست نخواهد داشت.

همچنین بک تست بهتر است شامل مواردی چون کارمزدهای ترید و برداشت، و هر گونه هزینه ی مرتبط باشد. نرم افزارهای بک تست میتوانند گاهی گران نیز باشند، زیرا حاوی اطلاعات ارزشمند بازار می باشند.

به یاد داشته باشید که بک تست، در نهایت تنها یک تست و آزمون است. همچون تحلیل تکنیکال و چارت خوانی، هیچ تضمینی وجود ندارد که بک تست نتیجه بخش باشد، حتی اگر نتایج مناسبی را براساس اطلاعات گذشته ایجاد کند.

پیش از آنکه مثال بک تست  خود را مطرح کنید، مسئله ای هست که باید تعیین کنید. باید مشخص کنید که چه نوع تریدری هستید. آیا تریدری بی برنامه هستید یا تریدری هدفمند؟

انواع تریدرها

تریدرهای بی برنامه، تریدرهایی بر پایه ی اختیارشان هستند که بسته به قضاوت خودشان تصمیم به ورود و خروج از بازار می گیرند. استراتژی آنان به نسبت آزاد است و تصمیمات آنها اغلب بر پایه ی ارزیابی از وضعیت های آنی است. همانطور که انتظار می رود، مسئله ی بک تست در مورد ترید های داوطلبانه چندان به کار نمی آید. زیرا استراتژی آنان به صورت چندان دقیقی مشخص نیست.

این، البته، بدین معنا نیست که اگر تریدری بی برنامه هستید، نباید به هیچ وجه به بک تست یا معامله ی کاغذی (paper trade) بپردازید. تنها میتوان این نتیجه را گرفت که نتایج این بک تست  نمی تواند چندان قابل اطمینان باشد.

تریدهای سیستماتیک و هدفمند

معاملات سیستماتیک یا هدفمند به موضوع بحث ما نزدیک تر است. تریدرهای هدفمند به سیستمی تکیه می کنند که دقیقاً به آنها زمان ورود و خروجشان را اطلاع می دهد. با اینکه آنان اهتمام کاملی بر استراتژی خود دارند، سیگنال های ورودی و خروجی آنان از طریق همین استراتژی تعیین میشوند. می توانید یک استراتژی هدفمند ساده را به صورت زیر در نظر بگیرید:

  • زمانیکه A و B همزمان اتفاق بیفتند، وارد مبادله شوید.
  • زمانیکه نتیجه ی X رخ دهد، از مبادله خارج شوید.

برخی تریدرها، این رویکرد را ترجیح می دهند. این رویکرد می تواند تصمیمات احساسی را حذف کند و تضمینی منطقی را نسبت به سودآور بودن یک سیستم تجاری مهیا سازد. البته، همچنان تضمینی قطعی وجود ندارد.

به همین دلیل باید اطمینان حاصل کنید که قوانین بسیار ویژه ای را در سیستمتان برای شرایط ورود و خروج داشته باشید. اگر این استراتژی به خوبی تشریح نشود، نتایج آن نیز متناقض خواهند بود. همانطور که شاید متوجه شده باشید، این نوع مبادله بیشتر در ترید الگوریتمی به کار می آید.

نرم افزارهای بک تست  نیز وجود دارند. میتوانید آنان را در صورت تمایل به انجام بک تست  اتوماتیک خریداری کنید. میتوانید داده های خود را وارد کنید، و آن نرم افزار بک تست  را برای شما انجام خواهد داد. هرچند، در این مثال، ما استراتژی دستی بک تست  را پیش می گیریم. زحمت بیشتری خواهید داشت، اما کاملاً رایگان است.

نحوه ی بک تست از یک استراتژی ترید

میتوانید از یک قالب ابتدایی در گوگل شیتز (Google Sheets) برای اطلاع از داده های لازم به منظور قرار دادن داده های خودتان استفاده کنید. برخی تریدرها ترجیح می دهند که اطلاعات قالب فعالیت خود را در اکسل قرار دهند، یا آن را از طریق پایتون (Python) کُدنویسی کنند. قوانین خاصی برای ثبت این اطلاعات و قوانین پایه وجود ندارد. می توانید اطلاعات بیشتر و هر چیز دیگری را که به نظرتان مفید می آید، به آن اضافه کنید.

پس، بیایید با هم یک استراتژی ساده ترید را بک تست  کنیم. این ایده ی ماست:

  • ما یک بیت کوین را در پایان اولین روز بازار پس از یک تقاطع طلایی (golden cross) خریداری می کنیم. ما تقاطع طلایی را زمانی می نامیم که میانگین متحرک (moving average) 50 روزه از میانگین متحرک 200 روزه بالاتر رود.
  • ما یک بیت کوین را در پایان اولین روز بازار پس از یک تقاطع مرگ (death cross) می فروشیم. ما تقاطع مرگ را زمانی می نامیم که میانگین متحرک 200 روزه از میانگین متحرک 50 روزه پایین تر رود.

مثالی از استراتژی بک تست

همانطور که می بینید، ما حتی بازه ای زمانی را معین کرده ایم که این استراتژی در آن معتبر است. این بدان معناست که در صورتی که تقاطع طلایی در چارت 4 ساعته رخ دهد، آن را به عنوان سیگنال ترید حساب نمی کنیم.

برای این مثال، تنها به بازه ای زمانی تا اوایل 2019 نگاه خواهیم انداخت. با اینحال، اگر می خواهید به نتایج دقیق تر و مطمئن تری برسید، میتوانید به تاریخچه قیمتی بیت کوین نیز نظر بیندازید. همچنین میشود بیشتر به عقب رفت و آن را با جریان های قیمتی بیشتری آزمود. شاید بخواهید معیار ها و شاخص های فنی بیشتری را برای کسب نتایج معتبرتر تعیین کنید. همه چیز بستگی به ایده ها، افق زمانی سرمایه گذاری، و میزان تحمل خطای ما دارد.

حال بیایید ببینیم که این سیستم چه سیگنال های تریدی را برای این بازه تولید کرده است:

  • خرید در حدود 5400 دلار
  • فروش در حدود 9200 دلار
  • خرید در حدود 9600 دلار
  • فروش در حدود 6700 دلار
  • خرید در حدود 9000 دلار

آیا این تضمینی برای کسب نتایج مطلوب است؟ خیر. تنها بدین معناست که طبق مجموعه داده های گذشته ی بررسی شده، این استراتژی میتواند به سود برسد. میتوان گفت این نتایج صرفاً یک معیار است. این نتایج از تریدینگ ویو (TradingView) در جدول به این صورت نمایش پیدا می کنند:

استراتژی تقاطع طلایی- تقاطع مرگ
استراتژی بک تست به کمک تقاطع طلایی- تقاطع مرگ. منبع: تریدینگ ویو.

اولین معامله ی ما به سودی حدود برابر با 3800 دلار می رسد، در حالیکه معامله ی دوم منجر به ضرر تقریبی 2900 دلاری شد. این یعنی سود و زیان (PnL)  برابر با 900 دلار است.

همچنین ما به صورت اکتیو ترید می کنیم، که تا دسامبر 2020 حدود 9000 دلار سود دارد. اگر استراتژی ابتدایی خود را پیش بگیریم، زمانی از بازار خروج میکنیم که تقاطع مرگ اتفاق بیفتد.

ارزیابی نتایج بک تست

به صورت خلاصه، این نتایج نشان دهنده ی چه هستند؟ استراتژی ما میتوانست منجر به بازدهی منطقی شود، اما این استراتژی به خودی خود ممتاز نیست. می توانیم از معامله باز کنونی برای بالابردن چشمگیر نرخ سود و زیان خود استفاده کنیم، اما اینکار موجب زائل شدنِ هدف بک تست  میشود. اگر به برنامه ی خود پایبند نباشیم، نتایج نیز اطمینان بخش نخواهند بود.

اگرچه این یک استراتژی هدفمند است، باید شرایط پیرامون این نتایج را نیز در نظر گرفت. پوزیشن بدون سود مدّ نظر ما با خرید در 9600 دلار و فروش 6700 دلار در مارس 2020 و در زمان کرونا بسته شد. چنین رویداد قوی سیاهی (black swan event) می تواند تأثیری مخرّب بر هر سیستم معامله ای داشته باشد. به همین دلیل است که باید به عقب تر برویم و بررسی کنیم که آیا چنین ضرری تنها یک اتفاق حاشیه ای می باشد یا نتیجه ی جانبی استراتژی ما است.

در هر صورت، یک فرآیند بک تست  ساده بدین شکل است. اگر به عقب برگردیم و این آزمایش را با داده های بیشتر و یا شاخص های فنی دیگر پیاده سازی کنیم، این استراتژی می تواند نتایج نوید بخشی را در بر داشته باشد.

فواید نتایج بک تست

معیار های نوسان قیمت: حداکثر رشد و افت قیمت در استراتژی شما.

سرمایه ی تزریق شده: میزان سرمایه اختصاص داده شده از کلّ پورتفولیو (portfolio: سبد خرید) شما

بازگشت سرمایه به صورت سالانه: درصد بازگشت سرمایه آن استراتژی در طول یک سال.

نرخ برد و باخت: میزان برد یا باخت در استراتژی معاملاتی شما.

میانگین قیمت معامله ی انجام شده: میانگین قیمت ورودی ها و خروجی های شما در آن استراتژی.

اینها تنها چند مثال هستند و به هیچ وجه فهرستی کامل نیستند. اینکه چه معیارهایی را می خواهید ارزیابی کنید، کاملاً به شما بستگی دارد. در هر صورت، هرچه در ابتدا اطلاعات بیشتری در سند معامله ی خود قرار دهید، میتوانید اطلاعات بیشتری را از نتایج کسب کنید. برخی تریدرها در بک تست  خود بسیار دقیق هستند. این مطلب در نتایج آنان نیز تجلی خواهد یافت.

مسئله ی مهم دیگر بهینه سازی است. اکنون پس از مطالعه این مقاله، باید تفاوت میان بک تست از داده های گذشته (backtesting)، و فوروارد تست پس از ترید (forward testing) یا معامله ی کاغذی را بدانید. آزمودن و بهینه سازی ایده هایتان در محیط مبادله ی واقعی می تواند بسیار مفید باشد.

نتیجه گیری

ما در اینجا در مورد فرآیند ابتدایی انجام یک بک تست دستی بر یک استراتژی معامله صحبت کردیم. توجه داشته باشید که، عملکردی در گذشته تضمین کننده ی عملکرد آینده نیست. با اینحال، بسیاری تریدرها و سرمایه گذاران هدفمند از بک تست برای اطمینان از استراتژی هایشان استفاده می کنند. بک تست یکی از ابزارهای ضروری برای تریدر الگوریتمی است.

همزمان، نقد و تفسیر نتایج بک تست میتواند سخت باشد. تلویحاً ممکن است تعصب های شخصی خود را وارد روش بک تست خود کنید. بک تست به تنهایی استراتژی های ترید مقاوم و قدرتمندی نمی سازد. اما مطمئناً به شما کمک می کند تا برخی ایده های خود را آزمایش کنید و ضربان بازار را حس کنید.

شرایط بازار تغییر می کند. اگر در صدد بهبود معاملات خود هستید، باید خود را بر این تغییرات منطبق سازید. عموماً، بهتر است که کورکورانه به داده ها اعتماد نکنید. عقل و منطق میتوانند در هنگام ارزیابی نتایج، ابزار مفیدی باشند.

مطالب مرتبط

تئوری داو در تحلیل تکنیکال

تئوری داو (Dow Theory)

نوشته شده در آموزش ترید
  ·   20 دقیقه مدت مطالعه
فرضیه گام تصادفی

گام های تصادفی – گام های غیر تصادفی

نوشته شده در آموزش ترید
  ·   2 دقیقه مدت مطالعه
خوشحالی غیر عقلانی

خوشحالی غیر عقلانی (Irrational Exuberance)

نوشته شده در آموزش ترید
  ·   7 دقیقه مدت مطالعه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

×