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

DDR Custom Assisten Badai

ddr custom assisten badai.mq4
Вы автор или правообладатель?

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

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

О программе

DDR Custom Assisten Badai — это торговый советник для MetaTrader 4, написанный на языке MQL4. Программа предназначена для автоматического мониторинга открытых позиций и закрытия парных ордеров, когда совокупная прибыль по ним превышает заданный пользователем порог в долларах.

Советник работает с четырьмя режимами торговли: BUY-BUY, SELL-SELL, SELL-BUY и BUY-SELL. Каждый режим имеет собственные магические номера для фильтрации позиций и отдельную целевую прибыль. Все операции выполняются через стандартные торговые функции MQL4.

На графике отображается информация об аккаунте (номер, плечо, спред, баланс, эквити), а также данные по открытым позициям в каждом из четырёх режимов: цены входа, объёмы и текущая прибыль. Также предусмотрены кнопки для массового закрытия позиций и механизм ограничения по дате действия.

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

НастройкаОписание
DDR_BUY_BUY Включает или отключает режим BUY-BUY — автоматическое закрытие парных покупательских позиций при достижении целевой прибыли.
Magic_Buy_Teratas1 Магический номер для идентификации позиции с наивысшей ценой входа в режиме BUY-BUY.
Magic_Buy_Terbawah1 Магический номер для идентификации позиции с наинизшей ценой входа в режиме BUY-BUY.
Profit_In_Dollar_buy_buy Целевая прибыль в долларах для автоматического закрытия парных позиций в режиме BUY-BUY.
DDR_SELL_SELL Включает или отключает режим SELL-SELL — автоматическое закрытие парных продажных позиций при достижении целевой прибыли.
Magic_Sell_Terbawah2 Магический номер для идентификации позиции с наинизшей ценой входа в режиме SELL-SELL.
Magic_Sell_Teratas2 Магический номер для идентификации позиции с наивысшей ценой входа в режиме SELL-SELL.
Profit_In_Dollar_sell_sell Целевая прибыль в долларах для автоматического закрытия парных позиций в режиме SELL-SELL.
DDR_SELL_BUY Включает или отключает режим SELL-BUY — автоматическое закрытие парных позиций (продажа и покупка) при достижении целевой прибыли.
Magic_Buy_Teratas3 Магический номер для идентификации позиции с наивысшей ценой входа в режиме SELL-BUY.
Magic_Sell_Teratas3 Магический номер для идентификации позиции с наивысшей ценой входа в режиме SELL-BUY.
Profit_In_Dollar_sell_buy Целевая прибыль в долларах для автоматического закрытия парных позиций в режиме SELL-BUY.
DDR_BUY_SELL Включает или отключает режим BUY-SELL — автоматическое закрытие парных позиций (покупка и продажа) при достижении целевой прибыли.
Magic_Buy_Terbawah4 Магический номер для идентификации позиции с наинизшей ценой входа в режиме BUY-SELL.
Magic_Sell_Terbawah4 Магический номер для идентификации позиции с наинизшей ценой входа в режиме BUY-SELL.
Profit_In_Dollar_buy_sell Целевая прибыль в долларах для автоматического закрытия парных позиций в режиме BUY-SELL.
Получить полный код

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

???//+------------------------------------------------------------------+

#property version   "1.00"

double maxdrawdown = 0;
double prosenmaxdrawdown = 0;
double highestbalance = 0;

int opterbanyak = 0;

double timestart;

int ACCOUNT1  = 0;   //<===CHANGE NUMBER HERE

string EXPIRE = "2029.09.05";  //<=== CHANGE DATE FOR EXPIRED HERE,

extern bool DDR_BUY_BUY = true;
extern int Magic_Buy_Teratas1 = 0;//Magic Buy Teratas
extern int Magic_Buy_Terbawah1= 0;//Magic Buy Terbawah
extern double Profit_In_Dollar_buy_buy = 10.5; //Profit In Dollar

extern bool DDR_SELL_SELL = true;
extern int Magic_Sell_Terbawah2 = 0;//Magic Sell Terbawah
extern int Magic_Sell_Teratas2  = 0;//Magic Sell Teratas
extern double Profit_In_Dollar_sell_sell = 10.5;//Profit In Dollar

extern bool DDR_SELL_BUY = true;
extern int Magic_Buy_Teratas3 = 0;//Magic Buy Teratas
extern int Magic_Sell_Teratas3= 0;//Magic Sell Teratas
extern double Profit_In_Dollar_sell_buy = 10.5;//Profit In Dollar

extern bool DDR_BUY_SELL = true;
extern int Magic_Buy_Terbawah4 = 0;//Magic Buy Terbawah
extern int Magic_Sell_Terbawah4= 0;//Magic Sell terbawah
extern double Profit_In_Dollar_buy_sell = 10.5;//Profit In Dollar

 int JAM_CUTLOSS = 99;

int tanggalddbesar = 0;

double biglot = 0;

 bool OPEN_BUY  = true;
 bool OPEN_SELL = true; 

 int CEK_SIGNAL = 1;

double lotsawalbuy;
double lotsawalsell;
double lotsbuy;
double lotssell;

enum opsimarty
{
marty_by_floating,
marty_by_multiply
};

int Slippage=3000;

int b1,s1,totalpendingbuy,totalpendingsell,totalopopened,d,dall,totalopclosed,totalopclosedall,x,f,g,h,k,y,z,jumlahbuy,jumlahbuylimit,jumlahselllimit,jumlahsell,jumlahbuystop,jumlahsellstop;
double POBUY[999], POSELL[999],BUY[999], SELL[999], BUYLIMIT[999], SELLLIMIT[999], BUYSTOP[999], SELLSTOP[999],OPOPEN[999],OPCLOSE[999],OPCLOSEall[999];

double minimumbalance = 999999999;

int l,jumlahlot;
double LOTS[99];
int prec=0;
int a=0;
int b=0;
double pt,minlot,stoplevel;
int i;

color  FontColorUp1 = Red;  
color  FontColorDn1 = White; 
color  FontColor = Blue;
color  FontColorUp2 = Yellow;  
color  FontColorDn2 = Lime; 
color  FontUP = Lime;  
color  Font = White; 
color  FontDOWN = Red; 

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

void OnDeinit(const int reason)
  {

    ObjectDelete("Market_Price_Label1"); 
    ObjectDelete("Market_Price_Label2"); 
    ObjectDelete("Market_Price_Label3"); 
    ObjectDelete("Market_Price_Label4"); 
    ObjectDelete("Market_Price_Label5"); 
    ObjectDelete("Market_Price_Label6"); 
    ObjectDelete("Market_Price_Label7"); 
    ObjectDelete("Market_Price_Label8"); 
    ObjectDelete("Market_Price_Label9"); 
    ObjectDelete("Market_Price_Label10"); 
    ObjectDelete("Market_Price_Label11"); 
    ObjectDelete("Market_Price_Label12"); 
    ObjectDelete("Market_Price_Label13"); 
    ObjectDelete("Market_Price_Label14"); 
    ObjectDelete("Market_Price_Label15"); 
    ObjectDelete("Market_Price_Label16"); 
    ObjectDelete("Market_Price_Label17"); 
    ObjectDelete("Market_Price_Label18"); 
    ObjectDelete("Market_Price_Label19"); 
    ObjectDelete("Market_Price_Label20"); 
    ObjectDelete("Market_Price_Label21"); 
    ObjectDelete("Market_Price_Label22"); 
    ObjectDelete("Market_Price_Label23"); 
    ObjectDelete("Market_Price_Label24"); 
    ObjectDelete("Market_Price_Label25"); 
    ObjectDelete("Market_Price_Label26"); 
    ObjectDelete("Market_Price_Label27"); 
    ObjectDelete("Market_Price_Label28"); 
    ObjectDelete("Market_Price_Label29"); 
    ObjectDelete("Market_Price_Label30"); 
    ObjectDelete("Market_Price_Label31"); 
    ObjectDelete("Market_Price_Label32"); 
    ObjectDelete("Market_Price_Label33"); 
    ObjectDelete("Market_Price_Label34"); 
    ObjectDelete("Market_Price_Label35"); 
    ObjectDelete("Market_Price_Label36"); 
    ObjectDelete("Market_Price_Label37"); 
    ObjectDelete("Market_Price_Label38"); 
    ObjectDelete("Market_Price_Label39"); 
    ObjectDelete("Market_Price_Label40"); 
    ObjectDelete("Market_Price_Label41"); 
    ObjectDelete("Market_Price_Label42"); 
    ObjectDelete("Market_Price_Label43"); 
    ObjectDelete("Market_Price_Label44"); 
    ObjectDelete("Market_Price_Label45"); 
    ObjectDelete("Market_Price_Label46"); 
    ObjectDelete("Market_Price_Label47"); 
    ObjectDelete("Market_Price_Label48"); 
    ObjectDelete("Market_Price_Label49"); 
    ObjectDelete("Market_Price_Label50");

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

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

   if(timestart>0)
  {
  double runtime = (TimeCurrent()-timestart)/60;
  }
  if((TimeCurrent()-timestart)/60<60)
  {
  string textrun = "MENIT";
  }
  if((TimeCurrent()-timestart)/60>60)
  {
  textrun = "JAM";
  runtime = (TimeCurrent()-timestart)/3600;
  }
   if((TimeCurrent()-timestart)/60>1440)
  {
  textrun = "HARI";
  runtime = (TimeCurrent()-timestart)/86400;
  }

    if(TimeCurrent()>=StrToTime(EXPIRE))
    {
    Comment("EA EXPIRED !!");
    ObjectsDeleteAll();
    return(0);
    }

  if(AccountNumber()!=ACCOUNT1  && ACCOUNT1 >0)
     {
        Comment("NOMOR AKUN TIDAK TERDAFTAR");
     }

 if(TimeCurrent()<StrToTime(EXPIRE))
    {

  if( (AccountNumber()==ACCOUNT1&&ACCOUNT1>0) || ACCOUNT1==0)
     {

  Comment("EA RUNNING...");

y=0; f=0; g=0; h=0; k=0; z=0; jumlahbuy=0; jumlahsell=0; jumlahbuylimit=0; jumlahselllimit=0; jumlahsellstop=0; jumlahbuystop=0;
   for(x=0; x<OrdersTotal(); x++)
   {
      if(OrderSelect(x, SELECT_BY_POS, MODE_TRADES))
      {
      if (OrderSymbol()!=Symbol()) continue;
      if (OrderType()==OP_BUY)
      {  BUY[y] = OrderOpenPrice();
         y++;
         jumlahbuy++;
      }
      else
      if (OrderType()==OP_SELL)
      {  SELL[z] = OrderOpenPrice();
         z++;
         jumlahsell++;
      }
   else
      if (OrderType()==OP_BUYLIMIT)
      {  BUYLIMIT[f] = OrderOpenPrice();
         f++;
         jumlahbuylimit++;
      }
        else
      if (OrderType()==OP_SELLLIMIT)
      {  SELLLIMIT[g] = OrderOpenPrice();
         g++;
         jumlahselllimit++;
      }
       else
      if (OrderType()==OP_SELLSTOP)
      {  SELLSTOP[h] = OrderOpenPrice();
         h++;
         jumlahsellstop++;
      }
     else 
     if (OrderType()==OP_BUYSTOP)
      {  BUYSTOP[k] = OrderOpenPrice();
         k++;
         jumlahbuystop++;
      }
     }   
   }

double SPREAD = (Ask-Bid)/pt;

if(jumlahbuy+jumlahsell>0)
{
double floating = (AccountEquity()-AccountBalance())/AccountBalance()*100;
}

   double lastlot=0;
   int lastoptype = 99;
   for(i=0; i<OrdersTotal(); i++)
   {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol()) continue;
      lastlot=OrderLots();
      lastoptype = OrderType();
      }
   }

     double profit=0;
     double prosenprofit=0;
     double lotstotal=0;
   for(int i28=0; i28<OrdersTotal(); i28++)
   {
      if(OrderSelect(i28,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol()) continue;
      profit+=(OrderProfit()+OrderCommission()+OrderSwap());
      prosenprofit = profit/AccountBalance()*100;
      lotstotal+=OrderLots();
      }
   }

     double profitbuy    = 0;
     double lastlotbuy   = 0;
     double totallotbuy  = 0;
     double totalhargabuy= 0;
     double hargaratabuy = 0;
     datetime lastopentimebuy = 0;
     double hargaslbuy = 0;
   for(int i27=0; i27<OrdersTotal(); i27++)
   {
      if(OrderSelect(i27,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol() || OrderType()==OP_SELL || OrderType()>1) continue;
      if(OrderType()==OP_BUY)
      {
      profitbuy+=(OrderProfit()+OrderCommission()+OrderSwap());
      lastlotbuy = OrderLots();
      totallotbuy+=OrderLots();
      totalhargabuy+=(OrderLots()*OrderOpenPrice());
      hargaratabuy= totalhargabuy/(totallotbuy);
      lastopentimebuy = OrderOpenTime();
      hargaslbuy = OrderStopLoss();
      }
      }
   }

     double profitsell    = 0;
     double lastlotsell   = 0;
     double totallotsell  = 0;
     double totalhargasell= 0;
     double hargaratasell = 0;
     datetime lastopentimesell = 0;
     double hargaslsell = 0;
   for(int i26=0; i26<OrdersTotal(); i26++)
   {
      if(OrderSelect(i26,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol() || OrderType()==OP_BUY || OrderType()>1) continue;
      if(OrderType()==OP_SELL)
      {
      profitsell+=(OrderProfit()+OrderCommission()+OrderSwap());
      lastlotsell = OrderLots();
      totallotsell+=OrderLots();
      totalhargasell+=(OrderLots()*OrderOpenPrice());
      hargaratasell= totalhargasell/(totallotsell);
      lastopentimesell = OrderOpenTime();
      hargaslsell = OrderStopLoss();
      }
      }
   }

     double profitlama    = 0;
     double lotlama   = 0;
     int optypelama = 99;
     double sllama = 0;
   for(i=0; i<OrdersHistoryTotal(); i++)
   {
      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
      {
      if(OrderSymbol()!=Symbol() || OrderType()>1) continue;
     {
      profitlama=(OrderProfit()+OrderCommission()+OrderSwap());
      lotlama   = OrderLots();
     optypelama = OrderType();
     sllama = MathAbs((OrderOpenPrice()-OrderClosePrice())/pt);
      }
      }
   }

     double profitlamabuy    = 0;
     double lotlamabuy   = 0;
   for(i=0; i<OrdersHistoryTotal(); i++)
   {
      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
      {
      if(OrderSymbol()!=Symbol() || OrderType()==OP_SELL || OrderType()>1) continue;
      if(OrderType()==OP_BUY)
      {
      profitlamabuy=(OrderProfit()+OrderCommission()+OrderSwap());
      lotlamabuy = OrderLots();
     }
      }
   }

     double profitlamasell    = 0;
     double lotlamasell   = 0;
   for(i=0; i<OrdersHistoryTotal(); i++)
   {
      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
      {
      if(OrderSymbol()!=Symbol() || OrderType()==OP_BUY || OrderType()>1) continue;
      if(OrderType()==OP_SELL)
      {
      profitlamasell=(OrderProfit()+OrderCommission()+OrderSwap());
      lotlamasell = OrderLots();
     }
      }
   }

   {

    if (iOpen(Symbol(),0,0) > iOpen(Symbol(),0,1)) FontColor = FontColorUp1;
    if (iOpen(Symbol(),0,0)<  iOpen(Symbol(),0,1)) FontColor = FontColorDn1;
    if (iClose(Symbol(),0,0) > iClose(Symbol(),0,1) ) FontColor = FontColorUp2;
    if (iClose(Symbol(),0,0) < iClose(Symbol(),0,1) ) FontColor = FontColorDn2;
    if (Ask>iOpen(Symbol(),0,0)) Font=FontUP;
    if (Bid>iOpen(Symbol(),0,0)) Font=FontUP;
    if (Ask<iOpen(Symbol(),0,0)) Font=FontDOWN;
    if (Bid<iOpen(Symbol(),0,0)) Font=FontDOWN;

   }

   double CLOSE0 = iClose(Symbol(),0,0);

   double  OPEN1 =  iOpen(Symbol(),0,1);
   double CLOSE1 = iClose(Symbol(),0,1);
   double  HIGH1 =  iHigh(Symbol(),0,1);
   double   LOW1 =   iLow(Symbol(),0,1);

   double body1 = MathAbs((CLOSE1-OPEN1)/pt);
   double hilo1 = MathAbs((HIGH1-LOW1)/pt);

   double BULL1 = CLOSE1> OPEN1;
   double BEAR1 = CLOSE1< OPEN1;
   double FLAT1 = CLOSE1==OPEN1;

   double  OPEN2 =  iOpen(Symbol(),0,2);
   double CLOSE2 = iClose(Symbol(),0,2);
   double  HIGH2 =  iHigh(Symbol(),0,2);
   double   LOW2 =   iLow(Symbol(),0,2);

   double body2 = MathAbs((CLOSE2-OPEN2)/pt);
   double hilo2 = MathAbs((HIGH2-LOW2)/pt);

   double BULL2 = CLOSE2> OPEN2;
   double BEAR2 = CLOSE2< OPEN2;
   double FLAT2 = CLOSE2==OPEN2;

   double  OPEN3 =  iOpen(Symbol(),0,3);
   double CLOSE3 = iClose(Symbol(),0,3);
   double  HIGH3 =  iHigh(Symbol(),0,3);
   double   LOW3 =   iLow(Symbol(),0,3);

   double body3 = MathAbs((CLOSE3-OPEN3)/pt);
   double hilo3 = MathAbs((HIGH3-LOW3)/pt);

   double BULL3 = CLOSE3> OPEN3;
   double BEAR3 = CLOSE3< OPEN3;
   double FLAT3 = CLOSE3==OPEN3;

   double  OPEN4 =  iOpen(Symbol(),0,4);
   double CLOSE4 = iClose(Symbol(),0,4);
   double  HIGH4 =  iHigh(Symbol(),0,4);
   double   LOW4 =   iLow(Symbol(),0,4);

   double body4 = MathAbs((CLOSE4-OPEN4)/pt);
   double hilo4 = MathAbs((HIGH4-LOW4)/pt);

   double BULL4 = CLOSE4> OPEN4;
   double BEAR4 = CLOSE4< OPEN4;
   double FLAT4 = CLOSE4==OPEN4;

   double  OPEN5 =  iOpen(Symbol(),0,5);
   double CLOSE5 = iClose(Symbol(),0,5);
   double  HIGH5 =  iHigh(Symbol(),0,5);
   double   LOW5 =   iLow(Symbol(),0,5);

   double body5 = MathAbs((CLOSE5-OPEN5)/pt);
   double hilo5 = MathAbs((HIGH5-LOW5)/pt);

   double BULL5 = CLOSE5> OPEN5;
   double BEAR5 = CLOSE5< OPEN5;
   double FLAT5 = CLOSE5==OPEN5;

  double tickvalue = MarketInfo(Symbol(),MODE_TICKVALUE);

  if(DDR_BUY_BUY==true)
  {

   double buytertinggi1 = 0;
   double lotbuytertinggi1 = 0;
   int tiketbuytertinggi1 = 0;
   double profitbuytertinggi1=0;
   for(int i20=0; i20<OrdersTotal(); i20++)
   {
      if(OrderSelect(i20,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=Magic_Buy_Teratas1 || OrderType()==OP_SELLLIMIT || OrderType()==OP_SELL || OrderType()==OP_SELLSTOP || (buytertinggi1!=0 && OrderOpenPrice()<buytertinggi1) ) continue;
      if(OrderType()==OP_BUY || OrderType()==OP_BUYSTOP || OrderType()==OP_BUYLIMIT)
      {
      buytertinggi1=(OrderOpenPrice());
      lotbuytertinggi1 = OrderLots();
      tiketbuytertinggi1=OrderTicket();
      profitbuytertinggi1 = OrderProfit()+OrderCommission()+OrderSwap();
      }
      }
   }

   double buyterendah1 = 0;
   double profitbuyterendah1 = 0;
   double lotbuyterendah1 = 0;
   int tiketbuyterendah1 = 0;
   for(int i19=0; i19<OrdersTotal(); i19++)
   {
      if(OrderSelect(i19,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=Magic_Buy_Terbawah1 || OrderType()==OP_SELLLIMIT || OrderType()==OP_SELL || OrderType()==OP_SELLSTOP || (buyterendah1!=0 && OrderOpenPrice()>buyterendah1) ) continue;
      if(OrderType()==OP_BUY || OrderType()==OP_BUYSTOP || OrderType()==OP_BUYLIMIT)
      {
      buyterendah1=(OrderOpenPrice());
      lotbuyterendah1 = OrderLots();
      tiketbuyterendah1 = OrderTicket();
      profitbuyterendah1 = OrderProfit()+OrderCommission()+OrderSwap();
      }
      }
   }

 if(profitbuytertinggi1+profitbuyterendah1>Profit_In_Dollar_buy_buy)
 {
    int close1 = OrderClose(tiketbuytertinggi1,OrderLots(),Bid,Slippage,CLR_NONE);
    int close2 = OrderClose(tiketbuyterendah1 ,OrderLots(),Bid,Slippage,CLR_NONE);
 }

  }

  if(DDR_SELL_SELL==true)
  {

   double sellterendah2 = 0;
   double lotsellterendah2 = 0;
   int tiketsellterendah2 = 0;
   double profitsellterendah2 = 0;
   for(int i18=0; i18<OrdersTotal(); i18++)
   {
      if(OrderSelect(i18,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=Magic_Sell_Terbawah2 || OrderType()==OP_BUYLIMIT || OrderType()==OP_BUY || OrderType()==OP_BUYSTOP || (sellterendah2!=0 && OrderOpenPrice()>sellterendah2) ) continue;
      if(OrderType()==OP_SELL || OrderType()==OP_SELLSTOP || OrderType()==OP_SELLLIMIT)
      {
      sellterendah2=NormalizeDouble(OrderOpenPrice(),Digits);
      lotsellterendah2 = OrderLots();
      tiketsellterendah2=OrderTicket();
      profitsellterendah2 = OrderProfit()+OrderSwap()+OrderCommission();
      }
      }
   }

   double selltertinggi2 = 0;
   double lotselltertinggi2 = 0;
   int tiketselltertinggi2 = 0;
   double profitselltertinggi2 = 0;
   for(int i21=0; i21<OrdersTotal(); i21++)
   {
      if(OrderSelect(i21,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=Magic_Sell_Teratas2 || OrderType()==OP_BUYLIMIT || OrderType()==OP_BUY || OrderType()==OP_BUYSTOP || (selltertinggi2!=0 && OrderOpenPrice()<selltertinggi2) ) continue;
      if(OrderType()==OP_SELL || OrderType()==OP_SELLSTOP || OrderType()==OP_SELLLIMIT)
      {
      selltertinggi2=NormalizeDouble(OrderOpenPrice(),Digits);
      lotselltertinggi2 = OrderLots();
      tiketselltertinggi2 = OrderTicket();
      profitselltertinggi2 = OrderProfit()+OrderSwap()+OrderCommission();
      }
      }
   }

 if(profitsellterendah2+profitselltertinggi2>Profit_In_Dollar_sell_sell)
 {
    int close3 = OrderClose(tiketsellterendah2 ,OrderLots(),Ask,Slippage,CLR_NONE);
    int close4 = OrderClose(tiketselltertinggi2,OrderLots(),Ask,Slippage,CLR_NONE);
 }

  }

  if(DDR_SELL_BUY==true)
  {

   double buytertinggi3 = 0;
   double lotbuytertinggi3 = 0;
   int tiketbuytertinggi3 = 0;
   double profitbuytertinggi3=0;
   for(i20=0; i20<OrdersTotal(); i20++)
   {
      if(OrderSelect(i20,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=Magic_Buy_Teratas3 || OrderType()==OP_SELLLIMIT || OrderType()==OP_SELL || OrderType()==OP_SELLSTOP || (buytertinggi3!=0 && OrderOpenPrice()<buytertinggi3) ) continue;
      if(OrderType()==OP_BUY || OrderType()==OP_BUYSTOP || OrderType()==OP_BUYLIMIT)
      {
      buytertinggi3=(OrderOpenPrice());
      lotbuytertinggi3 = OrderLots();
      tiketbuytertinggi3=OrderTicket();
      profitbuytertinggi3 = OrderProfit()+OrderCommission()+OrderSwap();
      }
      }
   }

   double selltertinggi3 = 0;
   double lotselltertinggi3 = 0;
   int tiketselltertinggi3 = 0;
   double profitselltertinggi3 = 0;
   for(i21=0; i21<OrdersTotal(); i21++)
   {
      if(OrderSelect(i21,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=Magic_Sell_Teratas3 || OrderType()==OP_BUYLIMIT || OrderType()==OP_BUY || OrderType()==OP_BUYSTOP || (selltertinggi3!=0 && OrderOpenPrice()<selltertinggi3) ) continue;
      if(OrderType()==OP_SELL || OrderType()==OP_SELLSTOP || OrderType()==OP_SELLLIMIT)
      {
      selltertinggi3=NormalizeDouble(OrderOpenPrice(),Digits);
      lotselltertinggi3 = OrderLots();
      tiketselltertinggi3 = OrderTicket();
      profitselltertinggi3 = OrderProfit()+OrderSwap()+OrderCommission();
      }
      }
   }

 if(profitbuytertinggi3+profitselltertinggi3>Profit_In_Dollar_sell_buy)
 {
    int close5 = OrderClose(tiketbuytertinggi3 ,OrderLots(),Bid,Slippage,CLR_NONE);
    int close6 = OrderClose(tiketselltertinggi3,OrderLots(),Ask,Slippage,CLR_NONE);
 }

  }

  if(DDR_BUY_SELL==true)
  {

   double buyterendah4 = 0;
   double profitbuyterendah4 = 0;
   double lotbuyterendah4 = 0;
   int tiketbuyterendah4 = 0;
   for(i19=0; i19<OrdersTotal(); i19++)
   {
      if(OrderSelect(i19,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=Magic_Buy_Terbawah4 || OrderType()==OP_SELLLIMIT || OrderType()==OP_SELL || OrderType()==OP_SELLSTOP || (buyterendah4!=0 && OrderOpenPrice()>buyterendah4) ) continue;
      if(OrderType()==OP_BUY || OrderType()==OP_BUYSTOP || OrderType()==OP_BUYLIMIT)
      {
      buyterendah4=(OrderOpenPrice());
      lotbuyterendah4 = OrderLots();
      tiketbuyterendah4 = OrderTicket();
      profitbuyterendah4 = OrderProfit()+OrderCommission()+OrderSwap();
      }
      }
   }

  double sellterendah4 = 0;
   double lotsellterendah4 = 0;
   int tiketsellterendah4 = 0;
   double profitsellterendah4 = 0;
   for(i18=0; i18<OrdersTotal(); i18++)
   {
      if(OrderSelect(i18,SELECT_BY_POS,MODE_TRADES))
      {
      if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=Magic_Sell_Terbawah4 || OrderType()==OP_BUYLIMIT || OrderType()==OP_BUY || OrderType()==OP_BUYSTOP || (sellterendah4!=0 && OrderOpenPrice()>sellterendah4) ) continue;
      if(OrderType()==OP_SELL || OrderType()==OP_SELLSTOP || OrderType()==OP_SELLLIMIT)
      {
      sellterendah4=NormalizeDouble(OrderOpenPrice(),Digits);
      lotsellterendah4 = OrderLots();
      tiketsellterendah4=OrderTicket();
      profitsellterendah4 = OrderProfit()+OrderSwap()+OrderCommission();
      }
      }
   }

 if(profitbuyterendah4+profitsellterendah4>Profit_In_Dollar_buy_sell)
 {
    int close7 = OrderClose(tiketbuyterendah4 ,OrderLots(),Bid,Slippage,CLR_NONE);
    int close8 = OrderClose(tiketsellterendah4,OrderLots(),Ask,Slippage,CLR_NONE);
 }

  }

  {

  {

   string Market_Price2 =   WindowExpertName();

   ObjectCreate("Market_Price_Label2", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Market_Price_Label2", Market_Price2, 14, "Arial Black", FontColor);
   ObjectSet("Market_Price_Label2", OBJPROP_CORNER, 0);
   ObjectSet("Market_Price_Label2", OBJPROP_XDISTANCE, 100);
   ObjectSet("Market_Price_Label2", OBJPROP_YDISTANCE, 20);
  }

   {

   string Market_Price31 =   "My Account      : "+AccountNumber();

   ObjectCreate("Market_Price_Label31", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Market_Price_Label31", Market_Price31, 11, "Arial", clrWhite);
   ObjectSet("Market_Price_Label31", OBJPROP_CORNER, 0);
   ObjectSet("Market_Price_Label31", OBJPROP_XDISTANCE, 60);
   ObjectSet("Market_Price_Label31", OBJPROP_YDISTANCE, 50);
  }

   {

   string Market_Price28 =   "Leverage          : "+AccountLeverage();
   ObjectCreate("Market_Price_Label28", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Market_Price_Label28", Market_Price28, 11, "Arial", clrWhite);
   ObjectSet("Market_Price_Label28", OBJPROP_CORNER, 0);
   ObjectSet("Market_Price_Label28", OBJPROP_XDISTANCE, 60);
   ObjectSet("Market_Price_Label28", OBJPROP_YDISTANCE, 75);
  }

  {

   string Market_Price29 =   "Spread             : "+DoubleToStr(SPREAD,2);
   ObjectCreate("Market_Price_Label29", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Market_Price_Label29", Market_Price29, 11, "Arial", clrWhite);
   ObjectSet("Market_Price_Label29", OBJPROP_CORNER, 0);
   ObjectSet("Market_Price_Label29", OBJPROP_XDISTANCE, 60);
   ObjectSet("Market_Price_Label29", OBJPROP_YDISTANCE, 100);
  }

    {

   string Market_Price6 =   "Balance           : "+DoubleToStr(AccountBalance(),2);

   ObjectCreate("Market_Price_Label6", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Market_Price_Label6", Market_Price6, 11, "Arial", clrWhite);
   ObjectSet("Market_Price_Label6", OBJPROP_CORNER, 0);
   ObjectSet("Market_Price_Label6", OBJPROP_XDISTANCE, 60);
   ObjectSet("Market_Price_Label6", OBJPROP_YDISTANCE, 125);
  }
  {

   string Market_Price5 = "Equity              : " +DoubleToStr(AccountEquity(),2);

   ObjectCreate("Market_Price_Label5", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Market_Price_Label5", Market_Price5, 11, "Arial", clrWhite);
   ObjectSet("Market_Price_Label5", OBJPROP_CORNER, 0);
   ObjectSet("Market_Price_Label5", OBJPROP_XDISTANCE, 60);
   ObjectSet("Market_Price_Label5", OBJPROP_YDISTANCE, 150);
  }

  {

   string Market_Price7 =   "DDR BUY-BUY";

   ObjectCreate("Market_Price_Label7", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Market_Price_Label7", Market_Price7, 11, "Arial", clrWhite);
   ObjectSet("Market_Price_Label7", OBJPROP_CORNER, 0);
   ObjectSet("Market_Price_Label7", OBJPROP_XDISTANCE, 60);
   ObjectSet("Market_Price_Label7", OBJPROP_YDISTANCE, 175);
  }

  {

   string Market_Price8 =   "Buy Tertinggi("+Magic_Buy_Teratas1+") : "+DoubleToStr(buytertinggi1,Digits)+"("+DoubleToStr(lotbuytertinggi1,2)+")";

   ObjectCreate("Market_Price_Label8", OBJ_LABEL, 0, 0, 0);
   ObjectSetText("Market_Price_Label8", Market_Price8, 11, "Arial", clrWhite);
   ObjectSet("Market_Price_Label8", OBJPROP_CORNER, 0);
   ObjectSet("Market_Price_Label8", OBJPROP_XDISTANCE, 60);
   ObjectS

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

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

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

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

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

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

Стоимость полного кода
3 539,80₽ ≈ $43.26