مسیر طراحی و بهینهسازی استراتژی
چند نکتهای که در این صفحه میخونید، چیزهایی نیست که فقط از روی کتاب یا چند مقاله جمع شده باشه؛ بخش زیادی حاصل تجربه شخصی و مسیریه که خودم طی کردم.
اگر واقعاً دنبال این هستید که مشکلتون رو حل کنید، پیشنهاد میکنم حتی اگر مطالب کمی طولانیه، تا آخر صفحه رو با حوصله بخونید. شاید بین این مطالب نکتهای پیدا کنید که مدتها دنبالش بودید.
یه چیزی رو هم صادقانه بگم؛ قرار نیست همیشه با خریدن یک دوره یا پیدا کردن یک آموزش جدید، همه مشکلاتمون یکدفعه حل بشه. اصل مطلب رو من اینجا باهاتون درمیون میذارم، اما اینکه چطور ازش استفاده کنید و چقدر روی خودتون کار کنید، در نهایت به خودتون بستگی داره.
اگر هم ترجیح میدید مسیر براتون آمادهتر باشه، یا دوست دارید سریعتر متوجه بشید از کجا باید شروع کنید، میتونید از تیم پشتیبانی مشاوره رایگان بگیرید. همکاران ما شرایطتون رو بررسی میکنن و راهنماییتون میکنن.
در نهایت انتخاب با خودتونه؛ مهم اینه که به جای اینکه فقط دنبال یک جواب آماده باشید، واقعاً برای حل مشکلتون قدم بردارید.
خیلی از معاملهگرها فکر میکنن برای ساختن یک استراتژی معاملاتی، کافیه چند تا اندیکاتور مثل RSI، MACD، Moving Average یا Stochastic رو کنار هم بذارن و هر وقت چند شرط همزمان برقرار شد، وارد معامله بشن.
اما واقعیت اینه که ساختن یک استراتژی واقعی خیلی بیشتر از این حرفهاست.
استراتژی فقط چند تا شرط برای ورود نیست. شما باید قبل از اینکه با پول واقعی وارد بازار بشید، بارها و بارها استراتژیتون رو در دورههای مختلف بازار بکتست کرده باشید و با شرایط مختلفی که ممکنه بعد از ورود به معامله اتفاق بیفته، روبهرو شده باشید.
وقتی وارد یک معامله میشید، دیگه نباید تازه شروع کنید به فکر کردن که «حالا چیکار کنم؟»
یک تریدر باید قبل از ورود، جواب این سؤالها رو برای خودش مشخص کرده باشه؛ اگر معامله وارد سود شد چه کار میکنم؟ اگر سریع برگشت چی؟ اگر چند معامله پشت سر هم ضرر کردم چی؟ اگر بازار برخلاف چیزی که انتظار داشتم حرکت کرد، چه تصمیمی باید بگیرم؟
این آمادگی باید قبل از معامله ایجاد شده باشه، نه وسط معامله.
به نظر من، وقتی یک استراتژی واقعاً درست ساخته و تست شده باشه، تریدر هنگام ورود به معامله باید تقریباً مثل یک ربات عمل کنه؛ یعنی بدون دخالت احساسات، دقیقاً طبق قوانینی که از قبل مشخص کرده وارد بشه، معامله رو مدیریت کنه و در نهایت طبق همان قوانین از معامله خارج بشه.
بکتست فقط برای این نیست که ببینیم یک استراتژی چقدر سود کرده. مهمتر از اون اینه که قبل از ورود با پول واقعی، بارها شرایط مختلف رو تجربه کنیم تا وقتی همون شرایط در بازار واقعی اتفاق افتاد، از قبل بدونیم باید چه کاری انجام بدیم.
تفاوت یک سیستم معاملاتی که واقعاً میتونه در بلندمدت عملکرد قابل قبولی داشته باشه، با چند تا اندیکاتور که کنار هم چیده شدن، دقیقاً از همینجا مشخص میشه.
توی این صفحه میخوام قدمبهقدم با هم ببینیم چطور میشه یک استراتژی رو از صفر طراحی کرد، چطور درست بکتستش کنیم و و مهمتر از همه، چطور بفهمیم چیزی که ساختیم اصلاً ارزش استفاده در بازار واقعی رو داره یا نه.
استراتژی معاملاتی دقیقاً چیست؟
قبل از اینکه شروع کنیم به ساختن یک استراتژی، باید یک نکته مهم رو مشخص کنیم:
استراتژی فقط یک سیگنال ورود نیست.
خیلی وقتها میبینم یک نفر میگه:
«وقتی RSI رفت زیر 30، خرید میکنم.»
اما این هنوز استراتژی نیست؛ فقط یک شرط برای ورود به معامله است.
یک استراتژی کامل باید از قبل برای اتفاقات مختلفی که ممکنه توی یک معامله بیفته، جواب مشخص داشته باشه.
به زبان ساده، حداقل باید این موارد مشخص باشن:
- انتخاب بازار
- تشخیص شرایط بازار
- قوانین ورود
- حد ضرر
- حد سود
- تعیین حجم معامله
- قوانین خروج
- مدیریت ریسک
- قوانین اجرای معامله
اگر دقیقتر ببینیم، ساختار یک استراتژی این است:
انتخاب بازار + قوانین اجرا + شرایط بازار + مدیریت ریسک + حجم معامله + ورود + حد ضرر + حد سود + خروج
دو مرحله متفاوت در ساخت استراتژی
طراحی: ایده → فرضیه → قوانین → نسخه اولیه استراتژی → بکتست اولیه
بهینهسازی: تحلیل نتایج → شناسایی ضعف → تغییر کنترلشده پارامترها → تست مجدد → جلوگیری از Overfitting
مثلاً فرض کنید استراتژی شما این شکلی باشه:
فقط روی EURUSD و در تایمفریم M15 معامله میکنم.
اگر روند H1 صعودی بود، قیمت در M15 به محدوده مشخصی برگشت، RSI از ناحیه موردنظر خارج شد و کندل تأیید هم بسته شد، وارد خرید میشوم.
حد ضرر پشت آخرین Swing Low قرار میگیرد.
حد سود بر اساس نسبت ریسک به بازده یا ساختار بازار مشخص میشه.
اگر اسپرد از مقدار تعیینشده بیشتر بود، وارد معامله نمیشوم.
در هر معامله فقط 0.5 درصد سرمایه را ریسک میکنم.
در زمان اخبار مهم نیز معامله جدیدی باز نمیکنم.
اینجا دیگه فقط با چند اندیکاتور و یک سیگنال ساده طرف نیستیم.
اینجا یک سیستم معاملاتی مشخص و قابل آزمایش داریم.
حالا مرحله مهم شروع میشه:
باید این سیستم رو در شرایط مختلف بازار، دورههای زمانی مختلف و تعداد زیادی معامله بکتست کنیم و ببینیم در عمل چه رفتاری داره.
ممکنه در بکتست متوجه بشیم بعضی از قوانین اصلاً لازم نیستن، بعضی شرایط باعث ضررهای زیادی میشن یا حتی چیزی که روی نمودار خیلی خوب به نظر میرسه، در تعداد زیادی معامله نتیجهای که انتظار داشتیم رو نمیده.
اینجاست که تفاوت بین یک ایده معاملاتی و یک استراتژی واقعی مشخص میشه.
ما اول یک سیستم با قوانین مشخص میسازیم، بعد اون رو بارها آزمایش میکنیم، نقاط ضعفش رو پیدا میکنیم و در نهایت تصمیم میگیریم آیا این سیستم واقعاً ارزش استفاده در بازار واقعی رو داره یا نه.
اولین مرحله ساخت استراتژی: یک فرضیه داشته باش
خب، از کجا باید شروع کنیم؟
به نظر من لازم نیست از همین اول دنبال یک استراتژی عجیب و پیچیده باشی. از هر چیزی که تا امروز یاد گرفتی، یک فرضیه برای خودت داشته باش.
مثلاً:
وقتی سقف یا کف مهمی شکسته شد، منتظر پولبک و نشانه ورود باشی.
یا وقتی روند در تایمفریم بالاتر صعودی است، در تایمفریم پایینتر دنبال موقعیت خرید بگردی.
یا مثلاً با کراس شدن Moving Average 50 و Moving Average 200، جهت روند را مشخص کنی.
یا وقتی قیمت به یک ناحیه عرضه یا تقاضا رسید، دنبال نشانهای برای ورود باشی.
اینها از سادهترین سناریوهایی هستن که تقریباً هر معاملهگری در ابتدای مسیرش با آنها آشنا میشه. البته در آموزشهای مختلف ممکن است برای همین مفاهیم از اسمها، اصطلاحات یا متدهای متفاوتی استفاده شود و گاهی آنقدر موضوع پیچیده بیان شود که فکر کنیم با یک روش کاملاً جدید روبهرو هستیم.
اما اگر کمی دقیقتر نگاه کنیم، در نهایت بخش زیادی از این روشها برمیگردد به همان چیزی که روی نمودار میبینیم؛ قیمت و کندلها.
از طرف دیگه، مهم نیست تا امروز چند دوره دیدهای یا چند روش مختلف یاد گرفتهای. معمولاً در ذهن هر معاملهگر، بعد از مدتی یک روش بیشتر از بقیه جا میافتد.
همان روشی که وقتی به نمودار نگاه میکنی با خودت میگویی:
«فکر کنم این روش واقعاً جواب میده.»
حتی ممکن است هنوز در عمل از آن سود نگرفته باشی.
به نظرم دقیقاً همینجا باید شروع کنی.
همون چیزی که توی ذهنت ساختی رو روی کاغذ بیار و وارد بکتستش کن.
نه اینکه از همان ابتدا دنبال این باشی که یک استراتژی کامل و بینقص بسازی. فقط چیزی را که در ذهنت تصور کردهای، تا جایی که میتونی دقیق بنویس و اجرا کن.
اگر واقعاً حاشیه سود داشته باشد، در مراحل بعد میتونی آن را بهینه کنی.
اگر هم ببینی ایده آنطور که تصور میکردی کار نمیکند، یک اتفاق مهم افتاده؛ تصویر ذهنی اشتباهی که از آن روش ساخته بودی، کمکم کنار میرود.
همین هم خودش یک پیشرفت بزرگه.
چون یکی از بدترین حالتها برای یک تریدر این است که سالها به یک استراتژی خیالی باور داشته باشد، بدون اینکه یک بار هم آن را به شکل درست آزمایش کرده باشد.
منتظر یک استراتژی کامل نباش
یه نکته دیگه رو هم از تجربه خودم بگم.
خیلی از ایدههای خوب اصلاً در شروع کار وجود ندارند.
وقتی شروع میکنی، در حین بکتست و بررسی معاملات، کمکم متوجه چیزهایی میشوی که قبلاً ندیده بودی.
مثلاً میبینی استراتژی در بازار رنج عملکرد خوبی ندارد.
بعد یک قانون برای تشخیص بازار رنج به ذهنت میرسد.
یا متوجه میشوی ورود بعد از یک نوع پولبک نتیجه بهتری دارد.
یا میبینی ساعت خاصی از بازار برای این روش مناسبتر است.
همینجا ایده اولیه کمکم تبدیل به یک سیستم جدیتر میشه.
پس برای شروع لازم نیست همهچیز از قبل آماده باشه.
باید شروع کنی تا ایدهات فرصت رشد پیدا کند.
هیچچیزی برای کسی از روز اول کامل و آماده نبوده.
چیزی که برای یک نفر جواب میدهد، لزوماً برای تو همان نتیجه را ندارد
یه موضوع مهم دیگه هم هست که به نظرم خیلی از معاملهگرها دیر متوجه آن میشوند.
طرز فکر و تصمیمگیری آدمها با هم فرق داره.
یعنی ممکنه شما بهترین استراتژی یک استاد یا یک تریدر باتجربه را یاد بگیری، اما وقتی خودت پشت نمودار مینشینی، نتوانی دقیقاً همان کاری را انجام بدهی که او انجام میدهد. :)
چرا؟
چون ممکن است بخشی از تصمیمهای او حاصل سالها تجربه، تمرین و دیدن هزاران نمودار باشد؛ چیزهایی که صرفاً با توضیح دادن منتقل نمیشوند.
برای همینه که یک استراتژی، حتی اگر واقعاً خوب باشد، معمولاً باید توسط خودت بارها و بارها تمرین شود.
باید بکتست بگیری.
اشتباه کنی.
شرایط مختلف را ببینی.
معاملات زیادی را بررسی کنی.
و در نهایت همان روش را با توجه به شخصیت، شرایط و درک خودت از بازار شخصیسازی کنی.
البته اگر استراتژی کاملاً مکانیکی و قانونمحور باشد، داستان کمی متفاوت است؛ چون در آن حالت بخش زیادی از تصمیمگیریها از قبل مشخص شدهاند.
اما در بیشتر روشهایی که بخشی از آنها به تشخیص و تفسیر معاملهگر وابسته است، نمیتوان انتظار داشت دو نفر دقیقاً یک رفتار معاملاتی داشته باشند.
برای همینه که در تیم پشتیبانی ما هم بخش زیادی از زمان صرف جلسات خصوصی با تریدرها میشه. هدف فقط این نیست که یک روش را به کسی بگوییم و تمام.
اگر یک روش جادویی وجود داشت که همه با یاد گرفتن آن میتوانستند از بازار پول دربیاورند، احتمالاً دیگر نیازی به این همه بحث و آموزش نبود و شما هم الان این صفحه را نمیخواندید.
کسی که چند سال توی این مسیر بوده، احتمالاً بهتر میفهمه منظورم چیه.
من خودم هم حدود هفت سال پیش، وقتی مطالبی شبیه همینها را میخواندم، خیلی از این نکات را جدی نمیگرفتم.
حتی اگر چند بار هم میخواندم، باز متوجه اصل موضوع نمیشدم.
مشکل این نبود که علاقه نداشتم؛ مشکل این بود که کسی نبود این مسیر را از ابتدا تا انتها کنار هم برایم توضیح بدهد.
البته بخش زیادی از این مسیر را هیچکس نمیتواند به جای شما تجربه کند. بعضی چیزها فقط با زمان، تمرین، اشتباه و تجربه شخصی به دست میآیند.
هدف من از نوشتن این مطالب هم دقیقاً همینه که تا جای ممکن، مسیر را برای شما کوتاهتر کنم و کمتر درگیر حاشیههایی شوید که خودم زمانی درگیرشان بودم.
چون اگر قرار باشه یک چیز رو واقعاً قدر بدونیم، سلامتی و زمان است.
خب، بریم سراغ ادامه بحث.
اشتباه رایج: اول اندیکاتور، بعد استراتژی!
یکی از اشتباهات رایج اینه که معاملهگر اول چند اندیکاتور انتخاب میکند و بعد تلاش میکند از ترکیب آنها یک استراتژی بسازد.
مثلاً:
بعد شروع میکند به اضافه کردن شرطهای مختلف تا بالاخره روی نمودار چند معامله خوب پیدا کند.
اما یه مشکل مهم این وسط هست:
خیلی از معاملهگرها چیزی را که واقعاً در ذهنشان تصور کردهاند، قبل از تست کردن روی کاغذ نمیآورند.
حتی اگر هم آن را بنویسند، بعد از چند معامله ممکن است ناخودآگاه قوانین را تغییر دهند.
یک جا ورود را کمی جلوتر انجام میدهند.
یک جا حد ضرر را جابهجا میکنند.
یک جا معاملهای را که باید طبق قوانین وارد میشد، انجام نمیدهند.
و بعد در پایان فکر میکنند استراتژی مشکل داشته است.
در حالی که گاهی مشکل خود استراتژی نیست؛ مشکل این است که چیزی که قرار بوده تست شود، دیگر همان چیزی نیست که واقعاً اجرا شده است.
این موضوع تا حد زیادی به نحوه عملکرد ذهن انسان برمیگردد و اگر به این مباحث علاقه داشته باشی، شناختن رفتار ذهن و خطاهای تصمیمگیری در معاملات خودش یک بحث بسیار جذاب و مهم است.
پس از کجا شروع کنیم؟
برای شروع، خیلی ساده عمل کن.
یک ایدهای که در ذهنت داری را روی کاغذ بیاور.
مثلاً فرض کن ایده تو این باشد:
«وقتی بازار در یک روند صعودی قرار دارد و بعد از یک حرکت قوی، یک اصلاح کوتاه انجام میدهد، احتمال ادامه روند وجود دارد.»
فعلاً همین یک فرضیه است.
حالا باید آن را به چیزی تبدیل کنیم که بتوانیم اندازهگیری و تست کنیم.
مثلاً:
- روند صعودی: EMA50 بالاتر از EMA200 باشد.
- حرکت قوی: حرکت قیمت حداقل X برابر ATR باشد.
- اصلاح: حداقل Y کندل ادامه داشته باشد.
- ورود: شکست High کندل تأیید.
- حد ضرر: زیر آخرین Swing Low.
- خروج: در 2R یا با دریافت سیگنال معکوس.
اینجا یک اتفاق خیلی مهم افتاده است.
ما یک جمله کلی و ذهنی را تبدیل کردهایم به قوانین مشخص و قابل اندازهگیری.
و این دقیقاً همان چیزی است که برای بکتست به آن نیاز داریم.
چون تا وقتی نتوانی ایده خودت را به قوانین مشخص تبدیل کنی، نمیتونی بفهمی واقعاً این ایده در گذشته چه عملکردی داشته است.
اول ایده را از ذهنت بیرون بیاور، بعد آن را تبدیل به قانون کن، بعد بکتست بگیر.
از همینجا ساخت یک استراتژی واقعی شروع میشه.
2. استراتژی را با اندیکاتورها شروع نکنید
یکی از اشتباهاتی که خود من هم اوایل مسیر خیلی انجام میدادم این بود که سریع میرفتم سراغ اندیکاتورها.
مثلاً میگفتم:
«خب RSI رو بذارم، Moving Average هم اضافه کنم، MACD هم شاید کمک کنه... حالا ببینیم با ترکیب اینها چه استراتژیای میشه ساخت.»
اما واقعیت اینه که اندیکاتور ابزار است، نه استراتژی.
RSI بهتنهایی استراتژی نیست.
Moving Average بهتنهایی استراتژی نیست.
MACD بهتنهایی استراتژی نیست.
حتی Price Action هم به خودی خود یک سیستم معاملاتی کامل نیست.
قبل از اینکه ابزار انتخاب کنی، باید یک سؤال مهمتر از خودت بپرسی:
اصلاً قرار است چه اتفاقی در بازار را معامله کنم؟
مثلاً ممکن است بخواهی روی یکی از این رفتارها کار کنی:
- Trend Following — دنبال کردن روند
- Breakout — شکست
- Mean Reversion — بازگشت به میانگین
- Momentum — مومنتوم
- Pullback — پولبک
- Volatility Expansion — افزایش نوسان
- Range Trading — معامله در محدوده
- Session Trading — رفتار قیمت در سشنهای معاملاتی
- رفتار قیمت در زمان اخبار
وقتی مشخص کردی دنبال چه رفتاری هستی، آنوقت میتونی ببینی چه ابزاری واقعاً به درد این کار میخورد.
نه اینکه اول ده تا اندیکاتور روی چارت بریزی و بعد دنبال این باشی که از بین آنها یک استراتژی دربیاوری.
اول ایده، بعد قانون، بعد ابزار.
3. بازار و نماد معاملاتی را درست انتخاب کنید
یک موضوع مهم دیگر که خیلی وقتها نادیده گرفته میشه، انتخاب نماد است.
اینکه یک استراتژی روی EURUSD نتیجه خوبی داشته باشد، به این معنی نیست که دقیقاً همان استراتژی روی GBPJPY هم همان رفتار را نشان میدهد.
هر نماد ویژگیهای خودش را دارد.
مثلاً:
- Spread
- Volatility
- Liquidity
- Trading Sessions
- Average True Range
- رفتار قیمت هنگام اخبار
- سرعت حرکت قیمت
- میزان Slippage
- ساختار حرکتی نماد
- و حتی شرایط نقدینگی و رفتار بازیگران بزرگ بازار
به همین دلیل قبل از اینکه برویم سراغ بهینهسازی، باید یک سؤال مشخص داشته باشیم:
آیا این استراتژی برای یک نماد خاص ساخته شده؟
یا:
قرار است روی یک گروه از نمادها کار کند؟
این دو رویکرد کاملاً با هم فرق دارند.
اگر استراتژی فقط برای EURUSD ساخته شده، نباید صرفاً به خاطر اینکه روی چند نماد دیگر هم جواب خوبی نگرفته، سریع شروع کنیم به تغییر دادن قوانین.
از طرف دیگر، اگر هدفمان ساخت یک استراتژی عمومی برای چند نماد است، باید از ابتدا آن را روی همان گروه از نمادها تست کنیم.
این تصمیم باید قبل از بهینهسازی مشخص شده باشد.
4. تایمفریم را هوشمندانه انتخاب کنید
یک تصور اشتباه دیگر این است که:
«هرچه تایمفریم پایینتر باشد، فرصتهای بیشتری داریم؛ پس احتمالاً استراتژی هم بهتر است.»
اما همیشه اینطور نیست.
در تایمفریمهای پایین معمولاً مشکلات بیشتری خودش را نشان میدهد:
- Spread نسبت به حرکت قیمت اهمیت بیشتری پیدا میکند.
- Slippage تأثیر بیشتری دارد.
- نویز بازار بیشتر میشه.
- تعداد معاملات بالا میرود.
- کیفیت داده اهمیت بیشتری پیدا میکند.
- اختلاف قیمت بین بروکرها بیشتر خودش را نشان میدهد.
در تایمفریمهای بالاتر معمولاً تعداد معاملات کمتر است، اما هر حرکت میتواند دامنه بزرگتری داشته باشد.
بنابراین تایمفریم را نباید فقط بر اساس این انتخاب کنیم که:
«کدام تایمفریم سیگنال بیشتری میدهد؟»
باید ببینیم ماهیت استراتژی ما با کدام تایمفریم سازگارتر است.
اما یک موضوع مهمتر هم وجود دارد که شاید در کتابهای معاملاتی کمتر درباره آن صحبت شود:
تایمفریم فقط به استراتژی مربوط نیست؛ به خود تریدر هم مربوط است.
فرض کنید یک استراتژی در تایمفریم M5 عملکرد خوبی دارد.
آیا این یعنی حتماً باید با آن کار کنیم؟
نه.
اگر قرار باشد برای اجرای آن استراتژی، از صبح تا شب چشممان به چارت باشد و تمام حواسمان به این باشد که «الان وارد بشم یا نه؟»، باید ببینیم آیا این سبک زندگی اصلاً مناسب ما هست یا نه.
خیلیها اصلاً چرا وارد مسیر ترید میشوند؟
یکی از دلایلش این است که بتوانند در کنار درآمد دلاری، وقت و آزادی بیشتری برای زندگی داشته باشند.
حالا اگر قرار باشد به خاطر استراتژی، تمام روزمان را پای نمودار بگذرانیم، عملاً ممکن است به چیزی برسیم که از ابتدا دنبالش نبودیم.
البته اگر واقعاً استراتژی شما در تایمفریم پایین بهترین عملکرد را دارد، قرار نیست صرفاً به خاطر این موضوع آن را کنار بگذارید.
راهحل این است که برای اجرای آن یک روتین مشخص بسازید.
مثلاً دقیقاً مشخص باشد:
- چه ساعتی بازار را بررسی میکنید؟
- چه ساعتی شروع به معامله میکنید؟
- چه شرایطی اجازه ورود میدهد؟
- چه زمانی دیگر معامله نمیکنید؟
- چه ساعتی کارتان با بازار تمام میشه؟
این موضوع شاید در نگاه اول خیلی ساده به نظر برسد، اما در بلندمدت اهمیت زیادی دارد.
چون اگر هیچ ساعت مشخصی نداشته باشید، خیلی راحت ممکن است ترید تمام روزتان را درگیر خودش کند.
صبح چارت را باز میکنید...
یک معامله میبینید.
بعد منتظر معامله بعدی میشوید.
بازار آرام میشه، ولی شما همچنان منتظرید.
یک حرکت کوچک میبینید و دوباره شروع به تحلیل میکنید.
و آخر شب میبینید چندین ساعت گذشته و تقریباً تمام انرژی ذهنیتان صرف بازار شده است.
این سبک ادامهدار، برای خیلی از افراد میتواند باعث خستگی ذهنی، کاهش تمرکز و فرسودگی شود و حتی روی بخشهای دیگر زندگی و کارشان هم اثر بگذارد.
ترید قرار نیست تمام زندگی شما باشد.
قرار است یکی از بخشهای زندگی شما باشد.
پس وقتی استراتژی میسازید، فقط به این فکر نکنید که:
«آیا این سیستم سودده است؟»
یک سؤال مهم دیگر هم بپرسید:
«آیا من میتوانم این سیستم را با آرامش و به شکل پایدار اجرا کنم؟»
اگر جواب این سؤال منفی باشد، حتی یک استراتژی خوب هم ممکن است در عمل برای شما مناسب نباشد.
پس از همان مرحله طراحی، علاوه بر بازار و تایمفریم، زمان و سبک زندگی خودتان را هم وارد معادله کنید.
5. حالا وقت تست کردن استراتژی است
خب، تا اینجا ایده و قوانین اولیه استراتژیمان را مشخص کردهایم. حالا باید ببینیم چیزی که روی کاغذ ساختهایم، وقتی وارد بازار و دادههای گذشته میشه، واقعاً چه عملکردی دارد.
اینجا یک نکته مهم وجود دارد:
این مرحله، مرحله ساخت و تست اولیه استراتژی است، نه مرحله بهینهسازی نهایی آن.
من در تست اول ترجیح میدهم تا جای ممکن شرایط را ساده نگه دارم. برای همین در این مرحله Risk/Reward را 1:1 در نظر میگیرم.
یعنی اگر مثلاً در هر معامله 10 دلار ریسک میکنیم، هدف اولیه ما هم 10 دلار سود است.
دلیل این انتخاب این است که فعلاً میخوام یک سؤال ساده را جواب بدهم:
آیا خود ایده معاملاتی من، بدون اینکه با تنظیمات مختلف دستکاریاش کنم، میتواند بیشتر از نصف معاملاتش را با سود ببندد؟
چرا در این مرحله روی Win Rate تمرکز میکنیم؟
چون وقتی Risk/Reward یک به یک باشد، نقطه سربهسر استراتژی تقریباً 50٪ Win Rate است.
مثلاً اگر 100 معامله داشته باشیم:
- 55 معامله برنده
- 45 معامله بازنده
- نتیجه = +10R
البته در بازار واقعی هزینههای جانبی معامله را هم باید در نظر بگیریم.
پس هدف من در این مرحله این نیست که مثلاً از همان ابتدا به دنبال Win Rate 70٪ یا 80٪ باشم. هدف این است که ببینم آیا ایده اصلی استراتژی اصلاً Edge دارد یا نه.
تست اولیه را با چند معامله قضاوت نکنید
فرض کنید در 10 معامله اول، 7 معامله برنده شدهاند.
آیا یعنی استراتژی ما فوقالعاده است؟
نه.
همانطور که اگر در 10 معامله اول فقط 3 معامله برنده شدهاند، نمیتونیم فوراً بگوییم ایده کاملاً اشتباه است.
به همین دلیل باید تعداد معاملات بیشتری داشته باشیم تا یک تصویر واقعیتر از عملکرد استراتژی به دست بیاوریم.
برای تست اولیه میتونیم مثلاً 50 معامله را به عنوان اولین نمونه بررسی در نظر بگیریم.
بعد از این 50 معامله، فقط به موجودی حساب نگاه نمیکنیم. گزارش را باز میکنیم و بررسی میکنیم:
- Win Rate چقدر بوده؟
- چند معامله برنده و چند معامله بازنده داشتهایم؟
- بیشترین Losing Streak چند معامله بوده؟
- Maximum Drawdown چقدر بوده؟
- میانگین نتیجه معاملات چطور بوده؟
- معاملات در چه شرایطی بهتر یا بدتر عمل کردهاند؟
- هزینههای معاملاتی چه تأثیری روی نتیجه گذاشتهاند؟
اگر Win Rate بالای 50٪ بود چه؟
اگه تو این تست اولیه، نسبت سود به ضررمون ۱ به ۱ باشه و باز هم در کنار هزینههای جانبی بیشتر از ۵۰٪ معاملهها برنده باشن،
اما هنوز به معنی این نیست که استراتژی آماده استفاده با سرمایه واقعی است.
اینجا تازه مرحله بعدی شروع میشه:
بهینهسازی و اعتبارسنجی.
اگر Win Rate پایینتر از 50٪ بود چه؟
اگر مثلاً بعد از 50 معامله، Win Rate ما 44٪ شد، من در این مرحله فوراً سراغ تغییر دهها اندیکاتور و فیلتر نمیروم.
اول باید بفهمیم مشکل از کجاست.
ممکن است:
- نقطه ورود مناسب نباشد.
- Stop Loss بیش از حد نزدیک یا دور باشد.
- نماد معاملاتی مناسبی برای این ایده انتخاب نکرده باشیم.
- تایمفریم مناسب نباشد.
- شرایط بازار برای این استراتژی مناسب نباشد.
- یا اصلاً فرضیه اولیه ما Edge کافی نداشته باشد.
اینجا میتونیم یک بخش مهم از استراتژی را تغییر بدهیم و دوباره تست کنیم.
مثلاً فقط Entry را تغییر بدهیم.
یا فقط Stop Loss را بررسی کنیم.
یا فقط یک نماد دیگر را آزمایش کنیم.
بعد دوباره تست را از ابتدا انجام میدهیم.
دلیل اینکه تأکید میکنم هر بار یک تغییر مهم را بررسی کنیم این است که اگر همزمان Entry، Stop Loss، اندیکاتورها، تایمفریم و Symbol را تغییر بدهیم، دیگر نمیفهمیم کدام تغییر باعث بهتر شدن نتیجه شده است.
هدف این مرحله پیدا کردن «بهترین عدد» نیست
این قسمت خیلی مهم است.
در ابتدای طراحی استراتژی، من نمیخوام با دستکاری پارامترها به یک بکتست زیبا برسم.
مثلاً نمیخوام آنقدر تنظیمات را تغییر بدهم تا در نهایت به این نتیجه برسم:
«عالی شد! Win Rate شده 68٪ و Drawdown هم فقط 5٪ است.»
چون ممکن است این نتیجه فقط مخصوص همان دادههای گذشته باشد.
هدف تست اولیه چیز سادهتری است:
آیا ایدهای که در ذهن من بوده، وقتی روی دادههای واقعی بازار آزمایش میشه، واقعاً نشانهای از Edge دارد یا نه؟
اگر جواب مثبت بود، میتونیم وارد مرحله بعد شویم.
اگر جواب منفی بود، باید برگردیم و فرضیه را بررسی کنیم.
یک نکته مهم درباره Win Rate
در این مقاله وقتی درباره تمرکز روی Win Rate صحبت میکنم، منظورم این نیست که Win Rate همیشه مهمترین معیار یک استراتژی است.
این موضوع به Risk/Reward بستگی دارد.
اما اگر بعداً R:R را تغییر دهیم، دیگر نمیتونیم همان عدد 50٪ را معیار قرار دهیم.
برای مثال، در یک سیستم با R:R بالاتر، ممکن است Win Rate کمتر از 50٪ باشد ولی سیستم همچنان حاشیه سود مثبت داشته باشد.
اما اینجا ما عمداً در مرحله اول R:R را 1:1 گذاشتهایم تا بررسی استراتژی سادهتر باشد.
پس در این بخش از مقاله، تمرکز روی Win Rate کاملاً آگاهانه است.
ما میخوایم ابتدا ببینیم خود ایده ورود و منطق معاملاتی ما چقدر توانایی ایجاد معاملات برنده دارد.
بعد از اینکه پایه استراتژی مشخص شد، میتونیم سراغ تغییرات دیگر مثل Risk/Reward، مدیریت معامله، Exit، فیلترها و سایر بخشها برویم.
هزینههای واقعی را فراموش نکنید
یک بکتست خوب نباید فقط قیمت ورود و خروج را ببیند.
در بازار واقعی هزینه داریم:
- Spread
- Commission
- Swap
- Slippage
- تأخیر در اجرای سفارش
- تفاوت Bid و Ask
این موضوع مخصوصاً در استراتژیهای کوتاهمدت و تایمفریمهای پایین اهمیت بیشتری پیدا میکند.
فقط یک دوره زمانی را تست نکنید
یک اشتباه رایج این است که یک سال خاص را انتخاب کنیم، استراتژی را روی آن تست کنیم و چون نتیجه خوب شده، فکر کنیم استراتژی ساخته شده است.
بازار همیشه یک رفتار ندارد.
گاهی:
- روندهای قدرتمند داریم.
- بازار وارد Range میشه.
- Volatility زیاد میشه.
- بازار آرام میشه.
- اخبار شدید منتشر میشه.
- Spread افزایش پیدا میکند.
- رفتار قیمت کاملاً متفاوت میشه.
ممکن است یک استراتژی در یک دوره عالی عمل کند و در دوره دیگری ضعیف باشد.
هدف ما پیدا کردن یک سیستم جادویی نیست؛ میخوایم بفهمیم استراتژی در چه شرایطی کار میکند و در چه شرایطی ضعیف میشه.
بعد از تست اولیه چیکار کنیم؟
وقتی تست اولیه انجام شد، تازه میرسیم به مراحل جدیتر:
- بهینهسازی نقطه ورود
- بهینهسازی حد سود و ضرر
- و آخرش فوروارد تست در حساب دمو
تو این مرحلهها دیگه فقط به Win Rate نگاه نمیکنیم.
چیزهای دیگهای هم باید بررسی بشن، مثل:
- Profit Factor (نسبت سود به ضرر کل)
- حداکثر افت سرمایه (Maximum Drawdown)
- میانگین سود
- میانگین ضرر
- تعداد باختهای پشتسرهم
- تعداد معاملات
- هزینههای معاملاتی
- پایداری نتایج
- عملکرد تو شرایط مختلف بازار
یک قانون ساده برای خودمان داشته باشیم
در این مرحله من همیشه سعی میکنم یک اصل را رعایت کنم:
اول استراتژی را بساز، بعد تست کن، بعد تحلیل کن و در نهایت بهینهسازی کن.
نه اینکه:
اول بکتست را اجرا کن و بعد آنقدر تنظیمات را تغییر بده تا نتیجهای که میخواهی به دست بیاید.
این دو روش از بیرون شاید شبیه هم باشند، اما نتیجهشان میتواند کاملاً متفاوت باشد.
ما در مرحله اول فقط میخوایم بفهمیم:
آیا ایدهای که در ذهنمان ساختهایم، میتواند بیشتر از 50٪ معاملات موفق داشته باشد؟
اگر جواب مثبت بود، ارزش داره ادامه بدیم.
اگر جواب منفی بود، برمیگردیم، فرضیه رو بررسی میکنیم و تغییرات لازم رو انجام میدیم.
و این دقیقاً همان جایی است که طراحی واقعی یک استراتژی شروع میشه.