بازارهای مالی دنیا پتانسیل عظیم سود و زیان را به همراه دارند. همیشه پتانسیل سود در بازار وجود دارد چرا که شما می توانید معاملات را در هر دو جهت انجام دهید. موضع گیری شما می تواند صعودی یا نزولی باشد، توانایی کسب درآمد توسط معامله گر همیشه وجود دارد – همچنین توانایی ضرر.

بیشتر اوقات، احساسات، تله های روانشناختی و انضباط ذهنی مانع از سود می شوند و این دلیل اصلی 95٪ معامله گران تازه کار است به طوری که اکثر سرمایه اولیه خود را در بازار از دست می دهند.

استفاده از یک ربات معاملاتی Expert Advisor در Meta Trader که به زبان MQL4 نوشته شده است یکی از راه کارهای دسترسی به بازار از طریق کد است، این ربات احساسات را کنار می گذارد و فقط با اعداد و منطق برای شما کار می کند.

خارج کردن احساسات از معادله یک معیار است، اما این بدان معنا نیست که ربات ها هرگز ضرر نمی کنند. در واقع، حتی بانک های بزرگ سرمایه گذاری نیز مجبور شده اند ربات های معاملاتی خود را قبل از اینکه ضرر بیشتری ایجاد کنند را از برق بکشند. در سال 2013، گلدمن ساکس در الگوریتم های تجاری خود خطاهای جدی داشت که هزینه آن 100 میلیون دلار بود.

در نظر داشته باشید که ممکن است برخی اوقات تمام سرمایه خود را در حساب کارگزاری خود از طریق استفاده از بات از دست دهید.

مسئولیت اصلی همیشه با شما است، حتی اگر کد برای شما معامله کند. در حالی که ضرر امکان پذیر است، شما همچنین می توانید سود خود را چند برابر کرده و باعث رشد چشمگیر پول خود در زمان استراحتتان شوید.

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

نصب MQL4

پس از نصب و اجرای MT4، به یک حساب کاربری که از MT4 پشتیبانی می کند نیاز دارید. برای این منظور با کارگزار خود تماس بگیرید.

اکثر کارگزاران یک حساب آزمایشی یا دمو نیز ارائه می دهند و توصیه می شود که همیشه از حساب آزمایشی برای نوشتن و آزمایش ربات معاملاتی خود استفاده کنید.

زمانی که MT4 را روی کامپیوتر خود نصب کردید، می توانیم به ایجاد ربات معاملات الگوریتمی Expert Advisor ادامه دهیم.

چگونه یک ربات بنویسیم

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

پردازش داده های بازار می تواند در میان انبوهی از زبان های برنامه نویسی حاصل شود، و احتمالاً در سرعتی بالاتر از آنچه استراتژی معکوس یا بازگشتی MT4 MQL4 در اختیار ما می گذارد (آزمایشات معکوس روشی به منظور آزمایش ربات است). به دلایل سهولت عملکرد و پشتیبانی عمومی از نرم افزارهای مالی، بسیاری توصیه می کنند که از MQL4 (MetaQuotes Language 4)، زبان مادری MetaTrader 4، برای نوشتن ربات معاملات الگوریتمی خود استفاده کنید.

MQL4 Syntax

MQL4 از نظر سینتکس به PHP، C، C ++ یا VBScript شبیه است. در ادامه  مثالی از تابعی آورده شده است که در هر تیک داده های بازار فراخوانی می شود:

01
02
03
04
05
06
07
08
09
10
void OnTick()
  {
       if(Bars<100 || IsTradeAllowed()==false)
          return;
       if(CalculateCurrentOrders(Symbol())==0){
          CheckForOpen();
       } else {
          CheckForClose();
       }
  }

در اینجا بررسی کردیم که آیا داده های بازار با بارهای کمتر از 100 بارگیری شده است یا خیر. همچنین MQL4 متغیرهای از پیش تعریف شده مانند میله ها را تنظیم می کند (که شامل تعداد میله های بارگذاری شده در نمودار است).

علاوه بر این ، ما با یا || شروط را بررسی می کنیم IsTradeAllowed ().یک تابع شرطی به منظور بررسی زمینه معامله است.

عناصر MQL4 مانند این متغیرهای از پیش تعریف شده و عملکردهای نمودار مانند Symbol () نوشتن استراتژی شما را تسهیل می کنند، و به همین دلیل است که کدگذاری ربات های تجارت الگوریتمی توسط MQL4 نسبت به زبانهای دیگر ترجیح داده می شود.

ویرایش کد MQL4 در MetaEditor

توصیه می شود از MetaEditor IDE داخلی که همراه با پلتفرم تجاری MT4 ارائه می شود استفاده کنید. برای ورود به ویرایشگر ، فقط روی یک اکسپرت موجود در پنجره پیمایشگر سمت راست کلیک راست کرده و از منو، گزینه modify را انتخاب کنید.

سپس MetaEditor MT4 باز می شود و شما می توانید یک فایل جدید ایجاد کنید. این روش برجسته سازی و اشکال زدایی را نیز به همراه دارد.

مهم: اگر در حال ویرایش در یک ویرایشگر خارجی هستید ، باید فایلهای mq4 خود را به اکسپرت ex4 با استفاده از MetaEditor کامپایل کنید. بنابراین آشنایی با MetaEditor یک امر ضروری است.

به منظور دانلود اسکریپت ربات (الگوریتم /کد) معاملات الگوریتمی کلیک کنید