T3MA(MTC)





//+------------------------------------------------------------------+
//|                                                    T3MA(MTC).mq4 |
//|                                               Áåçáîðîäîâ Àëåêñåé |
//|                                                   AlexeiBv@ya.ru |
//+------------------------------------------------------------------+
#property copyright "Áåçáîðîäîâ Àëåêñåé"
#property link      "AlexeiBv@ya.ru"

extern double ÐàçìåðËîòà=1.0;
extern bool ÈñïîëüçîâàòüËîññ = true;
extern int Ëîññ = 40;
extern bool ÈñïîëüçîâàòüÏðîôèò = true;
extern int Ïðîôèò = 11;
extern bool ÈñïîëüçîâàòüÎäíîâðÑäåëêè = true;
extern int ÁàðÈíäèêàòîð = 1;


extern int Ìàãè÷åñêîå×èñëî=1234;
extern bool ÈñäÑèãíàë=true;


//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
double LastOrder=0;
int start()
  {
//----
 int    i=0;
double m0,m1,m2;
int Îðäåð=0;
double ×èñëîËîòîâ=ÐàçìåðËîòà;
double ÑòîïÏîòåðè=0;
double ÂçÿòüÏðîôèò=0;
int Ìàãè÷åñêîå×èñëî1;
datetime ÑðîêÈñòå÷åíèÿ=0;
string Êîìåíòàðèé = "Îðäåð ïî Ò3ÌÀ";
int èñïÎðäåð=0;
int cmd;
double Öåíà;
int Ïðîñêàëüçûâàíèå=3;
color ÖâåòÑèìâîëà = 0x008000;

 m0=iCustom(NULL,0,"T3MA-ALARM",true,0,ÁàðÈíäèêàòîð);
 m1=iCustom(NULL,0,"T3MA-ALARM",true,1,ÁàðÈíäèêàòîð);

 Comment("m0="+m0+" m1="+m1+" LastOrder"+LastOrder); 

  if(m0!=0.0 && m0!=LastOrder && (ÈñïîëüçîâàòüÎäíîâðÑäåëêè==true || !ExistPositions()) )
  { 
    LastOrder=m0;
    ÑòîïÏîòåðè=0.0;
    if(ÈñïîëüçîâàòüËîññ==1)
    {
     ÑòîïÏîòåðè=Bid-Ëîññ*Point;
    } 

    cmd=OP_BUY; Öåíà=Ask;
    èñïÎðäåð=1;
    Ìàãè÷åñêîå×èñëî1=Ìàãè÷åñêîå×èñëî;
   
    ÂçÿòüÏðîôèò=0;
    if(ÈñïîëüçîâàòüÏðîôèò==1)
     ÂçÿòüÏðîôèò=(Bid + Ïðîôèò*Point);
  } 

 
  if(m1!=0.0 && m1!=LastOrder && (ÈñïîëüçîâàòüÎäíîâðÑäåëêè==true || !ExistPositions()) )
  { 
    LastOrder=m1;
    ÑòîïÏîòåðè=0.0;
    if(ÈñïîëüçîâàòüËîññ==1)
    {
     ÑòîïÏîòåðè=Bid+Ëîññ*Point;
    } 

    cmd=OP_SELL; Öåíà=Bid;
    èñïÎðäåð=1;
    Ìàãè÷åñêîå×èñëî1=Ìàãè÷åñêîå×èñëî;
   
    ÂçÿòüÏðîôèò=0;
    if(ÈñïîëüçîâàòüÏðîôèò==1)
     ÂçÿòüÏðîôèò=(Bid - Ïðîôèò*Point);
  } 
 
  
 if(èñïÎðäåð>0)
 {
   Îðäåð=OrderSend(
       Symbol(),
       cmd,
       ×èñëîËîòîâ,
       Öåíà,
       Ïðîñêàëüçûâàíèå,
       ÑòîïÏîòåðè,
       ÂçÿòüÏðîôèò,
       Êîìåíòàðèé,
       Ìàãè÷åñêîå×èñëî1,
       ÑðîêÈñòå÷åíèÿ,
       ÖâåòÑèìâîëà      );
  if(Îðäåð<1) 
  {
   Print("Íå óäàëîñü óñòàíîâèòü îðäåð íà Buy, êîä îøèáêè #",GetLastError());
  }     
  else
  {

    if(ÈñäÑèãíàë==true){PlaySound("alert.wav");}

  }
 }  
//----
   return(0);
  }
//+------------------------------------------------------------------+


bool ExistPositions() 
{
 for (int i=0; i<OrdersTotal(); i++) 
 {
  if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) 
  {
   if (OrderSymbol()==Symbol()) 
   {
    return(True);
   }
  } 
 } 
 return(false);
}





Sample





Analysis



Market Information Used:



Indicator Curves created:


Indicators Used:




Custom Indicators Used:
T3MA-ALARM

Order Management characteristics:
Checks for the total of open orders


Other Features:

It plays sound alerts