پاسخ به: آموزش و پیاده سازی اکسپرت

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

#58342
Avatarfx
مشارکت کننده

چگونگی بهینه سازی (Optimization) یک اکسپرت

ابتدا اکسپرت خود را در پوشه Experts واقع در پوشه Metatrader/MQL4 کپی نمایید.
سپس وارد متاتریدر شده و از منوی Viwe گزینه Strategy Tester را انتخاب نمایید و یا دکمه های CTR+R را به روی کیبورد فشار دهید تا پنل Strategy Tester ظاهر شود.

در قسمت Expert Advisor در پنل باز شده اکسپرت دلخواه را پیدا کرده و انتخاب نمایید. همچنین در بخش Symbol جفت ارز مورد نظر را انتخاب نمایید. مثلا EURUSD
برای انجام یک Optimization مطمئن تر ، بهتر است تا سابقه دیتای مربوط به آن جفت ارز را کامل داشته باشید. مثلا از سال ۲۰۱۱ تا امروز.
در قسمت Model گزینه اول یعنی Every Tick را انتخاب نمایید.

اگر قصد دارید تست شما در یک بازه زمانی خاص (مثلا ۶ ماه گذشته ) انجام شود ابتدا تیک قسمت Use Date را زده و تاریخ شروع و پایان تست را انتخاب نمایید . بهتر است به ترتیب تاریخ ها را یک روز بعد از تاریخ شروع آرشیو M1 و یک روز قبل از تاریخ اتمام M1 تعیین کنید. اینکار کمک می کند تا عمل بک تست و بهینه سازی با کیفیت ۹۰% صورت پذیرد.
اما اگر قصد دارید تست شما تنها تا زمانی که دیتای آن جفت ارز را دارید انجام شود ، تیک گزینه ی Use Date را خالی بگذارید.

در قسمت Period می توانید تایم کاری مد نظرتان را جهت تست انتخاب نمایید. (مثلا ۱ ساعته یا h1 )
با انتخاب گزینه Visual Mode شما می توانید عملکرد اکسپرت مورد نظرتان را به صورت زنده به روی چارت گذشته مشاهده نمایید. اگر این گزینه مارکدار باشد ، پس از شروع تست چارتی جدید برایتان باز شده و معاملات اکسپرت به صورت زنده نمایش داده خواهد شد.
اگر گزینه Visual Mode را خالی بگذارید ، پس از اتمام تست ، نتیجه آن نمایش داده میشود.
در قسمت Expert Properties می توانید تنظیمات مربوطه به میزان سرمایه ، انتخاب نوع معاملات (خرید ، فروش و یا خرید و فروش) را انتخاب نمایید.
در تب Inputsتنظیمات مربوط به استراتژی آن اکسپرت را مشاهده می نمایید و می توانید مطابق با نظر خود آن را جهت تست تغییر دهید.
جهت شروع عملیات تست گزینه Start را فشار دهید. می توانید حین انجام تست از طریق تب Results معاملات انجام شده را مشاهده نمایید. همچنین در تب Journal نیز می توانید مراحل انجام تست را با جزئیات مشاهده نمایید. همچنین اگر خطایی در تست صورت بگیرد نیز از همین طریق قابل مشاهده است.
پس از اتمام عملیات تست اکسپرت می توانید در بخش Graph میزان سودآوری و یا ضرردهی اکسپرت مورد نظر را به صورت نمودار مشاهده نمایید و در تب Report گزارش بیشتری از چگونگی معاملات ، ضررهای پشت هم ، سودهای پشت سر هم ، میزان سود آوری و … را دریافت نمایید.

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

پارامترهای اولیه یا اصلی :
این پارامترها در واقع قوانین اولیه آن استراتژی را مشخص می کنند.مثلا اگر استراتژی یک اکسپرت ورود با تقاطع دو میانگین متحرک باشد، شما حتما چند ورودی اولیه برای دوره و نوع میانگین ها خواهید داشت.
پارامتر های مدیرت سرمایه :
هر اکسپرت معمولا پارامترهایی را برای تعیین حجم معاملات در خود دارد.در این ورودی ها شما می توانید حجم معاملات را به طور ثابت (مثلا همیشه ۰.۱ لات) و یا به صورت درصد (مثلا در هر پوزیشن ۵ در صد از کل سرمایه ) می توانید تعیین نمایید.
در نتیجه برای تست یک اکسپرت پارامترهای و متغیرهای زیادی وجود دارند که می بایست تنظیم شوند و این عملی زمانگیر است.

در قسمت Strategy Tester در پلتفرم متاتریدر بخشی وجود دارد که شما می توانید رنجی از اعداد برای این ورودی ها تعریف نمایید و سپس عمل تست را برای تمام آنها انجام دهید. در واقع به جای اینکه شما در هر بار تست اعداد را تغییر دهید(تعداد تست = تعداد ورودی ها به توان دو ) بخش اپتیمایز اینکار را برایتان انجام خواهد داد.
برای استفاده از این قابلیت گزینه Optimization را تیک بزنید. سپس دکمه Expert Properties را کلیک کنید تا پنجره خصوصیات اکسپرت ظاهر شود.
این پنجره دارای سه TAB می باشد.به جز تب دوم ( Input) دو تب دیگر برای همه اکسپرتها یکسان است.

در تب Testing و در قسمت Intial Deposit میزان سرمایه اولیه را مشخص می کنید. در قسمت Positions تعیین می کنید که پوزیشن های Buy فقط منظور شوند یا Sell و یا هر دو .
در قسمت Optimized Parameter بهینه سازی را بر اساس گزینه انتخاب شده انجام می دهد. مثلا چنانچه Balance را انتخاب کرده باشید، عمل بهنه سازی برای بدست آوردن بیشترین بالانس نهایی صورت خواهد پذیرفت.
تیک زدن گزینه Genetice Algorithm باعث می شود تا از میان میلیونها (و یا حتی میلیاردها) حالت برای بهینه سازی ، طبق الگوریم های ژنتیک و هوش مصنوعی ، این حالات به حدود هزاران ترکیب تقلیل یابد.
با انتخاب تب Inputs سراغ پارامترهای اکسپرت میرویم.

پارامترهایی را که می خواستیم بهینه کنیم را تیک زده و به صورت زیر مقدار دهی می کنیم.مثلا پارامتر TP که مربوط به تیک پرافیت و یا حد سود است را در نظر بگیرید. در ستون Start حداقل مقدار مدنظر (مثلا ۱۰) و در ستون Stop (مثلا ۱۰۰۰) حداکثر مقدار مد نظر را وارد می کنیم. در ستون Step نیز میزان گام افزایشی را مشخص می کنیم.(مثلا ۱۰)
به طور خلاصه هنگام بهینه سازی ۱۰=TP مورد نظر را ابتدا برای کل دیتای موجود بررسی می کند.در گام بعدی TP=20 را بررسی می کند، سپس TP=30 ، تا… TP=1000 .(برای اینکه ببینیم در مدت زمان تعیین شده چه حد سودی مطمئن تر از بقیه عمل کرده است)
حال سراغ تب سوم یعنی Optimization میرویم.در این قسمت تعیین میکنید که بهینه سازی طبق چه شرایطی خروجی دهد :

حداقل بالانس : Balance Minimum
حداکثر سود : Profit Maximum
حداقل سرمایه وارد شده در معامله(درصد) : % Minimal Margin Level
حداقل میزان احتمال از بین رفتن حساب (درصد) Maximal Drowdown
میزان ضرهای پشت سر هم : Consecutive Loss
تعداد معاملات پشت سر هم بسته شده با ضرر : Consecutive Loss Trades
میزان سودهای پشت سر هم : Consecutive Win
تعداد معاملات پشت سر هم بسته شده با سود : Consecutive Win Trades

فرض کنید میخواهیم از میان نتایج عملیات بهینه سازی ، تنها آنهایی نشان داده شوند که میزان Maximal Drowdown آنها بالای ۶۰% نباشد، لذا گزینه مربوطه را تیک زده و مقدار مدنظر (۶۰) را وارد میکنیم. پس از تایپ عدد ۶۰ دکمه Enter را فشار دهید.
در نهایت دکمه OK را کلیک کرده تا همزمان با اعمال تنظیمات پنجره بسته شود.
در پنل Strategy Tester روی دکمه Start کلیک کنید تا عملیات بهینه سازی (Optimization) شروع شود.
در تب Optimization Results نتایج بهینه سازی طبق شرایط تعیین شده در مقابل نمایش داده میشود.
در تب Optimization Graph میتوانید نمودار سودآوری نتایج بهینه شده را مشاهده کنید.
در انتها نتایج مشخص شده است. توجه داشته باشید که عمل بهینه سازی ممکن است تا چندین روز طول بکشد.
با کلیک به روی ستون Profit در تب Optimization Results از میان نتایج بهینه شده ، نتایج حاوی بالاترین بالانس را گلچین می کنیم.
با دقت در مقادیر پارامترهای ورودی(Inputs) میتوان فهمید برای اکسپرت مد نظر ، بهترین مقدارها در یک بازه زمانی مشخص کدام است.
نکته : در تب Optimization Graph با راست کلیک کردن روی نمودار و انتخاب گزینه ۲D Surface می توان نمودار را در سطح دو بعدی مشاهده کرد.

راهنمای نصب اندیکاتورها اکسپرت ها اسکریپت ها و تمپلیت ها :
برای نصب اندیکاتور در متاتریدر ابتدا از سر برگ متاتریدر روی File کلیک کنید .
سپس از منوی باز شده منوی open data folder را انتخاب کنید .
در صفحه باز شده برای نصب تمپلیت پوشه مربوطه رو باز کنید
و تمپلیت خودتون رو که قبلا کپی کردید داخلش الصاق کنید .
برای نصب اندیکاتور و یا اکسپرت و یا اسکریپت پوشه MQL4 را باز کنید
و سپس اگر اندیکاتوری رو میخواین نصب کنید در پوشه اندیکاتور
و اگر اکسپرت هست در پوشه اکسپرت و اگر اسکریپت هست در پوشه اسکریپت کپی و پیس کنید .
حالا متا تریدر خودتون رو ببندید و مجدد باز کنید .
در منوی مربوطه میبینید که اندیکاتور , اکسپرت یا اسکریپت مورد نظر اضافه شده کافی هست چارت مورد نظر خودتون رو انتخاب کنید
و با کلیک روی اندیکاتور یا اکسپرت و یا اسکریپتی که دوست دارید اون رو فراخوانی کنید .
برای تمپلیت هم اگه روی چارت خودتون راست کلیک کنید و در بخش تمپلیت ها مشاهده کنید
تمپلیتی که اضافه کرده بودید الان قرار داره و میتونید فراخوانش کنید .

X