بهینه سازی ساده

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

[restrict]

بهینه سازی ساده

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

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

مثالی برای بهینه سازی

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

ابتدا باید به بخش “بهینه ساز” بروید و استراتژی مورد نظر خود را برای بهینه سازی بارگیری کنید .

تصویر 1

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

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

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

تصویر 2

مطمئن شوید که کادر تبدیل مقادیر به متغیر را تیک زده اید و  ببینید که آیا متغیرهای LongEMAPeriod ، LongEMAPeriod2 ، ShortEMAPeriod ، ShortEMAPeriod2 در هنگام ذخیره سازی پارامترهای اندیکاتور استفاده می شوند .

در پروسۀ بهینه سازی ما سعی خواهیم کرد که بهترین مقادیر را برای هر یک از این پارامترها پیدا کنیم .

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

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

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

تصویر 3

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

حذف کردن یک پرونده

تصویر 4

اکنون می توانیم بینیم که این استراتژی فقط شامل پارامترهایEMAPeriod  و EMAPeriod2 است که برای هر دو جهت استفاده می شوند.

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

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

پارامترها – خودکار

پس از انتخاب این گزینه ، همۀ پارامترها دارای محدوده مقداری هستند که به طور خودکار با استفاده از فرآیند توزیع تعریف شده توسط (٪) Value Distribution تولید می شوند . این مقدار تعیین می کند که مقدار هر پارامتر به چه میزان و با چه درصدی از افزایش در یک محدوده در نوسان است . گزینۀ “حداکثر گام” میزان درصد افزایش هر مقدار پارامتریک را تعیین می کند .

تصویر 5

پارامترها – دستی

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

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

تصویر 6

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

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

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

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

تصویر 7

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

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

توقف و شروع انجام وظایف

تصویر 8

آخرین چیزی که باید تنظیم کنیم داده هایی است که برای آزمایش استفاده می شوند . برای مثال می توانیم تایم فریم H1 را برای EURUSD در بخش “داده” انتخاب کنیم .

تصویر 9

مرحلۀ 3: اجرای بهینه سازی

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

تصویر 10

اکنون ما آماده اجرای بهینه سازی هستیم . بنابراین باید روی دکمۀ “شروع” کلیک کنیم .

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

تصویر 11

تصویر 12

می توانیم بانک داده ها را بر اساس “سود خالص” مرتب کنیم و بینیم که بهترین مقادیر ورودی از نظر کسب حداکثر سود ، EMAPeriod = 9 و EMAPeriod2 = 40 هستند .

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

تفسیر نتایج

اکنون پارامترهای ورودی را دریافت کرده ایم که برای نماد مشخص و تایم فریمی که ما تعیین کردیم ، بهینه شده اند .

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

نتایج - پیکربندی استراتژی

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

دو روش برای فرار از “همسان شدن منحنی نتایج” وجود دارد :

  • کسب اطمینان از این که استراتژی مستحکم و قوی است .
  • کسب اطمینان از این که بهینه سازی مجدد دوره ای برای این استراتژی مفید است .

بنابراین حالا سوال این است که آیا بهینه سازی مجدد دوره ای ، نتایج استراتژی را بهبود می بخشد؟

اگر پاسخ مثبت است ، چند بار باید آن را انجام دهیم ؟

اَلگویاب می تواند با استفاده از قابلیت های پیشرفتۀ دیگری مانند بهینه سازی واک فوروارد و ماتریس واک فوروارد به این سوالات پاسخ دهد.
[/restrict]

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

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