آموزشی

چگونه یک ربات معامله گر فارکس بسازیم ؟ ربات متاتریدر 4

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

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

 مبحث شماره 2 از بخش معاملات الگوریتمی مجموعه کامل آموزش فارکس

ربات معامله گر فارکس چیست ؟

ربات معامله گر فارکس یا Expert Advisor یک برنامه آنلاین است که به شما کمک میکند، استراتژی معاملاتی خود را خودکار کنید و بدون خطا و صرف وقت بصورت اتوماتیک و با کمک الگوریتم معامله انجام دهید. بنابراین شما میتوانید بدون استخدام یک برنامه نویس کل فرآیند خرید و فروش را بصورت اتوماتیک انجام دهید.

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

  • شروع معاملات
  • مدیریت موقعیت های باز شده
  • خروج از معاملات
  • تولید سیگنال برای معامله گر
  • کپی کردن معاملات در سایر پلتفرم های معاملاتی
  • معاملات به صورت خودکار و شبانه روزی

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

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

مرتبط: معاملات الگوریتمی چیست ؟ آموزش جامع خودکار کردن معاملات فارکس

مزایای استفاده از ربات معامله گر

امکان معامله بدون وقفه

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

احساسات را از معاملات حذف می کند

یکی از دلایل اصلی شکست معامله گران، معاملات هیجانی است. با این حال، یک ربات فارکس احساسات را از معادله معاملاتی کاهش می دهد یا حذف می کند و راهی مطمئن برای کسب درآمد به شما ارائه می دهد. یک ربات نه می تواند از انجام معامله بترسد و نه می تواند طمع داشته باشد.

خطاهای معاملاتی را کاهش می دهد

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

 چگونه یک ربات معامله گر فارکس بسازیم ؟

برای ساخت یک ربات معامله گر فارکس شما باید از پلتفرم متاتریدر 4 یا 5 برای معاملات استفاده نمایید. بنابراین بروکر شما حتما باید از یکی از این دو پلتفرم برای پردازش سفارشات استفاده نماید. سپس شما نیاز به MQL4,5 Wizard خواهید داشت تا بتوانید با استفاده از آن الگوریتم معاملاتی خود را آماده کنید. پس قدم به قدم با ما همراه باشید تا ساخت یک معامله گر فارکس را بیاموزید.

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

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

بخوانید و تماشا کنید: نحوه ورود به فارکس | راهنمای ثبت نام در فارکس

از MetaEditor Wizard داخل پلتفرم استفاده کنید

حالا بیاید با استفاده از این ابزار یک ربات معامله گر بر اساس این معیارها بسازیم

  • جفت ارز فارکس : EUR/USD
  • تایم فریم : 4 ساعته ( انتخابی)
  • اندیکاتورها : 2 میانگین متحرک ساده 21 و 90 دوره ای، MACD (12, 24, 9)

برای دسترسی به MQL4 Wizard ابتدا متاتریدر را باز کنید و در بخش Navigator برروی گزینه Expert Advisors راست کلیک کنید تا همانند تصویر زیر این گزینه ها نمایش داده شوند.

ساخت ربات معامله گر فارکس  Expert Advisors
Expert Advisors

در نتیجه، یک پنجره پاپ آپ برای شما ارائه می شود که در آن می توانید تمام ویژگی ها را برای ایجاد ربات فارکس خود تنظیم کنید. در واقع Wizard MQL5 یک کتابخانه ای از الگوریتم های معاملاتی را برای شروع کار به شما ارائه می دهد و بقیه کدها، قوانین معاملاتی و توابع اجرای معاملات باید جداگانه توسط خود شما اضافه شوند.

از Expert Advisor builder استفاده کنید

پس از انتخاب Create in MetaEditor یک پاپ آپ جدید باز میشود که باید در آنجا Expert Advisor(Generate) را انتخاب نمایید و سپس برری next کلیک کنید.

MQL5 wizard ربات فارکس
Expert Advisor(Generate)

این مرحله جالب ترین بخش فرآیند ساخت ربات معامله گر فارکس است. در ابتدا نامی برای ربات خود انتخاب نمایید. ما در اینجا نام ربات فارکس TJA را روی آن میگذاریم و نام نویسنده ربات هم Tejarat Afarin میگذاریم. شما میتوانید از نام انتخابی خودتان استفاده نمایید. سپس برروی Next کلیک میکنیم.

مراحل ساخت ربات معامله گر فارکس
مراحل ساخت ربات معامله گر فارکس

در اینجا، تنظیماتی را که این ربات قرار است تحت آن کار کند، اعلام می کنیم. پس از کلیک بر روی “Add”، سیگنال های از پیش تعیین شده را انتخاب می کنیم. هر مجموعه ای از سیگنال ها پارامترهای خود را دارد. برای مثال، برای اضافه کردن سیگنال‌های میانگین متحرک 21 دوره‌ای به ربات فارکس، باید دوره آن را (21)، تغییر یا Shift آن از شمع فعلی (0)، روش معدل‌گیری (ساده یا Simple)، قیمت را برای اعمال MA تنظیم کنیم. (قیمت بسته  یا Close Price)، و وزن سیگنال (1.0) را تنظیم نماییم.

 شما میتوانید از اندیکاتورهای موجود در متاتریدر 4 و 5 برای ربات خود استفاده نمایید. لیست اندیکاتورها در زیر آمده است. اطلاعات بیشتر را در بخش documentation سایت MQL5 بخوانید.

  • Accelerator Oscillator
  • Accumulation Distribution
  • ADX
  • Alligator
  • Average True Range
  • Awesome Oscillator
  • Bears Power
  • Bollinger Bands
  • Bulls Power
  • Commodity Channel Index
  • DeMarker
  • Directional Indicators
  • Envelopes
  • Force Index
  • MACD
  • Momentum
  • Money Flow Index
  • Moving Average
  • Moving Average of Oscillator
  • Moving Averages Crossover
  • On Balance Volume
  • RSI
  • RVI
  • Standard Deviation
  • Stochastic
  • Volumes
  • Williams’ Percent Range

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

مراحل ساخت ربات معامله گر فارکس 3
مراحل ساخت ربات معامله گر فارکس انتخاب اندیکاتورها

میانگین متحرک دوم الگوریتم معاملاتی خود را هم همانند مرحله قبل تنظیم میکنیم با این تفاوت که این بار به جای میانگین متحرک 21 دوره ای، از میانگین متحرک 90 دوره ای استفاده میکنیم.

مراحل ساخت ربات معامله گر فارکس
تنظیمات ربات فارکس

حالا که اندیکاتورهای میانگین متحرک را برای ربات فارکس خود تنظیم کردیم به سراغ اندیکاتور دوم که MACD بود میرویم. در مورد اندیکاتور مک دی از تنظمیات پیش فرض آن استفاده میکنیم.

مراحل ساخت ربات معامله گر فارکس مک دی
افزودن اندیکاتور مک دی

تنظیم حد ضرر متحرک Trailing Stop

پس از افزودن تمام پارامترها، ربات فارکس ما تقریباً آماده است. اقدام بعدی ما تنظیم ویژگی های حد ضرر متحرک یا Trailing Stop ربات معامله گر خواهد بود. به عبارت دیگر، ما باید تصمیم بگیریم که آیا از استاپ ضرر متحرک استفاده می کنیم یا خیر.

در اینجا باید توضیح دهیم که حد ضرر متحرک از حد ضرر معمولی دقیق تر عمل میکند. چهار گزینه وجود دارد که می توانید از بین آنها انتخاب کنید:

  • از حد ضرر متحرک استفاده نکنید. (trailing stop not used)
  • آن را بر اساس سطح توقف ثابت قرار دهید. (based on fixed Stop Level)
  • آن را بر اساس یک میانگین متحرک خاص تنظیم کنید. (based on MA)
  • از اندیکاتور Parabolic SAR استفاده کنید. (based on Parabolic SAR)

در مثال ما، ما از یک استاپ ضرر بر اساس اندیکاتور Parabolic SAR  استفاده می کنیم.

حد ضرر الگوریتم فارکس
تنظیم حد ضرر متحرک Trailing Stop

قوانین مدیریت سرمایه و ریسک

در مرحله آخر می توانید قوانین مدیریت پول را برای ربات معامله گر خود اعلام کنید. ما انتخاب می کنیم که با حجم معاملات ثابت 0.1 لات و ریسک 2 درصد معامله کنیم.

تنظمیات مدیریت ریسک
تنظمیات مدیریت ریسک

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

اجرای ربات معامله گر

اجرای ربات فارکس

پس از اینکه مراحل ساخت ربات معامله گر را به پایان رساندید با کلیک برروی گزینه Compile (همانند عکس زیر) میتوانید ربات را اجرا نمایید. اما قبل از اجرای ربات در معاملات واقعی باید ربات خود را تست کنید.

اجرای الگوریتم فارکس

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

تست ربات فارکس
تست ربات معامله گر

در قسمت تست شما میتوانید الگوریتم معاملاتی خود را در یک دوره مشخصی برای مثال 1 سال گذشته و در بازه زمانی مشخصی مانند 1 ساعته و روی یک جفت ارز خاص مانند EUR/USD تست کنید. این کار به شما اجازه میدهد که ببینید آیا ربات معامله گر شما در صورت اجرای در کل سال گذشته بازده خوبی داشته است یا خیر.

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

گزارش تست ربات معامله گر
گزارش تست ربات معامله گر Expert Advisors

در بخش بعدی توضیح خواهیم داد که چگونه یک ربات آمده را به پلتفرم متاتریدر اضافه نمایید.

افزودن ربات معامله گر آماده به متاتریدر

برای افزودن ربات معامله گر فارکس آماده یا خریداری شده به متاتریدر، باید برروی گزینه File در نوار بالایی کلیک کنید و از آنجا گزینه Open Data folder را انتخاب نمایید.

افزودن ربات به متاتریدر
افزودن ربات معامله گر به متاتریدر

سپس بسته به نسخه متاتریدر خود وارد پوشه MQL5 یا  MQL4 شوید و از آنجا وارد پوشه Expert شوید. فایل ربات خود را در آنجا کپی کنید و سپس پلتفرم را دوباره باز کنید تا این ربات معامله گر فارکس به بخش Experts اضافه شود.

افزودن فایل ربات به متاتریدر
افزودن فایل ربات معامله گر فارکس به متاتریدر

ربات متاتریدر 4

در ادامه یک ربات متاتریدر 4 برای استفاده و تست در اختیار شما قرار می دهیم.

//+——————————————————————+
//| Expert initialization function                                   |
//| توضیحات: این فانکشن هنگام فعال شدن ربات اجرا می‌شود
//+——————————————————————+
int OnInit()
  {
   Print(“ربات متاتریدر 4 شروع به کار کرد.”); // پیام اولیه در استارت ربات
   return(INIT_SUCCEEDED);
  }

//+——————————————————————+
//| Expert deinitialization function                                |
//| توضیحات: این فانکشن هنگام غیرفعال شدن ربات اجرا می‌شود
//+——————————————————————+
void OnDeinit(const int reason)
  {
   Print(“ربات متاتریدر 4 فعالیت را متوقف کرد.”); // پیام پایانی برای خروج ربات
  }

//+——————————————————————+
//| Expert tick function                                            |
//| توضیحات: این فانکشن به هر تیک قیمت واکنش نشان می‌دهد
//+——————————————————————+
void OnTick()
  {
   double lotSize = 0.1;       // حجم لات به ازای هر معامله
   double stopLoss = 50;       // استاپ لاس به درجه ای از پوینت
   double takeProfit = 100;    // تیک پروفیت به درجه ای از پوینت
   string symbol = _Symbol;    // سمبل کاربردی برای چارت فعلی

   double ask = SymbolInfoDouble(symbol, SYMBOL_ASK); // قیمت خرید
   double bid = SymbolInfoDouble(symbol, SYMBOL_BID); // قیمت فروش
   double point = SymbolInfoDouble(symbol, SYMBOL_POINT); // ارزش هر پوینت

   // بررسی اینکه معامله‌ای باز نیست
   if (PositionsTotal() == 0)
     {
      // فتح معامله Buy اگر شرایط فراهم باشد
      if (ConditionToBuy())
        {
         double sl = NormalizeDouble(ask – stopLoss * point, _Digits); // محاسبه استاپ لاس
         double tp = NormalizeDouble(ask + takeProfit * point, _Digits); // محاسبه تیک پروفیت
         if (!OrderSend(symbol, OP_BUY, lotSize, ask, 3, sl, tp, “Buy trade”, 0, 0, clrGreen))
            Print(“Error opening Buy order: “, GetLastError()); // خطا هنگام فتح معامله Buy
        }

      // فتح معامله Sell اگر شرایط فراهم باشد
      if (ConditionToSell())
        {
         double sl = NormalizeDouble(bid + stopLoss * point, _Digits); // محاسبه استاپ لاس
         double tp = NormalizeDouble(bid – takeProfit * point, _Digits); // محاسبه تیک پروفیت
         if (!OrderSend(symbol, OP_SELL, lotSize, bid, 3, sl, tp, “Sell trade”, 0, 0, clrRed))
            Print(“Error opening Sell order: “, GetLastError()); // خطا هنگام فتح معامله Sell
        }
     }
  }

//+——————————————————————+
//| Function to check Buy condition                                 |
//| توضیحات: بررسی شرایط برای معامله خرید
//+——————————————————————+
bool ConditionToBuy()
  {
   // نمونه شرط برای خرید: قیمت میانگین متحرک کوتاه بالاتر از میانگین متحرک بلند باشد
   double maFast = iMA(_Symbol, 0, 10, 0, MODE_EMA, PRICE_CLOSE, 0); // میانگین متحرک سریع
   double maSlow = iMA(_Symbol, 0, 30, 0, MODE_EMA, PRICE_CLOSE, 0); // میانگین متحرک کند
   return (maFast > maSlow); // اگر میانگین سریع بالاتر باشد، شرایط خرید فراهم است
  }

//+——————————————————————+
//| Function to check Sell condition                                |
//| توضیحات: بررسی شرایط برای معامله فروش
//+——————————————————————+
bool ConditionToSell()
  {
   // نمونه شرط برای فروش: قیمت میانگین متحرک کوتاه پایین‌تر از میانگین متحرک بلند باشد
   double maFast = iMA(_Symbol, 0, 10, 0, MODE_EMA, PRICE_CLOSE, 0); // میانگین متحرک سریع
   double maSlow = iMA(_Symbol, 0, 30, 0, MODE_EMA, PRICE_CLOSE, 0); // میانگین متحرک کند
   return (maFast < maSlow); // اگر میانگین سریع پایین‌تر باشد، شرایط فروش فراهم است
  }

//+——————————————————————+
//| توضیحات: این ربات برای مثال‌های آموزشی طراحی شده و برای استفاده در بازار واقعی باید با دقت بررسی شود
//+——————————————————————+
int OnInit()
{
Print(“ربات متاتریدر 4 شروع به کار کرد.”); // پیام اولیه در استارت ربات
return(INIT_SUCCEEDED);
}
//+——————————————————————+
//| Expert deinitialization function |
//| توضیحات: این فانکشن هنگام غیرفعال شدن ربات اجرا می‌شود
//+——————————————————————+
void OnDeinit(const int reason)
{
Print(“ربات متاتریدر 4 فعالیت را متوقف کرد.”); // پیام پایانی برای خروج ربات
}
//+——————————————————————+
//| Expert tick function |
//| توضیحات: این فانکشن به هر تیک قیمت واکنش نشان می‌دهد
//+——————————————————————+
void OnTick()
{
double lotSize = 0.1; // حجم لات به ازای هر معامله
double stopLoss = 50; // استاپ لاس به درجه ای از پوینت
double takeProfit = 100; // تیک پروفیت به درجه ای از پوینت
string symbol = _Symbol; // سمبل کاربردی برای چارت فعلی
double ask = SymbolInfoDouble(symbol, SYMBOL_ASK); // قیمت خرید
double bid = SymbolInfoDouble(symbol, SYMBOL_BID); // قیمت فروش
double point = SymbolInfoDouble(symbol, SYMBOL_POINT); // ارزش هر پوینت
// بررسی اینکه معامله‌ای باز نیست
if (PositionsTotal() == 0)
{
// اجرای معامله Buy اگر شرایط فراهم باشد
if (ConditionToBuy())
{
double sl = NormalizeDouble(ask – stopLoss * point, _Digits); // محاسبه استاپ لاس
double tp = NormalizeDouble(ask + takeProfit * point, _Digits); // محاسبه تیک پروفیت
if (!OrderSend(symbol, OP_BUY, lotSize, ask, 3, sl, tp, “Buy trade”, 0, 0, clrGreen))
Print(“Error opening Buy order: “, GetLastError()); // خطا هنگام اجرای معامله Buy
}
// اجرای معامله Sell اگر شرایط فراهم باشد
if (ConditionToSell()) { double sl = NormalizeDouble(bid + stopLoss * point, _Digits); // محاسبه استاپ لاس double tp = NormalizeDouble(bid – takeProfit * point, _Digits); // محاسبه تیک پروفیت
if (!OrderSend(symbol, OP_SELL, lotSize, bid, 3, sl, tp, “Sell trade”, 0, 0, clrRed)) Print(“Error opening Sell order: “, GetLastError()); // خطا هنگام اجرای معامله Sell } }
}
//+——————————————————————+
//| Function to check Buy condition |
//| توضیحات: بررسی شرایط برای معامله خرید
//+——————————————————————+
bool ConditionToBuy()
{
// نمونه شرط برای خرید: قیمت میانگین متحرک کوتاه بالاتر از میانگین متحرک بلند باشد
double maFast = iMA(_Symbol, 0, 10, 0, MODE_EMA, PRICE_CLOSE, 0); // میانگین متحرک سریع
double maSlow = iMA(_Symbol, 0, 30, 0, MODE_EMA, PRICE_CLOSE, 0); // میانگین متحرک کند
return (maFast > maSlow); // اگر میانگین سریع بالاتر باشد، شرایط خرید فراهم است
}
//+——————————————————————+
//| Function to check Sell condition |
//| توضیحات: بررسی شرایط برای معامله فروش
//+——————————————————————+
bool ConditionToSell()
{
// نمونه شرط برای فروش: قیمت میانگین متحرک کوتاه پایین‌تر از میانگین متحرک بلند باشد
double maFast = iMA(_Symbol, 0, 10, 0, MODE_EMA, PRICE_CLOSE, 0); // میانگین متحرک سریع
double maSlow = iMA(_Symbol, 0, 30, 0, MODE_EMA, PRICE_CLOSE, 0); // میانگین متحرک کند
return (maFast < maSlow); // اگر میانگین سریع پایین‌تر باشد، شرایط فروش فراهم است
}
//+——————————————————————+
//| توضیحات: این ربات برای مثال‌های آموزشی طراحی شده و برای استفاده در بازار واقعی باید با دقت بررسی شود
//+——————————————————————+
ربات متاتریدر 4

توضیح کد ربات متاتریدر 4

مقداردهی اولیه (OnInit):

هنگامی که ربات مقداردهی اولیه می شود، پیامی را چاپ می کند.

غیر فعال شدن ربات (OnDeinit):

هنگامی که ربات حذف می شود، پیامی را چاپ می کند.

منطق اصلی (OnTick):

  • در هر تیک قیمت اجرا می شود.
  • پارامترهایی مانند اندازه لات، توقف ضرر و سود را تعریف می کند.
  • بررسی می کند که آیا هیچ موقعیت بازی وجود ندارد.
  • اگر RSI زیر 30 باشد معامله خرید و اگر RSI بالای 70 باشد معامله فروش را باز می کند.

توابع کمکی:

ConditionToBuy: بررسی می کند که آیا مقدار RSI برای خرید احتمالی زیر 30 است.

ConditionToSell: بررسی می کند که آیا مقدار RSI برای فروش احتمالی بالاتر از 70 است.

نحوه استفاده از این ربات

کد را کپی و ذخیره کنید

کد را در پوشه Experts دایرکتوری نصب MT4 خود ذخیره کنید. نام فایل را برای مثال TJATradingRobot.mq4 بگذارید.
کامپایل کد:

  • پلتفرم MT4 را باز کنید.
  • به Tools > MetaQuotes Language Editor بروید.
  • فایل MyTradingRobot.mq4 را باز کرده و F7 را فشار دهید تا کامپایل شود.
  • اگر کامپایلر آنها را هایلایت کرد، خطاها را برطرف کنید.

پیوست کردن به نمودار

  • به ترمینال متاتریدر 4 برگردید.
  • ربات را در پنل Navigator در قسمت Expert Advisors پیدا کنید.
  • آن را بکشید و روی نمودار جفت ارز مورد نظر خود رها کنید.

فعال کردن معامله الگوریتمی

روی دکمه Algo Trading در نوار ابزار MT4 کلیک کنید تا ربات بتواند معامله کند.

مانیتور

  • ربات به طور خودکار معاملات را بر اساس شرایط اندیکاتور RSI انجام می دهد.
  • برگه‌های Experts و Journal را برای گزارش‌ها و هرگونه مشکل احتمالی بررسی کنید.

نتیجه گیری

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

برای اینکه بتوانید روبات های پیشرفته تر و پیچیده تری طراحی کنید، نیاز به دانش کد نویسی دارید. ولی با استفاد از Expert Advisors در متاتریدر، بدون دانش کد نویسی میتواند ربات های ساده بر مبنای استراتژی معاملاتی خود آماده کنید.

بخوانید و تماشا کنید: چگونه در فارکس حساب باز کنیم و در آن ترید کنیم ؟ + ویدیو

این مطلب آموزش بخشی از سری آموزش های رایگان آموزش فارکس است.
مبحث شماره 2 از بخش معاملات الگوریتمی مجموعه کامل آموزش فارکس
مبحث قبلی: معاملات بلک باکس Trading Black Box
مبحث بعدی: بهترین ربات های معامله گر فارکس – نتایج واقعی ربات معامله گر

forex learning package

مجموعه کامل آموزش فارکس از صفر تا صد (رایگان)

سری آموزش کامل فارکس از مبتدی تا پیشرفته و مباحث تکمیلی شامل بیش از 120 مبحث و ساعت ها ویدیوی آموزشی

مجموعه آموزش کامل فارکس
tejarat afarin logo

مقالات مرتبط

14 دیدگاه

  1. سلام. ممنون از توضیحاتتون.
    آیا می‌شود جهت ساخت ربات از اندیکاتورهای دیگری که در تریدینگ ویو وجود دارد استفاده کرد؟ راه حل آن چیست؟

    1. سلام و روز بخیر

      خیر استفاده از اندیکاتورهای تریدنگ ویو در ربات‌های متاتریدر 4 مستقیماً امکان‌پذیر نیست، زیرا اندیکاتورهای تریدینگ ویو روی پلتفرم‌های کاملاً متفاوتی ساخته شده‌اند و از زبان‌ برنامه‌نویسی متفاوتی استفاده می‌کنند. تریدینگ ویو از Pine Script که یک زبان برنامه نویسی اختصاصی خودش است برای ایجاد اندیکاتورها و استراتژی ها استفاده می کند و متاتریدر 4 از MQL4 استفاده می کند.

      راهکار این است که اندیکاتورهای تریدینگ ویو را با زبان MQL4 بازنویسی کنید تا یک اندیکاتور سفارشی ایجاد کنید و آن را در ربات معامله گر متاتریدر 4 خود ادغام کنید.

  2. سلام وقت بخیر.
    پیشنهاد همکاری و مشارکت
    بنده استراتژی دارم و رباتی میخوام که کدنویسی شود.
    شما مایلید؟

    1. سلام
      زبان های برنامه نویسی زیادی وجود دارند که می توانند برای ساخت ربات های معاملاتی استفاده شوند، از جمله پایتون، جاوا، سی پلاس پلاس و غیره. Python به دلیل سادگی و در دسترس بودن کتابخانه ها و چارچوب هایی که به طور خاص برای تجزیه و تحلیل مالی و معاملاتی طراحی شده اند، یک انتخاب محبوب است.

  3. سلام ،مطالب مختصر و مفیدب بود ،می خواستم بپرسم آیا میشه همزمان در فارکس از دو ربات با الگوریتم های مختلف استفاده کرد و در واقع همزمان دو معامله انجام داد مثلاً دو معامله همزمان با اهرمهای مختلف
    و سوال دوم اینکه آیا ترید با ربات در فارکس قانونی است یا از نظر بروکر غیر قانونی است

    1. سلام
      متاتریدر 4 به گونه ای طراحی شده است که تنها یک ربات فارکس (EA) یا اسکریپت را می توان به “یک نمودار” متصل کرد. اما شما می توانید تا حداکثر 100 ربات (EA) را در یک ترمینال معاملاتی اجرا کنید. شما فقط باید چندین پنجره نمودار را باز کنید.
      در مورد سئوال دوم : با اینکه همه بروکرهای فارکس اجازه استفاده از ربات ها را نمی دهند ولی اغلب بروکرهایی که ما در سایت معرفی کرده ایم اجازه استفاده می دهند.

  4. سلام و درود. الان شرایطی ک میخواهیم تعیین کنیم ک چه موقع بخره و چه موقع بفروشه رو چطوری مشخص کنیم؟

    1. سلام
      در اینجا مراحل اساسی برای ایجاد یک EA ساده بدون کدنویسی وجود دارد:

      MetaEditor را باز کنید:

      متاتریدر را باز کنید.
      در منوی بالا روی “ابزار” کلیک کنید.
      “MetaQuotes Language Editor” یا “MetaEditor” را انتخاب کنید.

      ایجاد یک EA جدید:

      در MetaEditor، به “File” بروید و “New” را انتخاب کنید.
      برای ایجاد یک EA ساده بدون کدنویسی، “Expert Advisor (generate)” را انتخاب کنید.

      تنظیم ویژگی های EA:

      یک پنجره جدید باز خواهد شد. در اینجا می توانید ویژگی های مختلفی مانند نام EA، توضیحات، نویسنده و ورودی ها را برای استراتژی خود تنظیم کنید.

      تعریف قوانین استراتژی:

      در برگه «پارامترهای ورودی»، می‌توانید پارامترهایی را برای استراتژی خود تنظیم کنید (مانند دوره‌های میانگین متحرک، اندازه لات و غیره). این پارامترها هنگام اتصال EA به نمودار قابل تنظیم خواهند بود.

      ایجاد کد:

      به تب “Generator” بروید.
      قوانین استراتژی خود را با استفاده از گزینه های موجود تنظیم کنید.
      روی دکمه “Generate” کلیک کنید.

      بررسی و ذخیره:

      مولد کد EA را بر اساس قوانینی که شما تنظیم کرده اید ایجاد می کند.
      کد تولید شده را بررسی کنید. در صورت نیاز می توانید تنظیمات دستی را نیز انجام دهید.
      EA را با کلیک بر روی “File” و سپس “Save” در MetaEditor ذخیره کنید.

      EA را کامپایل کنید:

      برای بررسی هرگونه خطا و کامپایل کد، روی دکمه “Compile” کلیک کنید.

      EA را به نمودار وصل کنید:

      به متاتریدر برگردید.
      EA را از پنجره Navigator روی نمودار بکشید.
      هر گونه پارامتر ورودی را در صورت نیاز تنظیم کنید.

      فعال کردن معاملات خودکار:

      اطمینان حاصل کنید که دکمه “Auto Trading” در نوار ابزار فعال است.

      نظارت بر EA در ترمینال:

      می توانید اقدامات EA را در پنجره “Terminal” در پایین MetaTrader نظارت کنید.
      به خاطر داشته باشید که در حالی که این رویکرد فرآیند کدنویسی را ساده می کند، ممکن است در مقایسه با کدگذاری دستی یک EA سفارشی محدودیت هایی داشته باشد.

  5. پست بسیار مفید و معتبری بود. خیلی ساده و کوتاه، یک فرآیند پیچیده را توضیح دادید که هر چقدر در سایت های فارسی زبان میگشتم، فقط تبلیغات ویا ادعای بهترین پکیج آموزشی را می کنند. سپاسگزارم از صرف وقت و انرژی برای خدمات و آگاهی های باارزش 🌹❤

  6. با عرض سلام و خسته نباشید . بنده میخوام ربات فارکس بسازم ولی این مطالبی که گزاشتید نتونسم کاری انجام بدم . برای بنده پیشنهادی دارید ؟؟؟؟

    1. سلام
      در اینجا مراحل ساخت ربات فارکس بدون کد نویسی توضیح داده شده. برای کد نویسی هم میتوانید از ChatGPT استفاده کنید و چنانچه نیاز خودتون رو اونجا بنویسید کد مورد نظر را دریافت می کنید. به زودی یک پست در مورد استفاده از چت جی پی تی برای ساخت ربات فارکس منتشر خواهیم کرد.

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

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