← К каталогу
Исходный код · ID 3654

il boss del trading.mq4

Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Il Boss Del Trading — это торговый советник для MetaTrader 4, реализующий скальперскую стратегию с фильтрацией по времени и спреду. Советник анализирует движение цены относительно последней открывшейся цены и открывает сделки BUY/SELL при достижении заданного шага в пунктах в разрешённый временной интервал.

Программа поддерживает три режима расчёта лотов: фиксированный размер, процентный риск от баланса и балансовое соотношение. Встроенная информационная панель отображает ключевые параметры счёта — баланс, эквити, прибыль за разные периоды и текущий процент прибыли.

Советник оснащён механизмами управления рисками: трейлинг-стоп с настраиваемым началом и дистанцией, закрытие всех позиций при достижении процентной или фиксированной просадки, а также возможность возобновления торговли на следующий день после стоп-закрытия. Магический номер используется для идентификации ордеров советника.

Настройки программы

НастройкаОписание
FixedLots Фиксированный размер лота, используемый при ручном режиме назначения размера позиции
PercentageRiskSettings Разделитель группы настроек процентного риска
PercentageRisk Процент баланса, рискуемый при расчёте размера лота в режиме процентного риска
PercentageRiskBasedOnPointsMovement Количество пунктов движения цены, используемое в качестве базы для расчёта процентного риска
BalanceRatioSettings Разделитель группы настроек балансового соотношения для расчёта размера лота
ForEvery Сумма баланса, используемая для расчёта количества лотов в режиме балансового соотношения
UseLotsForEveryBalance Размер лота, используемый при расчёте на каждую единицу баланса
LotsSelection Разделитель группы настроек выбора лота
LotAssignment Режим назначения размера лота: фиксированный, процентный риск или балансовое соотношение
TakeProfit Множитель прибыли, используемый для определения порога суммарной прибыли для закрытия всех позиций
Tral Дистанция трейлинг-стопа в пунктах для перемещения стоп-лосса при выгодной позиции
TralStart Начальная дистанция в пунктах, после которой активируется трейлинг-стоп для позиции
TimeStart Час начала разрешённого временного окна для торговли
TimeEnd Час окончания разрешённого временного окна для торговли
MaxSpread Максимально допустимый спред в пунктах для открытия новых позиций
PipsStep Шаг в пунктах, необходимый для движения цены от последней цены открытия для сигнала к открытию позиции
OpenTime Смещение времени в часах от текущего момента для расчёта окна открытия позиций
Magic Магический номер для идентификации ордеров, открытых советником
Info Переключатель отображения информационной панели с данными счёта на графике
TextColor Цвет основного текста в информационной панели
InfoDataColor Цвет данных в информационной панели
FonColor Цвет фона информационной панели на графике
FontSizeInfo Размер шрифта текста в информационной панели
SpeedEA Интервал таймера в миллисекундах, определяющий частоту проверки и обработки событий советником
CloseTradesAtPercentageDrawdown Переключатель автоматического закрытия всех позиций при достижении процентной просадки от баланса
PercentageDrawdown Процентное значение просадки от баланса, при достижении которого происходит стоп-закрытие позиций
CloseTradesAtFixedDrawdown Переключатель автоматического закрытия всех позиций при достижении фиксированной просадки в денежном выражении
FixedDrawdown Фиксированное значение просадки в денежном выражении, при достижении которого происходит стоп-закрытие позиций
ResumeTradingAtNextDayAfterDrawdown Переключатель возобновления торговли на следующий день после стоп-закрытия позиций из-за просадки
Получить полный код

Поиск по коду файла

#property version "";
#property strict

#import "stdlib.ex4"

string ErrorDescription(int);

#import

enum LotAss
{
   Fixed = 0, // FixedLots
   AutoMM = 1, // Percentage Risk
   BalanceRatio = 2 // BalanceRatio
};

extern double FixedLots = 0.01;
extern string PercentageRiskSettings = "***************************";
extern double PercentageRisk = 0.1;
extern int PercentageRiskBasedOnPointsMovement = 100;
extern string BalanceRatioSettings = "***************************";
extern double ForEvery = 1000;
extern double UseLotsForEveryBalance = 0.01;
extern string LotsSelection = "***************************";
extern LotAss LotAssignment = Fixed;
extern int TakeProfit = 30;
extern double Tral = 20;
extern double TralStart = 5;
extern double TimeStart = 2;
extern double TimeEnd = 23;
extern double MaxSpread = 40;
extern double PipsStep = 35;
extern int OpenTime = 1;
extern int Magic = 2021;
extern bool Info = true;
extern color TextColor = White;
extern color InfoDataColor = DodgerBlue;
extern color FonColor = 0;
extern int FontSizeInfo = 7;
extern int SpeedEA = 50;
extern bool CloseTradesAtPercentageDrawdown;
extern double PercentageDrawdown = 5;
extern bool CloseTradesAtFixedDrawdown;
extern double FixedDrawdown = 1000;
extern bool ResumeTradingAtNextDayAfterDrawdown;

bool Ib_00000;
int Ii_00004;
int returned_i;
string Is_00008;
bool returned_b;
bool Ib_00014;
string Is_00018;
int Ii_0003C;
double Gd_00000;
int Gi_00001;
int Gi_00002;
string Is_00030;
double Ind_000;
double Gd_00001;
bool Gb_00001;
int Gi_00003;
int Gi_00004;
double Gd_00003;
bool Gb_00003;
bool Ib_00078;
bool Ib_00024;
double Ind_002;
double Id_00068;
long Il_00050;
long returned_l;
double Id_00048;
long Gl_00003;
double Ind_004;
double Gd_00005;
int Gi_00006;
int Gi_00007;
double Gd_00006;
double Id_00070;
int Gi_00008;
int Gi_00009;
int Gi_0000A;
double Gd_0000B;
double Gd_0000C;
double Gd_0000D;
int Gi_0000E;
double Gd_0000E;
bool Gb_0000E;
double Gd_0000F;
int Ii_00040;
int Gi_00010;
int Gi_00011;
int Gi_00012;
double Gd_00013;
double Gd_00014;
double Gd_00015;
int Gi_00016;
double Gd_00016;
bool Gb_00016;
double Gd_00017;
int Gi_00018;
int Gi_00019;
int Gi_0001A;
long Gl_00019;
long Gl_0001B;
int Gi_0001B;
int Gi_0001C;
int Gi_0001D;
int Gi_0001E;
long Gl_0001D;
int Gi_0001F;
int Gi_00020;
int Gi_00021;
double Gd_00022;
double Gd_00023;
double Gd_00024;
int Gi_00025;
double Gd_00025;
bool Gb_00025;
double Gd_00026;
int Gi_00027;
int Gi_00028;
int Gi_00029;
double Gd_0002A;
double Gd_0002B;
double Gd_0002C;
int Gi_0002D;
double Gd_0002D;
bool Gb_0002D;
double Gd_0002E;
double Gd_0002F;
int Gi_00030;
int Gi_00031;
double Gd_00032;
int Gi_00033;
int Gi_00034;
double Gd_00033;
bool Gb_00033;
int Gi_00035;
int Gi_00036;
int Gi_00037;
int Gi_00038;
double Gd_00036;
double Gd_00039;
int Gi_0003A;
double Gd_0003A;
double Gd_0003B;
int Gi_0003C;
int Gi_0003D;
int Gi_0003E;
int Gi_0003F;
long Gl_0003E;
double Gd_00040;
int Gi_00041;
int Gi_00042;
double Gd_00041;
long Gl_00041;
double Gd_00043;
int Gi_00044;
int Gi_00045;
double Gd_00044;
long Gl_00044;
double Gd_00046;
int Gi_00047;
int Gi_00048;
long Gl_00047;
double Gd_00047;
double Gd_00049;
int Gi_0004A;
int Gi_0004B;
long Gl_0004A;
double Gd_0004A;
double Gd_0004C;
int Gi_0004D;
int Gi_0004E;
long Gl_0004D;
double Gd_0004D;
double Gd_0004F;
int Gi_00050;
int Gi_00051;
long Gl_00050;
double Gd_00050;
long Il_00028;
double Id_00058;
double Id_00060;
int Ii_0007C;
bool Ib_00080;
int Ii_00084;
int Ii_00088;
bool Gb_00000;
double Gd_00002;
bool Gb_00002;
double Gd_00004;
int Gi_00000;
long Gl_00006;
double returned_double;
bool order_check;
int init()
{
      // код доступен только после оплаты
   }

void OnTick()
{
      // код доступен только после оплаты
   }
   string tmp_str00000;
   string tmp_str00001;
   string tmp_str00002;
   string tmp_str00003;
   string tmp_str00004;
   string tmp_str00005;
   string tmp_str00006;
   string tmp_str00007;
   string tmp_str00008;
   string tmp_str00009;
   string tmp_str0000A;
   string tmp_str0000B;
   string tmp_str0000C;
   string tmp_str0000D;
   string tmp_str0000E;
   string tmp_str0000F;
   string tmp_str00010;
   string tmp_str00011;
   string tmp_str00012;
   string tmp_str00013;
   string tmp_str00014;
   string tmp_str00015;
   string tmp_str00016;
   string tmp_str00017;
   string tmp_str00018;
   string tmp_str00019;
   string tmp_str0001A;
   string tmp_str0001B;
   string tmp_str0001C;
   string tmp_str0001D;
   string tmp_str0001E;
   string tmp_str0001F;
   string tmp_str00020;
   string tmp_str00021;
   string tmp_str00022;
   string tmp_str00023;
   string tmp_str00024;
   string tmp_str00025;
   string tmp_str00026;
   string tmp_str00027;
   string tmp_str00028;
   string tmp_str00029;
   string tmp_str0002A;
   string tmp_str0002B;
   string tmp_str0002C;
   string tmp_str0002D;
   string tmp_str0002E;
   string tmp_str0002F;
   string tmp_str00030;
   string tmp_str00031;
   string tmp_str00032;
   string tmp_str00033;
   string tmp_str00034;
   string tmp_str00035;
   string tmp_str00036;
   string tmp_str00037;
   string tmp_str00038;
   string tmp_str00039;
   string tmp_str0003A;
   string tmp_str0003B;
   string tmp_str0003C;
   string tmp_str0003D;
   string tmp_str0003E;
   bool Lb_FFFFF;
   bool Lb_FFFFE;
   bool Lb_FFFFD;
   bool Lb_FFFFC;
   double Ld_FFFF0;

   if (CloseTradesAtPercentageDrawdown) { 
   Gd_00000 = 0;
   Gi_00001 = OrdersTotal() - 1;
   Gi_00002 = Gi_00001;
   if (Gi_00001 >= 0) { 
   do { 
   if (OrderSelect(Gi_00002, 0, 0) && OrderMagicNumber() == Magic && OrderSymbol() == _Symbol && OrderComment() == Is_00030) { 
   Gd_00001 = (Gd_00000 + OrderProfit());
   Gd_00001 = (Gd_00001 + OrderSwap());
   Gd_00000 = (Gd_00001 + OrderCommission());
   } 
   Gi_00002 = Gi_00002 - 1;
   } while (Gi_00002 >= 0); 
   } 
   Gd_00001 = -PercentageDrawdown;
   if ((Gd_00000 <= ((Gd_00001 * AccountBalance()) / 100))) { 
   tmp_str00000 = "EP Closed At Percentage Drawdown";
   func_1037(tmp_str00000);
   }} 
   if (CloseTradesAtFixedDrawdown) { 
   Gd_00001 = 0;
   Gi_00003 = OrdersTotal() - 1;
   Gi_00004 = Gi_00003;
   if (Gi_00003 >= 0) { 
   do { 
   if (OrderSelect(Gi_00004, 0, 0) && OrderMagicNumber() == Magic && OrderSymbol() == _Symbol && OrderComment() == Is_00030) { 
   Gd_00003 = (Gd_00001 + OrderProfit());
   Gd_00003 = (Gd_00003 + OrderSwap());
   Gd_00001 = (Gd_00003 + OrderCommission());
   } 
   Gi_00004 = Gi_00004 - 1;
   } while (Gi_00004 >= 0); 
   } 
   Gd_00003 = -FixedDrawdown;
   if ((Gd_00001 <= Gd_00003)) { 
   tmp_str00001 = "EP Closed At Percentage Drawdown";
   func_1037(tmp_str00001);
   }} 
   if (Ib_00078) { 
   if (IsDemo() != true) return; 
   } 
   if (Ib_00024 != true) { 
   Gd_00003 = (Ask - Bid);
   Id_00068 = (Gd_00003 / _Point);
   Lb_FFFFF = false;
   Lb_FFFFE = false;
   Lb_FFFFD = false;
   Lb_FFFFC = false;
   if (Il_00050 == 0) { 
   Il_00050 = TimeCurrent();
   } 
   if ((Id_00048 == 0)) { 
   Id_00048 = Bid;
   } 
   Gl_00003 = OpenTime;
   Gl_00003 = Il_00050 + Gl_00003;
   if (Gl_00003 < TimeCurrent()) { 
   Il_00050 = TimeCurrent();
   Id_00048 = Bid;
   } 
   Gl_00003 = OpenTime;
   Gl_00003 = Il_00050 + Gl_00003;
   if (Gl_00003 >= TimeCurrent()) { 
   Gd_00003 = (PipsStep * _Point);
   if (((Bid - Gd_00003) >= Id_00048)) { 
   Lb_FFFFF = true;
   }} 
   Gl_00003 = OpenTime;
   Gl_00003 = Il_00050 + Gl_00003;
   if (Gl_00003 >= TimeCurrent() && (((PipsStep * _Point) + Bid) <= Id_00048)) { 
   Lb_FFFFD = true;
   } 
   if ((TimeHour(TimeCurrent()) >= TimeStart) && (TimeHour(TimeCurrent()) < TimeEnd)) { 
   if (MaxSpread == 0 || (MaxSpread >= Id_00068)) {

   if (Lb_FFFFF) { 
   Lb_FFFFE = true;
   }} 
   if (MaxSpread == 0 || (MaxSpread >= Id_00068)) {

   if (Lb_FFFFD) { 
   Lb_FFFFC = true;
   }}} 
   Gi_00003 = -1;
   Gd_00005 = 0;
   Gi_00006 = OrdersTotal() - 1;
   Gi_00007 = Gi_00006;
   if (Gi_00006 >= 0) { 
   do { 
   if (OrderSelect(Gi_00007, 0, 0) && _Symbol == OrderSymbol() && OrderMagicNumber() == Magic) { 
   if (OrderType() == Gi_00003 || Gi_00003 == -1) { 

   Gd_00006 = OrderProfit();
   Gd_00006 = (Gd_00006 + OrderSwap());
   Gd_00005 = ((Gd_00006 + OrderCommission()) + Gd_00005);
   }} 
   Gi_00007 = Gi_00007 - 1;
   } while (Gi_00007 >= 0); 
   } 
   Id_00070 = (Gd_00005 / (AccountBalance() / 100));
   Gi_00006 = -1;
   Gi_00008 = 0;
   Gi_00009 = OrdersTotal() - 1;
   Gi_0000A = Gi_00009;
   if (Gi_00009 >= 0) { 
   do { 
   if (OrderSelect(Gi_0000A, 0, 0) && _Symbol == OrderSymbol() && Magic == OrderMagicNumber()) { 
   if (Gi_00006 == -1 || OrderType() == Gi_00006) { 

   Gi_00008 = Gi_00008 + 1;
   }} 
   Gi_0000A = Gi_0000A - 1;
   } while (Gi_0000A >= 0); 
   } 
   if (Gi_00008 == 0 && Lb_FFFFC) { 
   tmp_str00002 = _Symbol;
   Gd_0000C = FixedLots;
   if (LotAssignment == 1) { 
   Gd_0000D = (PercentageRisk * AccountBalance());
   Gi_0000E = PercentageRiskBasedOnPointsMovement * 100;
   Gd_0000E = (Gd_0000D / (Gi_0000E * MarketInfo(tmp_str00002, MODE_TICKVALUE)));
   Gd_0000C = Gd_0000E;
   if ((Gd_0000E < MarketInfo(tmp_str00002, MODE_MINLOT))) { 
   Gd_0000C = MarketInfo(tmp_str00002, MODE_MINLOT);
   }} 
   if (LotAssignment == 2) { 
   Gd_0000E = floor((AccountBalance() / ForEvery));
   Gd_0000C = (Gd_0000E * 0.01);
   } 
   Gd_0000E = floor((Gd_0000C / MarketInfo(tmp_str00002, MODE_MINLOT)));
   Gd_0000E = (Gd_0000E * MarketInfo(tmp_str00002, MODE_MINLOT));
   Gd_0000C = Gd_0000E;
   returned_double = MarketInfo(tmp_str00002, MODE_MINLOT);
   Gd_0000F = Gd_0000E;
   if (Gd_0000E <= returned_double) { 
   Gd_0000E = returned_double;
   } 
   else { 
   Gd_0000E = Gd_0000F;
   } 
   Gd_0000C = Gd_0000E;
   returned_double = MarketInfo(tmp_str00002, MODE_MAXLOT);
   Gd_0000F = Gd_0000E;
   if (Gd_0000E >= returned_double) { 
   Gd_0000E = returned_double;
   } 
   else { 
   Gd_0000E = Gd_0000F;
   } 
   Gd_0000C = Gd_0000E;
   Ii_00040 = OrderSend(_Symbol, 1, Gd_0000E, Bid, 5, 0, 0, Is_00030, Magic, 0, 255);
   } 
   Gi_0000E = -1;
   Gi_00010 = 0;
   Gi_00011 = OrdersTotal() - 1;
   Gi_00012 = Gi_00011;
   if (Gi_00011 >= 0) { 
   do { 
   if (OrderSelect(Gi_00012, 0, 0) && _Symbol == OrderSymbol() && Magic == OrderMagicNumber()) { 
   if (Gi_0000E == -1 || OrderType() == Gi_0000E) { 

   Gi_00010 = Gi_00010 + 1;
   }} 
   Gi_00012 = Gi_00012 - 1;
   } while (Gi_00012 >= 0); 
   } 
   if (Gi_00010 == 0 && Lb_FFFFE) { 
   tmp_str00003 = _Symbol;
   Gd_00014 = FixedLots;
   if (LotAssignment == 1) { 
   Gd_00015 = (PercentageRisk * AccountBalance());
   Gi_00016 = PercentageRiskBasedOnPointsMovement * 100;
   Gd_00016 = (Gd_00015 / (Gi_00016 * MarketInfo(tmp_str00003, MODE_TICKVALUE)));
   Gd_00014 = Gd_00016;
   if ((Gd_00016 < MarketInfo(tmp_str00003, MODE_MINLOT))) { 
   Gd_00014 = MarketInfo(tmp_str00003, MODE_MINLOT);
   }} 
   if (LotAssignment == 2) { 
   Gd_00016 = floor((AccountBalance() / ForEvery));
   Gd_00014 = (Gd_00016 * 0.01);
   } 
   Gd_00016 = floor((Gd_00014 / MarketInfo(tmp_str00003, MODE_MINLOT)));
   Gd_00016 = (Gd_00016 * MarketInfo(tmp_str00003, MODE_MINLOT));
   Gd_00014 = Gd_00016;
   returned_double = MarketInfo(tmp_str00003, MODE_MINLOT);
   Gd_00017 = Gd_00016;
   if (Gd_00016 <= returned_double) { 
   Gd_00016 = returned_double;
   } 
   else { 
   Gd_00016 = Gd_00017;
   } 
   Gd_00014 = Gd_00016;
   returned_double = MarketInfo(tmp_str00003, MODE_MAXLOT);
   Gd_00017 = Gd_00016;
   if (Gd_00016 >= returned_double) { 
   Gd_00016 = returned_double;
   } 
   else { 
   Gd_00016 = Gd_00017;
   } 
   Gd_00014 = Gd_00016;
   Ii_00040 = OrderSend(_Symbol, 0, Gd_00016, Ask, 5, 0, 0, Is_00030, Magic, 0, 32768);
   } 
   Gi_00016 = -1;
   Gi_00018 = 0;
   Gi_00019 = OrdersTotal() - 1;
   Gi_0001A = Gi_00019;
   if (Gi_00019 >= 0) { 
   do { 
   if (OrderSelect(Gi_0001A, 0, 0) && OrderMagicNumber() == Magic) { 
   if (Gi_00016 == -1 || OrderType() == Gi_00016) { 

   Gi_00018 = Gi_00018 + 1;
   }} 
   Gi_0001A = Gi_0001A - 1;
   } while (Gi_0001A >= 0); 
   } 
   Gl_00019 = AccountInfoInteger(ACCOUNT_LIMIT_ORDERS);
   Gl_0001B = Gi_00018;
   if (Gl_0001B < Gl_00019 || AccountInfoInteger(ACCOUNT_LIMIT_ORDERS) == 0) { 

   Gi_0001B = -1;
   Gi_0001C = 0;
   Gi_0001D = OrdersTotal() - 1;
   Gi_0001E = Gi_0001D;
   if (Gi_0001D >= 0) { 
   do { 
   if (OrderSelect(Gi_0001E, 0, 0) && _Symbol == OrderSymbol() && OrderMagicNumber() == Magic) { 
   Gl_0001D = OrderOpenTime();
   if (Gl_0001D >= iTime(_Symbol, 0, 0)) { 
   if (Gi_0001B == -1 || OrderType() == Gi_0001B) { 

   Gi_0001C = Gi_0001C + 1;
   }}} 
   Gi_0001E = Gi_0001E - 1;
   } while (Gi_0001E >= 0); 
   } 
   if (Gi_0001C == 0) { 
   Gi_0001D = 0;
   Gi_0001F = 0;
   Gi_00020 = OrdersTotal() - 1;
   Gi_00021 = Gi_00020;
   if (Gi_00020 >= 0) { 
   do { 
   if (OrderSelect(Gi_00021, 0, 0) && _Symbol == OrderSymbol() && Magic == OrderMagicNumber()) { 
   if (Gi_0001D == -1 || OrderType() == Gi_0001D) { 

   Gi_0001F = Gi_0001F + 1;
   }} 
   Gi_00021 = Gi_00021 - 1;
   } while (Gi_00021 >= 0); 
   } 
   if (Gi_0001F > 0 && Lb_FFFFE) { 
   tmp_str00004 = _Symbol;
   Gd_00023 = FixedLots;
   if (LotAssignment == 1) { 
   Gd_00024 = (PercentageRisk * AccountBalance());
   Gi_00025 = PercentageRiskBasedOnPointsMovement * 100;
   Gd_00025 = (Gd_00024 / (Gi_00025 * MarketInfo(tmp_str00004, MODE_TICKVALUE)));
   Gd_00023 = Gd_00025;
   if ((Gd_00025 < MarketInfo(tmp_str00004, MODE_MINLOT))) { 
   Gd_00023 = MarketInfo(tmp_str00004, MODE_MINLOT);
   }} 
   if (LotAssignment == 2) { 
   Gd_00025 = floor((AccountBalance() / ForEvery));
   Gd_00023 = (Gd_00025 * 0.01);
   } 
   Gd_00025 = floor((Gd_00023 / MarketInfo(tmp_str00004, MODE_MINLOT)));
   Gd_00025 = (Gd_00025 * MarketInfo(tmp_str00004, MODE_MINLOT));
   Gd_00023 = Gd_00025;
   returned_double = MarketInfo(tmp_str00004, MODE_MINLOT);
   Gd_00026 = Gd_00025;
   if (Gd_00025 <= returned_double) { 
   Gd_00025 = returned_double;
   } 
   else { 
   Gd_00025 = Gd_00026;
   } 
   Gd_00023 = Gd_00025;
   returned_double = MarketInfo(tmp_str00004, MODE_MAXLOT);
   Gd_00026 = Gd_00025;
   if (Gd_00025 >= returned_double) { 
   Gd_00025 = returned_double;
   } 
   else { 
   Gd_00025 = Gd_00026;
   } 
   Gd_00023 = Gd_00025;
   Ii_00040 = OrderSend(_Symbol, 0, Gd_00025, Ask, 10, 0, 0, Is_00030, Magic, 0, 32768);
   } 
   Gi_00025 = 1;
   Gi_00027 = 0;
   Gi_00028 = OrdersTotal() - 1;
   Gi_00029 = Gi_00028;
   if (Gi_00028 >= 0) { 
   do { 
   if (OrderSelect(Gi_00029, 0, 0) && _Symbol == OrderSymbol() && Magic == OrderMagicNumber()) { 
   if (Gi_00025 == -1 || OrderType() == Gi_00025) { 

   Gi_00027 = Gi_00027 + 1;
   }} 
   Gi_00029 = Gi_00029 - 1;
   } while (Gi_00029 >= 0); 
   } 
   if (Gi_00027 > 0 && Lb_FFFFC) { 
   tmp_str00005 = _Symbol;
   Gd_0002B = FixedLots;
   if (LotAssignment == 1) { 
   Gd_0002C = (PercentageRisk * AccountBalance());
   Gi_0002D = PercentageRiskBasedOnPointsMovement * 100;
   Gd_0002D = (Gd_0002C / (Gi_0002D * MarketInfo(tmp_str00005, MODE_TICKVALUE)));
   Gd_0002B = Gd_0002D;
   if ((Gd_0002D < MarketInfo(tmp_str00005, MODE_MINLOT))) { 
   Gd_0002B = MarketInfo(tmp_str00005, MODE_MINLOT);
   }} 
   if (LotAssignment == 2) { 
   Gd_0002D = floor((AccountBalance() / ForEvery));
   Gd_0002B = (Gd_0002D * 0.01);
   } 
   Gd_0002D = floor((Gd_0002B / MarketInfo(tmp_str00005, MODE_MINLOT)));
   Gd_0002D = (Gd_0002D * MarketInfo(tmp_str00005, MODE_MINLOT));
   Gd_0002B = Gd_0002D;
   returned_double = MarketInfo(tmp_str00005, MODE_MINLOT);
   Gd_0002E = Gd_0002D;
   if (Gd_0002D <= returned_double) { 
   Gd_0002D = returned_double;
   } 
   else { 
   Gd_0002D = Gd_0002E;
   } 
   Gd_0002B = Gd_0002D;
   returned_double = MarketInfo(tmp_str00005, MODE_MAXLOT);
   Gd_0002E = Gd_0002D;
   if (Gd_0002D >= returned_double) { 
   Gd_0002D = returned_double;
   } 
   else { 
   Gd_0002D = Gd_0002E;
   } 
   Gd_0002B = Gd_0002D;
   Ii_00040 = OrderSend(_Symbol, 1, Gd_0002D, Bid, 10, 0, 0, Is_00030, Magic, 0, 255);
   }}} 
   Gi_0002D = -1;
   Gd_0002F = 0;
   Gi_00030 = OrdersTotal() - 1;
   Gi_00031 = Gi_00030;
   if (Gi_00030 >= 0) { 
   do { 
   if (OrderSelect(Gi_00031, 0, 0) && OrderMagicNumber() == Magic) { 
   if (OrderType() == Gi_0002D || Gi_0002D == -1) { 

   Gd_0002F = (Gd_0002F + OrderLots());
   }} 
   Gi_00031 = Gi_00031 - 1;
   } while (Gi_00031 >= 0); 
   } 
   Ld_FFFF0 = (Gd_0002F * TakeProfit);
   Gi_00030 = -1;
   Gd_00032 = 0;
   Gi_00033 = OrdersTotal() - 1;
   Gi_00034 = Gi_00033;
   if (Gi_00033 >= 0) { 
   do { 
   if (OrderSelect(Gi_00034, 0, 0) && OrderMagicNumber() == Magic) { 
   if (OrderType() == Gi_00030 || Gi_00030 == -1) { 

   Gd_00033 = OrderProfit();
   Gd_00033 = (Gd_00033 + OrderSwap());
   Gd_00032 = ((Gd_00033 + OrderCommission()) + Gd_00032);
   }} 
   Gi_00034 = Gi_00034 - 1;
   } while (Gi_00034 >= 0); 
   } 
   if ((Gd_00032 >= Ld_FFFF0) && (Ld_FFFF0 != 0)) { 
   Gi_00033 = -1;
   Gi_00035 = 0;
   Gi_00036 = OrdersTotal() - 1;
   Gi_00037 = Gi_00036;
   if (Gi_00036 >= 0) { 
   do { 
   if (OrderSelect(Gi_00037, 0, 0) && _Symbol == OrderSymbol() && Magic == OrderMagicNumber()) { 
   if (Gi_00033 == -1 || OrderType() == Gi_00033) { 

   Gi_00035 = Gi_00035 + 1;
   }} 
   Gi_00037 = Gi_00037 - 1;
   } while (Gi_00037 >= 0); 
   } 
   if (Gi_00035 > 1) { 
   Gi_00036 = OrdersTotal() - 1;
   Gi_00038 = Gi_00036;
   if (Gi_00036 >= 0) { 
   do { 
   if (OrderSelect(Gi_00038, 0, 0) && OrderMagicNumber() == Magic) { 
   if (OrderType() == OP_BUY) { 
   RefreshRates();
   tmp_str00006 = OrderSymbol();
   order_check = OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(MarketInfo(tmp_str00006, MODE_BID), _Digits), 10, 16777215);
   } 
   if (OrderType() == OP_SELL) { 
   RefreshRates();
   tmp_str00007 = OrderSymbol();
   order_check = OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(MarketInfo(tmp_str00007, MODE_ASK), _Digits), 10, 16777215);
   }} 
   Gi_00038 = Gi_00038 - 1;
   } while (Gi_00038 >= 0); 
   }}} 
   Gi_0003C = -1;
   Gi_0003D = 0;
   Gi_0003E = OrdersTotal() - 1;
   Gi_0003F = Gi_0003E;
   if (Gi_0003E >= 0) { 
   do { 
   if (OrderSelect(Gi_0003F, 0, 0) && _Symbol == OrderSymbol() && Magic == OrderMagicNumber()) { 
   if (Gi_0003C == -1 || OrderType() == Gi_0003C) { 

   Gi_0003D = Gi_0003D + 1;
   }} 
   Gi_0003F = Gi_0003F - 1;
   } while (Gi_0003F >= 0); 
   } 
   if (Gi_0003D == 1) { 
   func_1018();
   } 
   if (Info == false) return; 
   tmp_str00008 = "INFO_fon";
   if (ObjectCreate(0, tmp_str00008, OBJ_RECTANGLE_LABEL, 0, 0, 0)) { 
   ObjectSetInteger(0, tmp_str00008, 102, 220);
   ObjectSetInteger(0, tmp_str00008, 103, 20);
   ObjectSetInteger(0, tmp_str00008, 1019, 200);
   ObjectSetInteger(0, tmp_str00008, 1020, 225);
   ObjectSetInteger(0, tmp_str00008, 1025, FonColor);
   ObjectSetInteger(0, tmp_str00008, 1029, 2);
   ObjectSetInteger(0, tmp_str00008, 101, 1);
   ObjectSetInteger(0, tmp_str00008, 6, 16711680);
   ObjectSetInteger(0, tmp_str00008, 8, 1);
   ObjectSetInteger(0, tmp_str00008, 9, 0);
   ObjectSetInteger(0, tmp_str00008, 208, 0);
   } 
   tmp_str00009 = "www.ilbossdeltrading.com";
   tmp_str0000A = "INFO_LOGO";
   ObjectCreate(0, tmp_str0000A, OBJ_LABEL, 0, 0, 0);
   ObjectSetInteger(0, tmp_str0000A, 102, 165);
   ObjectSetInteger(0, tmp_str0000A, 103, 24);
   ObjectSetInteger(0, tmp_str0000A, 101, 1);
   ObjectSetString(0, tmp_str0000A, 999, tmp_str00009);
   ObjectSetString(0, tmp_str0000A, 1001, "Arial");
   ObjectSetInteger(0, tmp_str0000A, 100, FontSizeInfo);
   ObjectSetInteger(0, tmp_str0000A, 6, TextColor);
   ObjectSetInteger(0, tmp_str0000A, 208, 0);
   ObjectSetInteger(0, tmp_str0000A, 9, 0);
   tmp_str0000B = "___________________________";
   tmp_str0000C = "INFO_Line";
   ObjectCreate(0, tmp_str0000C, OBJ_LABEL, 0, 0, 0);
   ObjectSetInteger(0, tmp_str0000C, 102, 215);
   ObjectSetInteger(0, tmp_str0000C, 103, 27);
   ObjectSetInteger(0, tmp_str0000C, 101, 1);
   ObjectSetString(0, tmp_str0000C, 999, tmp_str0000B);
   ObjectSetString(0, tmp_str0000C, 1001, "Arial");
   ObjectSetInteger(0, tmp_str0000C, 100, FontSizeInfo);
   ObjectSetInteger(0, tmp_str0000C, 6, TextColor);
   ObjectSetInteger(0, tmp_str0000C, 208, 0);
   ObjectSetInteger(0, tmp_str0000C, 9, 0);
   tmp_str0000D = "Account information";
   tmp_str0000E = "INFO_txt1";
   ObjectCreate(0, tmp_str0000E, OBJ_LABEL, 0, 0, 0);
   ObjectSetInteger(0, tmp_str0000E, 102, 215);
   ObjectSetInteger(0, tmp_str0000E, 103, 45);
   ObjectSetInteger(0, tmp_str0000E, 101, 1);
   ObjectSetString(0, tmp_str0000E, 999, tmp_str0000D);
   ObjectSetString(0, tmp_str0000E, 1001, "Arial");
   ObjectSetInteger(0, tmp_str0000E, 100, FontSizeInfo);
   ObjectSetInteger(0, tmp_str0000E, 6, InfoDataColor);
   ObjectSetInteger(0, tmp_str0000E, 208, 0);
   ObjectSetInteger(0, tmp_str0000E, 9, 0);
   tmp_str000

Показано первые 50% кода (символов: 34494)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
3 449,40₽ ≈ $42.16