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

salongo.mq4

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

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

Получить полный код

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

/*
   Generated by EX4-TO-MQ4 decompiler V4.0.224.1 []
   Website: 
   E-mail : s*****o@gmail.com
*/

string gs_76 = "SALONGO ";
extern string INFO = "SALONGO ";
extern string OWN = "salongo Copyright";
extern string ContactMe = "";
bool gi_108 = FALSE;
string gs_112 = "--STOCH SETTING--";
bool gi_120 = FALSE;
int gi_124 = 14;
int gi_128 = 3;
int gi_132 = 3;
int gi_136 = PERIOD_M1;
int gi_140 = 1;
int gi_144 = 99;
int gi_148 = 1;
string gs_152 = "Choose 1=mode main, 2=mode signal";
int gi_160 = 1;
string gs_164 = "Choose 1=mode SMA, 2=mode LWMA, 3=mode EMA";
int gi_172 = 2;
bool gi_176 = FALSE;
extern string TS = "--TRADE SETTING--";
string gs_188 = "0=Buy & Sell, 1=Sell, 2=Buy";
int gi_196 = 1;
extern double Lots = 0.01;
extern int TakeProfit = 150;
bool gi_212 = FALSE;
double gd_216 = 50.0;
extern double Multiplier = 1.5;
extern int MaxTrades = 5;
extern int PipStep = 150;
extern bool UseModifyTakeProfit = false;
extern string StopTradingSetting = " ----------- STOP TRADING SETTINGS ----------- ";
extern string Notes1 = " -------- Take Profit by Equity ----------";
extern bool StopTradeAfterProfitReach=false;
extern double InitialEquity=10000;
extern bool UseProfitTargetInPercent = true;
extern double StopProfitInPercent=10;
extern bool UseEquityTargetInUSD = false;
extern double StopEquityTargetInUSD = 11000;
extern string Notes2 = " -------- Stop Loss Limit by Equity ----------";
extern bool StopTradeAfterLossReach=false;
extern bool UseStopLossInPercent = false;
extern double StopLossInPercent=50;
extern bool UseEquityLossInUSD = false;
extern double StopEquityLossInUSD = 5000;

int gi_240 = 0;
int gi_244 = 0;
string gs_248 = "--MOney Management--";
string gs_256 = "if one the lots size will increase based on account size";
int gi_264 = 0;
string gs_268 = "risk to calculate the lots size (only if mm is enabled)";
int gi_276 = 1;
string gs_280 = "0 if Normal Lots, 1 for mini lots, 2 for micro lots";
int gi_288 = 2;
string gs_292 = "--Magic No--";
int gi_300;
string gs_304 = "--CUTLOSS SETTING--";
bool gi_312 = FALSE;
string gs_316 = "If profit made is bigger than SecureProfit we close the orders";
int gi_324 = 20;
string gs_328 = "Number of orders to enable the account protection";
int gi_336 = 3;
string gs_340 = "if one will check profit from all symbols, if cero only this symbol";
bool gi_348 = FALSE;
string gs_352 = "if true, then the expert will protect the account equity to the percent specified";
bool gi_360 = FALSE;
string gs_364 = "percent of the account to protect on a set of trades";
int gi_372 = 90;
string gs_376 = "if true, then the expert will use money protection to the USD specified";
bool gi_384 = FALSE;
double gd_388 = 3000.0;
bool gi_396 = FALSE;
int gi_400 = 0;
int gi_404 = 1;
string gs_408 = "--trading time setting--";
bool gi_416 = FALSE;
bool gi_420 = TRUE;
int gi_424 = 0;
int gi_428 = 3;
bool gi_432 = TRUE;
int gi_436 = 9;
int gi_440 = 11;
bool gi_444 = TRUE;
int gi_448 = 15;
int gi_452 = 17;
bool gi_456 = TRUE;
string gs_460 = "--Others Setting--";
int gi_468 = 0;
string gs_472 = "if one the desition to go long/short will be reversed";
bool gi_480 = FALSE;
string gs_484 = "if true, instead open market orders it will open limit orders ";
bool gi_492 = FALSE;
int gi_496 = 0;
int gi_500 = Black;
int gi_504 = 16;
bool gi_508 = TRUE;
int gi_512 = 0;
int gi_516 = 0;
int gi_520 = 0;
int gi_524 = 0;
int gi_528 = 5;
double gd_532 = 0.0;
double gd_540 = 0.0;
double gd_548 = 0.0;
double gd_556 = 0.0;
double gd_564 = 0.0;
double gd_572 = 0.0;
int gi_580 = OP_BUY;
int gi_584 = 0;
int gi_588 = 0;
double gd_592 = 0.0;
int gi_600 = 0;
double gd_604 = 0.0;
int gi_612 = 0;
int gi_616 = 0;
double gd_620 = 0.0;
double gd_628 = 0.0;
double gd_636 = 0.0;
double gd_644 = 0.0;
bool gi_652 = FALSE;
double gd_656 = 0.0;
double gd_664 = 0.0;
double gd_672 = 0.0;
int gia_680[][2];
bool gi_684 = FALSE;
string gs_688 = "2030.01.12 23:00";
int gi_696 = 0;
int gi_700 = 0;
bool gi_704;

int init() {
      // код доступен только после оплаты
   }

int deinit() {
   DeleteAllObjects();
   Comment("");
   return (0);
}

int start() {
      // код доступен только после оплаты
   }
   bool li_4;
   int li_16;
   int li_0 = 0;
   string ls_8 = "";

   if (StopTradeAfterProfitReach==true && UseProfitTargetInPercent==true && ((AccountEquity()-InitialEquity)/InitialEquity)>=(StopProfitInPercent/100)) {
      CloseAll();
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}

      Comment ("HedgeMadnessSELL: Equity Reach Target....Trading has been stopped"); 
      return (0);
   }
   else Comment ("");

   if (StopTradeAfterProfitReach==true && UseEquityTargetInUSD==true && AccountEquity()>=StopEquityTargetInUSD) {
      CloseAll();
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}

      Comment ("HedgeMadnessSELL: Equity Reach Target....Trading has been stopped"); 
      return (0);
   }
   else Comment ("");

   if (StopTradeAfterLossReach==true && UseStopLossInPercent==true && ((AccountEquity()-InitialEquity)/InitialEquity)<=-(StopLossInPercent/100) ) {
      CloseAll();
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}

      Comment ("HedgeMadnessBUY: Equity Reach Stop Loss....Trading has been stopped"); 
      return (0);
   }

   if (StopTradeAfterLossReach==true && UseEquityLossInUSD==true && AccountEquity()<=StopEquityLossInUSD) {
      CloseAll();
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}
      if (OrdersTotal()>0) {Sleep (3000); CloseAll();}

      Comment ("HedgeMadnessBUY: Equity Reach Stop Loss....Trading has been stopped"); 
      return (0);
   }

   if (GlobalVariableGet("GV_CloseAllAndHalt") > 0.0) {
      gi_508 = FALSE;
      return (0);
   }
   if (gi_416) {
      gi_704 = TRUE;
      if (gi_420) {
         if (gi_424 > 18) {
            if (Hour() >= gi_424) gi_704 = FALSE;
            if (!gi_704) {
               if (gi_428 < 24)
                  if (Hour() <= gi_428) gi_704 = FALSE;
               if (gi_428 >= 0)
                  if (Hour() <= gi_428) gi_704 = FALSE;
            }
         } else
            if (Hour() >= gi_424 && Hour() <= gi_428) gi_704 = FALSE;
      }
      if (gi_704) {
         if (gi_432)
            if (Hour() >= gi_436 && Hour() <= gi_440) gi_704 = FALSE;
      }
      if (gi_704) {
         if (gi_444)
            if (Hour() >= gi_448 && Hour() <= gi_452) gi_704 = FALSE;
      }
      if (gi_704) return (0);
   }
   if (gi_288 == 0) {
      if (gi_264 != 0) gd_564 = MathCeil(AccountBalance() * gi_276 / 10000.0);
      else gd_564 = Lots;
   }
   if (gi_288 == 1) {
      if (gi_264 != 0) gd_564 = MathCeil(AccountBalance() * gi_276 / 10000.0) / 10.0;
      else gd_564 = Lots;
   }
   if (gi_288 == 2) {
      if (gi_264 != 0) gd_564 = MathCeil(AccountBalance() * gi_276 / 10000.0) / 100.0;
      else gd_564 = Lots;
   }
   if (gd_564 < 0.01) gd_564 = 0.01;
   if (gd_564 > 100.0) gd_564 = 100;
   gi_512 = 0;
   gi_520 = 0;
   gi_524 = 0;
   for (li_0 = 0; li_0 < OrdersTotal(); li_0++) {
      if (OrderSelect(li_0, SELECT_BY_POS, MODE_TRADES)) {
         if (OrderSymbol() == Symbol() && OrderMagicNumber() == gi_300) {
            if (OrderType() == OP_BUY || OrderType() == OP_SELL) {
               gi_520++;
               gi_700 = OrderOpenTime();
            }
            if (OrderType() == OP_SELLLIMIT || OrderType() == OP_BUYLIMIT) gi_524++;
            gi_512++;
         }
      }
   }
   if (gi_512 < 1)
      if (!gi_456 && DayOfWeek() == 5) return (0);
   gd_644 = MarketInfo(Symbol(), MODE_TICKVALUE);
   if (gd_644 == 0.0) gd_644 = 5;
   if (gi_384 && AccountBalance() - AccountEquity() >= gd_388) {
      ls_8 = ls_8 
      + "\nClosing all orders and stop trading because account money protection activated..";
      Print("Closing all orders and stop trading because account money protection activated.. Balance: ", AccountBalance(), " Equity: ", AccountEquity());
      gi_600 = gi_512 + 1;
      gi_508 = FALSE;
      return (0);
   }
   if (gi_396) {
      if (!(Hour() >= gi_400 && Hour() <= gi_404)) {
         ls_8 = ls_8 
         + "\nNot the designated trading hours.";
         Print("Not the designated trading hours. Profit: ", AccountProfit(), " Equity: ", AccountEquity());
         gi_600 = gi_512 + 1;
         gi_508 = FALSE;
         return (0);
      }
   }
   if (gi_212 && AccountProfit() >= gd_216) {
      ls_8 = ls_8 
      + "\nClosing all orders and stop trading because mymoney profit target reached..";
      Print("Closing all orders and stop trading because mymoney profit target reached.. Profit: ", AccountProfit(), " Equity: ", AccountEquity());
      gi_600 = gi_512 + 1;
      gi_508 = FALSE;
      return (0);
   }
   if (gi_360 && AccountEquity() <= AccountBalance() * gi_372 / 100.0) {
      ls_8 = ls_8 
      + "\nClosing all orders and stop trading because account money protection activated.";
      Print("Closing all orders and stop trading because account money protection activated. Balance: ", AccountBalance(), " Equity: ", AccountEquity());
      gi_600 = gi_512 + 1;
      gi_508 = FALSE;
      return (0);
   }
   if (!gi_456 && DayOfWeek() == 5) {
      gi_600 = gi_512 + 1;
      gi_508 = FALSE;
      ls_8 = ls_8 
      + "\nClosing all orders and stop trading because TradeOnFriday protection.";
      Print("Closing all orders and stop trading because TradeOnFriday protection.");
   }
   if (gi_468 > 0 && TimeCurrent() - gi_700 > gi_468) {
      gi_600 = gi_512 + 1;
      gi_508 = FALSE;
      ls_8 = ls_8 
      + "\nClosing all orders because OrdersTimeAlive protection.";
      Print("Closing all orders because OrdersTimeAlive protection.");
   }
   if (gi_600 > gi_512) {
      for (li_0 = OrdersTotal() - 1; li_0 >= 0; li_0--) {
         if (OrderSelect(li_0, SELECT_BY_POS, MODE_TRADES)) {
            gi_580 = OrderType();
            if ((OrderSymbol() == Symbol() && OrderMagicNumber() == gi_300) || gi_348) {
               if (gi_580 == OP_BUY || gi_580 == OP_SELL) {
                  OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), gi_528, gi_500);
                  return (0);
               }
            }
         }
      }
      for (li_0 = 0; li_0 < OrdersTotal(); li_0++) {
         if (OrderSelect(li_0, SELECT_BY_POS, MODE_TRADES)) {
            gi_580 = OrderType();
            if ((OrderSymbol() == Symbol() && OrderMagicNumber() == gi_300) || gi_348) {
               if (gi_580 == OP_SELLLIMIT || gi_580 == OP_BUYLIMIT || gi_580 == OP_BUYSTOP || gi_580 == OP_SELLSTOP) {
                  OrderDelete(OrderTicket());
                  return (0);
               }
            }
         }
      }
   }
   gi_600 = gi_512;
   if (gi_512 >= 

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

Что вы получите после оплаты

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

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

Стоимость полного кода
1 738₽