وقتی صحبت از معامله به میان میآید، بک تست میتواند بازی را تغییر دهد. اما بک تست چیست؟ به شکل خلاصه، بک تست فرآیندی است که به معاملهگران اجازه میدهد تا اثربخشی استراتژیهای معاملاتی خود را با آزمایش آنها بر روی دادههای تاریخی ارزیابی کنند. بک تست یک ابزار ضروری برای معاملهگرانی است که میخواهند تصمیمات آگاهانه در مورد معاملات خود بگیرند. خصوصا تریدرهایی که در طیف گستردهای از بازارهای مالی معامله دارند، باید بدانند که در هر بازار، کدام یک از استراتژیهای آنها موفقیت بیشتری به همراه خواهد داشت. برای درک بهتر این موضوع که بک تست چیست و چگونه بک تست بگیریم، تا پایان مقاله با پیپسیلون همراه باشید.
بک تست چیست؟
بک تست (Back Test) بخشی ضروری از هر پلن معاملاتی است. بک تست به معاملهگران اجازه میدهد تا استراتژیهای خود را در برابر دادههای تاریخی آزمایش کنند تا ببینند آیا در گذشته این استراتژی کار میکرده یا خیر. به زبان ساده، بک تست فرآیند اعمال استراتژی معاملاتی بر روی دادههای تاریخی است تا ببینیم چگونه عمل میکند.
بک تست ابزار ارزشمندی برای معاملهگرانی است که میخواهند استراتژیهای خود را قبل از استفاده در معاملات واقعی آزمایش کنند. بک تست میتواند به معاملهگران کمک کند تا نقایص استراتژیهای خود را شناسایی کرده و تنظیمات و اصلاحات لازم را روی آنها انجام دهند.
نکات مهم در بررسی بک تست چیست؟
فاکتورهای متعددی برای بررسی بک تست وجود دارد. در ادامه چند نکته کلیدی وجود دارد که باید هنگام بررسی بک تست در نظر داشته باشید:
استراتژی معاملهگری
انتخاب استراتژی معاملاتی، اولین گام در بک تست است. این موضوع مشخص میکند که چه نوع دادهای و برای چه مدت را جمعآوری کنیم و روی آن بک تست خود را پیادهسازی کنیم.
بیشتر بخوانید: انواع استراتژی معاملاتی در بازار فارکس؛ بهترین استراتژیهای معاملاتی فارکس
کیفیت دادههای تاریخی
کیفیت دادههای تاریخی مورد استفاده برای بک تست بسیار مهم است. دادهها باید دقیق، کامل و عاری از خطا باشند. معاملهگران همچنین باید اطمینان حاصل کنند که دادهها معرف بازاری است که آنها قصد معامله در آن را دارند. به عنوان مثال، اگر یک معاملهگر در حال آزمایش یک استراتژی برای یک سهام خاص است، دادههای تاریخی استفاده شده باید دقیقا مربوط به آن سهام باشد.
مفروضات
معاملهگران باید در مورد هزینههای تراکنش و یا Slippage و غیره در هنگام بک تست فرضیاتی داشته باشند. هزینههای تراکنش شامل کمیسیون و کارمزد است، در حالی که Slippage به تفاوت بین قیمت مورد انتظار معامله و قیمت واقعی که در آن انجام میشود، اشاره دارد. این مفروضات میتوانند تاثیر قابل توجهی بر نتایج بک تست داشته باشند.
تطبیق بیش از حد
بک تست ممکن است دچار تطابق بیش از حد شود، که یعنی کاملا با دادههای تاریخی مطابقت دارد، اما ممکن است در معاملات واقعی و درلحظه، عملکرد خوبی نداشته باشد. برای جلوگیری از مطابقت بیش از حد، معاملهگران باید از آزمایش خارج از نمونه استفاده کنند، که شامل آزمایش استراتژی روی دادههایی است که در تست اولیه استفاده نشدهاند.
شاخصهای اصلی عملکرد
شاخصهای اصلی عملکرد برای تعیین اینکه آیا عملکرد یک استراتژی معاملاتی منجر به سود میشود یا زیان، استفاده میشوند. برخی از شاخصهای کلیدی رایج عبارتند از بازده کل، بازده سالانه و نسبت بازده اصلاح شده با ریسک (نسبت شارپ).
تعصب بهینهسازی
معاملهگران باید مراقب باشند که در هنگام بک تست، قربانی سوگیری بهینهسازی نشوند. سوگیری بهینهسازی زمانی اتفاق میافتد که یک معاملهگر استراتژیای را انتخاب کند که در بک تست عملکرد خوبی داشته باشد، اما ممکن است در معاملات واقعی عملکرد خوبی نداشته باشد. برای جلوگیری از سوگیری بهینهسازی، معاملهگران باید از تکنیکهای بهینهسازی قوی استفاده کنند و از بهینهسازی بیش از حد استراتژیهای خود اجتناب کنند.
بک تست یک ابزار ضروری برای هر معاملهگر است. این ابزار به معاملهگران اجازه میدهد تا استراتژیهای خود را قبل از استفاده در معاملات واقعی، آزمایش کنند و میتواند به شناسایی نقصها و انجام تنظیمات لازم کمک کند.
روش کارکرد بک تست چیست؟
تحلیلگران از بک تست به عنوان راهی برای آزمایش و مقایسه تکنیکهای معاملاتی مختلف بدون ریسک کردن روی پول واقعی استفاده میکنند. تئوری این است که اگر استراتژی آنها در گذشته ضعیف عمل کند، بعید است در آینده عملکرد خوبی داشته باشد (و بالعکس). دو مؤلفه اصلی که در طول آزمایش به آنها توجه میشود، سودآوری کلی و سطح ریسک قابل قبول است.
با این حال، یک بک تست به عملکرد یک استراتژی نسبت به بسیاری از عوامل مختلف نگاه میکند. یک بک تست موفقیتآمیز به معاملهگران استراتژیای را نشان میدهد که از لحاظ تاریخی نتایج مثبتی به همراه داشته است. در حالی که بازار هرگز یکسان حرکت نمیکند، بک تست بر این فرض تکیه میکند که بازارهای مالی در الگوهای مشابهی حرکت میکنند که این الگوها را در طول تاریخ خود انجام میدادند.
روش پیادهسازی بک تست چیست؟
بک تست به دو شکل دستی یا خودکار انجام میشود. در روش دستی، شما میتوانید به شکلی ساده و با استفاده از ابزارهای دم دستی مانند خودکار و کاغذ، بک تست خود را اجرا کنید. البته برای جمعبندی درست و بررسی دقیق نتایج به شکل بهتر، پیشنهاد میشود از ابزاری مانند نرمافزار اکسل یا گوگل شیت بهره بگیرید. چرا که در آنها میتوان با سرعت از اطلاعات مختلف، نمودار و چارت دقیق خارج کرد که تحلیل استراتژی را برای شما بسیار سادهتر میکند.
در روش دوم اما کار کمی متفاوت است. یک بک تست خودکار معمولا توسط یک برنامهنویس که شبیهسازی استراتژی معاملاتی را اجرا میکند، کدنویسی میشود. شبیهسازی بر روی دادههای تاریخی از بازار فارکس، ارزهای دیجیتال و سایر بازارهای مالی اجرا میگردد. معمولا شخصی که بک تست را اجرا میکند، بازده آن استراتژی را در چندین مجموعه داده مختلف نیز ارزیابی میکند.
همچنین ضروری است که این مدل در شرایط مختلف بازار آزمایش شود تا عملکرد به طور عینی ارزیابی شود. پس از آن میتوان معیارهای داخلی استراتژی را به شکل مناسبی بهینه کرد.
مزایا و معایب بک تست چیست؟
بک تست گرفتن نیز دارای مزایا و معایب خاص خود است که قبل از استفاده از آن، باید با این نکات آشنا شوید. در ادامه برخی از مزایا و معایب استفاده از بک تست را بررسی میکنیم.
مزایای بک تست چیست؟
- شما میتوانید استراتژیهای معاملاتی مختلف و حتی بسیار متفاوت را خیلی سریع و بدون ریسک کردن سرمایه آزمایش کنید.
- چرخه آزمایش، بهینهسازی، و آزمون مجدد بک تست، تنظیم دقیق هر استراتژی را که فکر میکنید میتواند نتایج مطلوبی ایجاد کند را امکانپذیر میسازد.
- توسعه و تعدیل استراتژیهایی که مطابق با اولویتهای فردی شما از نظر میزان ریسک در مقابل پاداش هستند.
معایب بک تست چیست؟
- دادههای گذشته لزوما پیشبینیکننده خوبی برای رفتار بازار آینده نیستند، بنابراین هیچ استراتژی نمیتواند صحت و دقت خود را تضمین کند.
- ممکن است وسوسه شوید که یک مدل را به گونهای اصلاح کنید که به بهترین شکل با دادههای تاریخی مطابقت داشته باشد، بدون در نظر گرفتن اینکه شرایط آینده ممکن است متفاوت باشد.
- مجموعه دادههای ناکافی احتمالا مدلهایی را تولید میکند که طیف گستردهای از شرایط بازار را در نظر نمیگیرند.
- یک استراتژی معاملاتی که روی چندین مجموعه داده از یک بازار (مثلا فارکس) به خوبی کار میکند، ممکن است در بازار دیگر (مثلا سهام) به خوبی کار نکند.
- استراتژیهایی که به خوبی در بازار صعودی آزمایش شدهاند ممکن است در شرایط نزولی عمل نکنند و بالعکس.
همان طور که میبینید، تعداد فاکتورهای منفی برای بک تست از تعداد فاکتورهای مثبت بیشتر است. گرچه با وجود تمام این موارد باز هم نیاز به بک تست برای تمامی تریدرها وجود دارد، اما نکات منفی نشاندهنده این موضوع هستند که یک معاملهگر نباید صرفا به بک تست تکیه کند و در مقابل باید از یک تست فقط در مرحله بررسی استفاده نماید.
همچنین هنگام اجرای هر استراتژی معاملاتی، مهم است که اقدامات لازم را برای مدیریت ریسک خود انجام دهید. حتی در یک محیط شبیهسازیشده که تنها سرمایههای مجازی برای سود بردن و از دست دادن وجود دارد، بسیار مهم است که در موقعیتهایی قرار بگیرید که متناسب با ریسکپذیری شما باشد.
بیشتر بخوانید: مدیریت ریسک چیست؟ ۵ تکنیک مواجه با ریسک
چه کسی از بک تستینگ استفاده میکند؟
به طور کلی هر کسی که ترید میکند، باید بک تست انجام دهد. عموما معاملهگران عادی با همان روش ساده استفاده از خودکار و کاغذ و اکسل یا نرمافزارهای ساده بک تستگیری، استراتژیهای خود را آزمایش میکنند. اما در مقابل سرمایهداران بزرگ بیشتر به سمت نوشتن برنامه و شبیهساز برای بک تستگیری میروند.
بک تست کامپیوتری و خودکار معمولا توسط سرمایهگذاران نهادی و مدیران سرمایه اجرا میشوند. دلیل این موضوع این است که گاهی اوقات بک تست از دادههایی استفاده میکند که به دست آوردن آنها میتواند گران باشد و همچنین نیاز به مدلسازی پیچیده دارد.
معاملهگران نهادی و شرکتهای سرمایهگذاری دارای سرمایه انسانی و مالی لازم برای به کارگیری مدلهای بک تست در استراتژیهای معاملاتی خود هستند. علاوه بر این، با وجود مقادیر زیادی پول در جریان بازار، سرمایهگذاران نهادی معمولا برای ارزیابی ریسک خود ملزم به انجام آزمایش مجدد استراتژیها هستند.
نمونهای از بک تستینگ
یک سرمایهگذار از میانگین متحرک ۵۰ روزه به عنوان استراتژی معاملاتی برای یک سهام استفاده میکند و شروع به جمعآوری دادههای قیمتی میکند که به سال ۲۰۱۸ باز میگردد تا راهی برای تعیین اینکه آیا سهام میتواند با بازدهی مشابه در آینده مطابقت داشته باشد یا خیر، پیدا کند. سرمایهگذار به دنبال الگوهایی از حرکت سهام بالاتر از خط میانگین است که میتواند نشاندهنده سیگنال فروش باشد، در حالی که حرکت به زیر آن میتواند نشانه خرید باشد.
سپس سرمایهگذار با پیدا کردن موقعیتهای مناسب و ردیابی عملکرد در دورهای که از سال ۲۰۱۸ شروع میشود، یک معامله را شبیهسازی میکند. بر اساس میانگین متحرک ۵۰ روزه، سیگنالهای خرید و فروش نشان میدهند که چه میزان بازده یا زیان وجود دارد.
محدودیتهای بک تست چیست؟
پیشتر اعلام کردیم که شرایط بازار و اقتصاد گذشته و حال متفاوت است و هیچ تضمینی وجود ندارد که استراتژی که در گذشته موفق بوده، به نتایج مشابهی در آینده منجر شود. بک تست یک رویکرد فرضی برای سرمایهگذاری است و لزوما منجر به بازده یا ضرر مشابه در سرمایهگذاریهای آتی نخواهد شد.
برای مثال، نرخهای بهره میتوانند نقش مهمی در عملکرد گذشته داشته باشند، نرخهای پایینتر، محیط سرمایهگذاری سودمندی را در سهام ایجاد میکنند. حال اگر در زمان انجام بک تست، نرخ بهره بالا باشد، قطعا نتایج معاملات و تحلیلها به دلیل کاهش سرمایهگذاران، تغییر خواهد کرد.
نرمافزارهای مناسب برای بک تست چیست؟
همان طور که گفته شد، نرمافزارهای مختلفی برای بک تست گرفتن وجود دارد که هر کدام ویژگی منحصر به فردی را به معاملهگر ارائه میدهد. در ادامه برخی از بهترین و معتبرترین نرمافزارهای بک تستینگ را معرفی میکنیم:
نرمافزار MetaTrader
نرمافزار متاتریدر (MetaTrader) که به آن MT نیز گفته میشود، یکی از محبوبترین پلتفرمهای معاملاتی در بین معاملهگران فارکس و CFD است. این پلتفرم امکان بک تست استراتژیها را با استفاده از دادههای تاریخی و اسکریپتهای اختصاصی Expert Advisors (Eas) فراهم میکند. متاتریدر که در دو نسخه با نامهای MT4 و MT5 منتشر شده، به کاربران اجازه میدهد تا با استفاده از زبان برنامهنویسی MQL4 و MQL5 استراتژیهای خود را بسازند و آزمایش کنند. میتوان بهترین گزینه به عنوان نرمافزار بک تست فارکس را متاتریدر در نظر گرفت.
برای آشنایی با متاتریدر ۵ به مقاله ” راهنمای جامع آموزش متاتریدر ۵، صفر تا صد نصب تا معامله ” و برای آشنایی با متاتریدر ۴ به مقاله صفر تا صد آموزش متاتریدر ۴ (MT4) مراجعه کنید.
پلتفرم QuantConnect
QuantConnect یک پلتفرم بک تست ابری است که به معاملهگران اجازه میدهد استراتژیهای معاملاتی خود را در دادههای بازار واقعی تست کنند. این پلتفرم از زبانهای برنامهنویسی C#، Python و F# پشتیبانی میکند و دسترسی به دادههای متنوعی از بازارهای مختلف از جمله سهام، فارکس، اوراق قرضه و کریپتوکارنسیها را فراهم میآورد.
پلتفرم TradingView
تریدینگ ویو (TradingView) یک پلتفرم تجزیه و تحلیل مالی و شبکه اجتماعی برای معاملهگران و سرمایهگذاران است. این پلتفرم امکان بک تست استراتژیها را از طریق Pine Script، زبان برنامهنویسی خود TradingView ارائه میدهد. کاربران میتوانند با استفاده از ابزارهای ترسیمی پیشرفته و دسترسی به دادههای تاریخی، استراتژیهای معاملاتی خود را توسعه داده و آزمایش کنند. این پلتفرم همچنین امکانات بسیار گسترده و جذابی برای کاربران خود فراهم میکند.
برای آشنایی با تریدینگ ویو به مقاله آموزش تریدینگ ویو؛ معرفی و آموزش ۰ تا ۱۰۰ و تصویری Trading View مراجعه کنید.
نرمافزار Backtrader
بک تریدر (Backtrader) یک کتابخانه پایتون برای بک تست استراتژیهای معاملاتی است. این ابزار برای توسعهدهندگان و معاملهگرانی که میخواهند با استفاده از برنامهنویسی به زبان پایتون با تعداد زیادی کتابخانه و دادههای تاریخی واقعی، استراتژیهای خود را تست و بهینهسازی کنند، مناسب است.
Backtrader امکان تحلیل دقیق نتایج و اجرای آزمایشهای متعدد را با پشتیبانی از زمانبندیها و دادههای مختلف فراهم میکند. نکته جالب راجع به بک تریدر این است که نرمافزار خود را به شکل اوپن سورس و کاملا رایگان به همراه داکیومنت آن روی بستر گیت هاب (Github) منتشر کرده است. اگر برنامهنویس هستید و میخواهید با کتابخانه بک تریدر کار کنید، میتوانید با مراجعه به لینک https://github.com/mementum/backtrader در کنار دانلود خود نرمافزار، از مثالهای پیادهسازی شده و اندیکاتورهای آن نیز استفاده کنید.
پلتفرم QuantRocket
کوانت راکت (QuantRocket) یک پلتفرم بک تست و معاملات اتوماتیک است که برای معاملهگران کوانتی و داده محور طراحی شده است. این پلتفرم به کاربران اجازه میدهد تا دادهها را جمعآوری کنند، استراتژیهای معاملاتی خود را با زبانهای برنامهنویسی مختلف مانند Python بک تست و اجرا کنند. QuantRocket پشتیبانی گستردهای از دادههای بازار، ابزارهای تحلیل و اتصال به بروکرهای مختلف را ارائه میدهد.
چگونه بک تست بگیریم؟
هر یک از این نرمافزارهای معرفی شده، ویژگیها و قابلیتهای منحصر به فردی را برای بک تست ارائه میدهند، که میتواند به معاملهگران در آزمایش و بهینهسازی استراتژیهای خود کمک کند. اما با توجه به جامعیت، ساده بودن در فرآیند استفاده و رایج بودن بین جامعه تریدرها، ما دو پلتفرم متاتریدر و تریدینگ ویو را برای بررسی روش انجام بک تست روی آنها انتخاب کردیم که در ادامه به آموزش آنها میپردازیم.
آموزش بک تستگیری در متاتریدر
به دلایل مختلفی میتوانیم نرمافزار بک تست فارکس خود را متاتریدر قرار دهیم. این نرمافزار از ویژگیهای مثبت زیادی مانند سرعت، رایگان بودن، سبک بودن، امکان استفاده آسان، ارتباط با تعداد زیادی بروکر و غیره بهرهمند است. .
ما در این بخش به بررسی آموزش بک تستگیری در متاتریدر ۴ میپردازیم که بین MT4 و MT5 در این مورد، تفاوت شایانی وجود ندارد (در جزئیات تفاوت دارند اما در کلیات یکسان هستند). برای اجرای بک تست در متاتریدر کافیست پس از باز کردن نرمافزار، از گزینه View در منو اصلی وارد قسمت Strategy Tester شوید.
بیشتر بخوانید: متاتریدر ۴ یا ۵؟ مقایسه متاتریدر ۴ و ۵ (MT4, MT5) و معرفی بهترین نسخه
همچنین با استفاده از کلیدهای ترکیبی Ctrl و R نیز این بخش باز میشود. این بخش با عنوان Tester در پایین نرمافزار برای شما اجرا میشود. دو پنجره اصلی در Tester وجود دارد که گزینه اول Setting و گزینه دوم Journal است. ابتدا در پنجره Setting باید تنظیمات بک تست را انجام دهیم.
در این بخش باید چند گزینه را مشخص کنید که مهمترین آنها به شرح زیر است:
- گزینه اول برای انتخاب اکسپرت مد نظر است. اکسپرتی که برنامهنویس برای شما آماده کرده را از این بخش باید انتخاب کنید.
- از گزینه Symbol باید برای انتخاب نماد معاملاتی مد نظر خود استفاده کنید.
- از گزینه Model باید نوع انتخاب نقاط برای پیادهسازی بک تست را مشخص کنید.
- اگر تیک گزینه Use date را فعال کنید، میتوانید در بازه زمانی دقیق، بک تست خود را اعمال کنید.
- گزینه Period برای مشخص کردن تایم فریم قابل استفاده است.
- در گزینه Spread مشخص میکنید که میزان اختلاف قابل قبول شما در بین خط عرضه و تقاضا چقدر است.
در نهایت با زدن گزینه Start، متاتریدر برنامه بک تست شما را اجرا میکند. در هر زمان با مراجعه به پنجره Journal میتوانید تاریخچه بک تستهای خود را مشاهده کنید.
آموزش بک تست در تریدینگ ویو
تریدینگ ویو نیز یکی از گزینههای در دسترس و بسیار جامع برای انجام بک تستینگ است. تنها نکته در مورد Tradingview، این است که برای استفاده از بخش بک تست آن، باید اکانت پرمیوم و پولی این پلتفرم را تهیه کنید. البته راه حلهایی برای استفاده از حالت پولی بدون پرداخت پول (!) اما در بازه کوتاه مدت وجود دارد.
ما در این بخش با فرض داشتن اکانت پولی، آموزش بک تست در تریدینگ ویو را بررسی میکنیم. ابتدا باید به سایت تریدینگ ویو به آدرس https://www.tradingview.com/ بروید. سپس نمودار مد نظر خود را باز کنید. حال باید وارد بخش Strategy Tester از بخش پایین نمودار شوید.
در صفحه جدید باید روی گزینه Load your strategy کلیک کرده و سپس از میان استراتژیهای پیشفرض تریدینگ ویو میتوانید هر کدام که مد نظرتان است را به چارت اضافه کنید. کافیست گزینه مد نظر را انتخاب کنید.
اگر استراتژی شما در این لیست وجود ندارد و شما کد نوشته شده آن را در اختیار دارید، میتوانید از گزینه My scripts، کدنویسی خودتان را روی تریدینگ ویو آپلود کنید. بعد از انتخاب استراتژی مد نظر میتوانید جزئیات و فرآیند کاری آن را مشاهده کنید.
همچنین ممکن است با فعال شدن استراتژی، اطلاعات یا علائم خاصی به چارت شما اضافه شود که مربوط به استراتژی اجرا شده و تحلیل آن است.
اگر در کل بر اساس این گونه استراتژیها کار نمیکنید، رسمهای اولیه یا اندیکاتورهای مد نظر را به چارت اضافه کنید. سپس از بالای نمودار، روی گزینه Replay کلیک کنید. با انتخاب این گزینه، علامت موس شما به یک قیچی تغییر میکند که به وسیله آن میتوانید از هر محلی که میخواهید، اطلاعات نمودار را پا کنید (روی هر کندلی که با قیچی کلیک کنید، کندلهای قبل از آن در تصویر نشان داده میشوند و کندلهای بعد از آن از تصویر پاک میشوند).
حال با استفاده از گزینههای زیر نمودار شامل Play، Forward و Replay Speed میتوانید کندلهای پاک شده را (یا به حالت اتوماتیک و با سرعت مشخص یا به صورت دستی و تکی تکی) به تصویر اضافه کنید تا ببینید که آیا استراتژی شما جواب میدهد یا خیر.
سخن پایانی
بک تست گرفتن یکی از الزامات موفق شدن هر معاملهگر است. بک تست به شما جواب دقیق و قطعی نمیدهد، اما میتواند چشم شما را به روی واقعیت و کارکرد استراتژی مورد استفاده شما باز کند. همچنین بهتر است قبل از پیادهسازی هر استراتژی روی پول و معاملات واقعی، ابتدا با استفاده از بک تست تا حدودی بفهمیم که چند درصد استراتژی ما قابلیت سوددهی و اطمینان دارد.
در این مقاله سعی کردیم پاسخ مناسبی برای سوال بک تست چیست و چگونه بک تست بگیریم ارائه دهیم. اما در نهایت در نظر داشته باشید که بک تست فقط بخشی از روش کار یک تریدر است. یک معاملهگر موفق همه چیز را بر اساس نتایج بک تست تعیین نمیکند. به این موضوع فکر کنید که اگر فقط با بک تست میشد تریدر سودمند شد، قطعا الان ۹۰ درصد افراد دنیا تریدر بودند.