//وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووو
// أًààëü_3.mq4.
// بٌïîëüçَهٌٍے â êà÷هٌٍâه ïًèىهًà â ٌٍàٍüه "جîé ïهًâûé أًààëü".
// رهًمهé تîâàë¸â, ؤيهïًîïهًٍîâٌê, sk@mail.dnepr.net, ICQ 64015987, http://autograf.dp.ua/.
//وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووو
//
//
//وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووو
extern int    MA1 = 11;                                  // دهًèîن 1-é جہ
extern int    MA2 = 23;                                  // دهًèîن 2-é جہ
extern double TP =  50;                                  // ز‎éêدًîôèٍ îًنهًà
extern double SL =  15;                                  // رٍîïثîٌٌ îًنهًà
extern double Prots= 0;                                  // دًîِهيٍ îٍ ٌâîلîنيûُ ًٌهنٌٍâ
//--------------------------------------------------------------------------------------------
int
   ret,                                                  // حàïًàâëهيèه ïهًهٌه÷هيèے
   total;                                                // تًëè÷هٌٍâî îٍêًûٍûُ îًنهًîâ
//--------------------------------------------------------------------------------------------
double 
   Lot,                                                  // تîëè÷هٌٍâî ëîٍîâ
   Pred,                                                 // دًهنûنَùهه çيà÷هيèه 1-é جہ (ًîçîâ)
   Tek,                                                  // زهêَùهه    çيà÷هيèه 1-é جہ (ًîçîâ)
   Golub;                                                // زهêَùهه    çيà÷هيèه 2-é جہ(مîëَلàے)
//وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووو
int init()  
   {
//============================================================================================
   SL = SL*Point;                                        // رٍîïثîٌٌ â ïَيêٍàُ
   TP = TP*Point;                                        // ز‎éêدًîôèٍ â ïَيêٍàُ
   return;
//============================================================================================
   }  
//وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووو
int start()  
   {
//============================================================================================
   total=OrdersTotal();                                  // خلùهه êîëè÷هٌٍâî îًنهًîâ
   if (total==2)return;                                  // سوه îٍêًûٍû îلà îًنهًà
//--------------------------------------------------------------------------------------------
   Tek  =iMA(NULL,0, MA1, 0,MODE_LWMA, PRICE_TYPICAL, 0);// زهêَùهه    çيà÷هيèه 1-é جہ
   Pred =iMA(NULL,0, MA1, 0,MODE_LWMA, PRICE_TYPICAL, 1);// دًهنûنَùهه çيà÷هيèه 2-é جہ
   Golub=iMA(NULL,0, MA2, 0,MODE_LWMA, PRICE_TYPICAL, 0);// زهêَùهه    çيà÷هيèه 2-é جہ
//--------------------------------------------------------------------------------------------
   if (Peresechenie()==1) Open_Buy();                    // ؤâèوهيèه ٌيèçَ ââهًُ = îٍêً. Buy
   if (Peresechenie()==2) Open_Sell();                   // ؤâèوهيèه ٌâهًَُ âيèç = îٍêً. Sell
   return;
//============================================================================================
   }  
//وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووو
int Peresechenie()                                       // شَيêِèے îïًهنهëهيèے ïهًهٌه÷هيèے
   {
//============================================================================================
   if ((Pred<=Golub && Tek> Golub) ||
       (Pred< Golub && Tek>=Golub)  ) ret=1;             // دهًهٌه÷هيèه ٌيèçَ ââهًُ       
//--------------------------------------------------------------------------------------------
   if ((Pred>=Golub && Tek< Golub) ||
       (Pred> Golub && Tek<=Golub)  ) ret=2;             // دهًهٌه÷هيèه ٌâهًَُ âيèç
//============================================================================================
   return(ret);                                          // آîçâًàùàهى يàïًàâëهيèه ïهًهٌه÷هي.
   }
//وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووو
int Open_Buy()                                           // شَيêِèے îٍêًûٍèے Buy
   {
//============================================================================================
   if (total==1)                                         // إٌëè îًنهً âٌهمî îنèي..
      {                                                  // .. çيà÷èٍ ىîويî îٍêًûٍü نًَمîé
      OrderSelect(0, SELECT_BY_POS);                     // آûنهëèى îًنهً
      if (OrderType()==0)return;                         // إٌëè îي buy, ٍî يه îٍêًûâàهىٌے
      }
   OrderSend(Symbol(),0, Lots(), Ask, 0, Ask-SL, Ask+TP, "", 0, 0, Blue);// خٍêًûâàهىٌے
//============================================================================================
   return;
   }
//وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووو
int Open_Sell()                                          // شَيêِèے îٍêًûٍèے Sell
   {
//============================================================================================
   if (total==1)                                         // إٌëè îًنهً âٌهمî îنèي..
      {                                                  // .. çيà÷èٍ ىîويî îٍêًûٍü نًَمîé
      OrderSelect(0, SELECT_BY_POS);                     // آûنهëèى îًنهً
      if (OrderType()==1)return;                         // إٌëè îي sell, ٍî يه îٍêًûâàهىٌے
      }
   OrderSend(Symbol(),1, Lots(), Bid, 0, Bid+SL, Bid-TP, "", 0, 0, Red);// خٍêًûâàهىٌے
//============================================================================================
   return;
   }
//وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووو
double Lots()                                            // آû÷èٌëهيèه ëîٍîâ
   {
//============================================================================================
   Lot=NormalizeDouble(AccountEquity()*Prots/100/1000,1);// آû÷èٌëےهى êîëè÷. ëîٍîâ  
   double Min_Lot = MarketInfo(Symbol(), MODE_MINLOT);   // جèيèىàëüيî نîïٌٍَèىàے ٌٍîèى. ëîٍîâ
   if (Lot == 0 ) Lot = Min_Lot;                         // ؤëے ٍهٌٍà يà ïîٌٍîےي. ىèيèى. ëîٍàُ
//============================================================================================
   return(Lot);
   }
//وووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووو
//

