بهینه سازی واک فوروارد

در این مطلب می خوانید(فهرست)

[restrict]

بهینه سازی واک فوروارد

بهینه سازی چیست؟

ایدۀ پشت بهینه سازی ساده است . در ابتدا باید یک سیستم معاملاتی داشته باشید مثل برخورد دو میانگین ​​متحرک ساده با هم . به این ترتیب که  اگر (EMA (10 از سمت پایین به (20)EMA برخورد کرد ، استراتژی وارد معاملۀ Long شود و برعکس اگر (EMA (10 از سمت بالا به (20)EMA برخورد کرد وارد معاملۀ Short شود .

تقریباً در هر سیستم معاملاتی پارامترهایی مثل دوره های اندیکاتور و ثابت هایی برای مقایسه و …  وجود دارد که بر عملکرد سیستم معاملاتی تأثیر می گذارند . بهینه سازی به معنای یافتن بهترین مقادیر برای این پارامترها مثل کسب بیشترین سود یا بهترین نسبت بازده به اُفت یا پارامتر های مورد نظر دیگر است .

به عنوان مثال ، آیا استفاده از قانون یا شرطی مانند برخورد (EMA (10 از سمت پایین به (20)EMA یا شرط برخورد (EMA (10 از سمت بالا به (20)EMA اصلا” ایدۀ خوبی است؟

بهینه سازی می تواند به شما کمک کند تا مقادیری که بهترین عملکرد بر روی داده های گذشتۀ بازار داشته اند را پیدا کنید .

بهینه سازی یا تحلیل واک فوروارد چیست؟

بهینه سازی واک فوروارد به طور کلی نوع خاصی از بکتست است که خودش از چندین بکتست کوچکتر در طول دوره های بهینه سازی تشکیل می شود . کل دورۀ “تست مجدد” به تعدادی از این دوره های بهینه سازی تقسیم می شوند و همیشه با کمک تست های “خارج نمونه” با پارامترهای بهینه شده انجام می شوند .

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

شیوۀ کار بهینه سازی واک فوروارد

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

تصویر 1

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

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

این کار تا دورۀ 5 که داده های تاریخی مورد استفاده در آزمون تمام می شوند ، ادامه می یابد .

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

وظیفۀ فراخوانی یک اسکریپت خارجی

بهینه سازی یا تجزیه و تحلیل واک فوروارد به شما چه می گوید؟

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

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

از طرف دیگر ، اگر استراتژی بهینه شده توسط آزمون واک فوروارد عملکرد بهتری نسبت به نسخۀ بهینه نشده در همان داده ها داشته باشد ، به شما نشان می دهد که :

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

مثال بهینه سازی واک فوروارد در اَلگویاب

انجام بهینه سازی واک فوروارد با کمک نرم افزار اَلگویاب کاری ساده است و ما در ادامه روند کامل این کار را به شما نشان می دهم .

استراتژی قابل بهینه سازی

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

مراحل کار :

  1. بارگذاری یک استراتژی جهت بهینه سازی
  2. تنظیم مقادیر بهینه سازی
  3. پیکربندی اجراهای واک فوروارد
  4. بررسی نتایج
  5. تفسیر نتایج
  6. تشریح اجزای پیشرفتۀ رتبۀ واک فوروارد

________________________________________

مرحله 1: بارگذاری یک استراتژی برای بهینه سازی

اول از همه ، شما باید به پنجرۀ “بهینه ساز” بروید و استراتژی مورد نظر خود را جهت بهینه سازی بارگذاری کنید.

بارگذاری یک استراتژی برای بهینه سازی

برای این مثال همان طور که گفته شد از استراتژی سادۀ EMA_Cross استفاده خواهیم کرد که وقتی EMA سریعتر از EMA کندتر عبور می کند وارد معاملۀ Long می شود و وقتی EMA کندتر از EMA سریعتر عبور می کند وارد معاملۀ Short می شود . پس از بارگیری ، استراتژی به عنوان استراتژی اصلی به بانک داده های نتایج بهینه سازی نیز اضافه می شود .

می توانید روی استراتژی اصلی دو بار کلیک کنید و سپس به نتایج -> کد منبع بروید تا قوانین آن را ببینید.

تصویر 3

با دقت کادر تعیین مقادیر پارامترها را علامت بزنید تا متغیرهای pLongEMA_1 ، pLongEMA_2 ، pShortEMA_1 ، pShortEMA_1 به عنوان پارامترهای اندیکاتور ذخیره شوند . کلا” در مرحلۀ بهینه سازی ما سعی خواهیم کرد که مقادیر بهینۀ این پارامترها را پیدا کنیم .

وظیفه آزمایش مجدد استراتژی ها

اما هنوز یک مشکل کوچک وجود دارد . می توانیم ببینیم که این استراتژی از پارامترهای مختلفی برای جهت Long و Short کردن استفاده می کند . اگر بخواهیم مقادیر مطلوب را به طور مستقل برای هر سمت Long و Short پیدا کنیم ، می توانیم از این روش استفاده کنیم ، اما برای مثال ما می خواهیم از پارامتری مشابه برای سمت Long و Short استفاده کنیم .

می توانیم این کار را در اَلگویاب از بخش ابزار -> گزینه ها -> پارامترهای استراتژی انجام دهیم .

تصویر 4

اگر اولین گزینه را علامت بزنید ، از پارامترهای یکسانی برای Long و Short استفاده می شود و قوانین آن ها یکسان هستند . برای ذخیرۀ تنظیمات و به روز کردن کد منبع ، دکمۀ تأیید را بفشارید .

تصویر 5

مرحله 2: تنظیم مقادیر بهینه سازی

برای تنظیم مقادیری که بهینه شوند ، باید به قسمت تنظیمات -> پارامترها بروید .

تصویر 6

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

برای هر پارامتری که می خواهید بهینه سازی کنید ، باید خط پارامتر را بررسی کنید و مقادیر Start ، Stop و Step را انتخاب کنید . بهینه ساز ، با انجام این مراحل ، مقادیر عددی مختلف را با توجه به میزان Start و Stop تولید می کند . مقدار عدد اصلی نیز قابل تنظیم است ، برای آزمایش مجدد ، استراتژی اصلی استفاده خواهد شد . می توانید از این نتایج می توان برای مقایسۀ عملکرد نتایج جدید با تنظیمات “اصلی” استفاده کنید .

مقدار تعداد تست ها نشان می دهد که چند آزمایش لازم است برای کل این ترکیبات انجام شود .

توجه!

ممکن است جدول پارامترهای استراتژی شما گاهی پارامترهای بیشتری هم داشته باشد ، مثلا” می تواند به شکل زیر باشد :

تصویر 7

این یکی دیگر از ویژگی های قدرتمند اَلگویاب است که به شما امکان می دهد نه تنها پارامترهای استراتژی ، بلکه سایر گزینه های معاملاتی مانند تعداد معاملات روزانه یا بازۀ زمانی انجام معاملات را نیز بهینه کنید . این تنظیمات به طور معمول مربوط به بخش “گزینه های استراتژی” هستند اما شما می توانید مقادیر آن ها را نیز بهینه کنید .

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

________________________________________

مرحله 3: پیکربندی واک فوروارد

همچنین باید تنظیمات واک فوروارد را مشخص کنیم . در این مثال ما از عدد 30٪ برای دورۀ “خارج نمونه” یا همان اجرا و از عدد 6 برای مشخص کردن تعداد مراحل بهینه سازی مجدد استفاده خواهیم کرد .

درصد “خارج نمونه”

درصد “خارج نمونه” بدان معنی است که چه مقدار از کل دوره برای اجرا باقی مانده است . اگر آن را روی 30٪ تنظیم کنیم ، به این معنی است که در هر دوره از 70٪ داده ها برای بهینه سازی و 30٪ برای انجام معاملات با استفاده از مقادیر بهینه شده استفاده می شود .

اَلگویاب چیست؟

اجرا های واک فوروارد

این بدان معنی است که چند بار بهینه سازی باید اجرا شود یا چند بار استراتژی را دوباره بهینه سازی می کنیم.

تصویر 8

همچنین می توان دوره های بهینه سازی “داخل نمونه” و اجرا های “خارج نمونه” را بر حسب روز دقیقا” تعیین کرد و این کار را می توان با تعیین عددی خاص برای تعداد روز ها انجام داد .

________________________________________

مرحله 4: بررسی نتایج

مسلما” بهینه سازی واک فوروارد بیش از زمان مورد نیاز برای انجام یک مرحلۀ ساده به زمان نیاز دارد زیرا به جای فقط یک مرحله ، در این جا 6 مرحلۀ بهینه سازی یا حتی بیشتر وجود دارد .

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

تصویر 9

هنگامی که بر روی نتیجه در بانک استراتژی ها دو بار کلیک می کنیم ، نتایج استراتژی باز می شوند.

تصویر 10

می توانیم ببینیم که این استراتژی با توجه به تنظیمات رتبۀ استحکام ، در آزمون واک فوروارد شکست خورده است.

رتبۀ استحکام به طور کامل قابل تنظیم است . ما می توانیم تمام شروطی را که می خواهیم ببینیم را در جدول تنظیمات جزئیات مربوط به رتبۀ استحکام (1) مشخص کنیم و محدودۀ مقادیر آن ها را نیز تنظیم کنیم .

مقدار اصلی محدودۀ مقادیر رتبۀ استحکام (2) به این معنی است که برای این که نتیجۀ آزمون واک فوروارد موفقیت آمیز تلقی شود ، باید چه امتیازی بیاورد .

در سمت راست این جدول می توان نتایج مربوط به هر بهینه سازی و اجرا در هر دوره را بررسی کرد :

تصویر 11

می بینید که از هر 6 اجرا فقط 2 مورد به سود رسیده است .

همچنین می توان نمودار نتایج معاملات را بررسی کرد :

تصویر 12

خط آبی نشان دهندۀ نتایج استراتژی است که مجددا” بهینه سازی شده است و این در حالی است که خط خاکستری نازک تر نشان دهندۀ استراتژی اصلی غیربهینه است .

________________________________________

تفسیر نتایج

چگونه باید این نتایج را تفسیر کنیم؟

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

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

اما اگر بیشتر این استراتژی را بهینه کنیم ، چه می شود؟ یا اگر از درصد “خارج نمونه”ی متفاوتی استفاده کنیم چگونه می توان فهمید که بهترین دوره برای بهینه سازی مجدد استراتژی کدام است ؟

اینجاست که استفاده از روش تست ماتریس واک فوروارد نیاز می شود و ما در ادامه آن را بررسی می کنیم .

نکته – همچنین موارد مربوط به تعریف مقادیر پیشرفته برای آزمون واک فوروارد جهت تعیین مقادیر مختلفی که می توانید در فیلترها استفاده کنید یا در بانک استراتژی ها ببینید را بررسی بفرمایید.[/restrict]

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

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