Author: Copyright �BFE 2006 Software Corp.
Price Data Components
Series array that contains the lowest prices of each barSeries array that contains the highest prices of each bar
Orders Execution
Checks for the total of open ordersIt automatically opens orders when conditions are reachedIt Closes Orders by itself
Indicators Used
Moving average indicator
Miscellaneous
It issuies visual alerts to the screen
0 Views
0 Downloads
0 Favorites

Profitability Reports

AUD/USD Oct 2024 - Jan 2025
0.00 %
Total Trades 0
Won Trades 0
Lost trades 0
Win Rate 0.0 %
Expected payoff 0.00
Gross Profit 0.00
Gross Loss 0.00
Total Net Profit 0.00
-100%
-50%
0%
50%
100%
GBP/CAD Oct 2024 - Jan 2025
0.00 %
Total Trades 0
Won Trades 0
Lost trades 0
Win Rate 0.0 %
Expected payoff 0.00
Gross Profit 0.00
Gross Loss 0.00
Total Net Profit 0.00
-100%
-50%
0%
50%
100%
GBP/USD Oct 2024 - Jan 2025
0.00 %
Total Trades 0
Won Trades 0
Lost trades 0
Win Rate 0.0 %
Expected payoff 0.00
Gross Profit 0.00
Gross Loss 0.00
Total Net Profit 0.00
-100%
-50%
0%
50%
100%
Vector
//+------------------------------------------------------------------+
//|                                                    Âåêòîðíûé.mq4 |
//|                               Copyright ©BFE 2006 Software Corp. |
//|                                                BFE2006@yandex.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright ©BFE 2006 Software Corp."
#property link      "BFE2006@yandex.ru"

extern int     MAGIC=0;
extern double LotsPercent=1;       //ïðîöåíò äëÿ ðàññ÷åòà ëîòà
extern double PrcProfit=0.5;      //ïðîöåíò äëÿ ðàññ÷åòà ïðîôèòà
extern double PrcLose=30;          //ïðöåíò ôèêñàöèè óáûòêîâ
extern double PeriodMA=PERIOD_M15;  //ïåðèîä ÌÀ
double        Lot;
double        Free,Balans,MaxL,MinL;
double        SB_openEU,SB_stopEU,SB_openGU,SB_stopGU,SB_openUC,SB_stopUC,SB_openUJ,SB_stopUJ;
double        L,H,sr,Pips_Profit,PR,ST;
double        ML,PNT,x,NP,Price,l;
double        m1,m2,m3,m4,m5,m6,m7,m8,m9;
string        SMB,EU,GU,UC,UJ,OBCH_TREND;
bool          fm;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
 //------------ Ïðîâåðÿåì âêë. ñîâåòíèêà 
  if(!IsExpertEnabled())//åñëè ëîæü 
   {Alert("Îøèáêà! Íå íàæàòà êíîïêà *Ñîâåòíèêè*");}
   else 
   {Comment("Êàê òîëüêî öåíà èçìåíèòñÿ, Ñîâåòíèê íà÷í¸ò ðàáîòó.");}  
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//---------- Çàïîìèíàåì îñíîâíûå ïàðàìåòðû
SMB=Symbol();                           //Ñèìâîë âàëþòíîé ïàðû  
Balans=AccountBalance();                //Áàëàíñ
Free=AccountEquity();                   //Ñâîáîäíûå ñðåäñòâà
MaxL=MarketInfo(SMB,MODE_MAXLOT)/10;    //Ìàêñèìàëüíûé äîïóñòèìûé ðàçìåð ëîòà c ó÷åòîì óâåëå÷åíèÿ
MinL=MarketInfo(SMB,MODE_MINLOT);       //Ìèíèìàëüíûé âîçìîæíûé ëîò
//==========   
//---------- Ñ÷èòàåì îòêðûòûå è îòëîæåííûå îðäåðà
for(int i=OrdersTotal(); i>=0; i--)
  {
  if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)
    {
    if(OrderSymbol()=="EURUSD")
      {
      if(OrderType()==OP_BUY     || OrderType()==OP_SELL)    {SB_openEU++;}
      }
    if(OrderSymbol()=="GBPUSD")
      {
      if(OrderType()==OP_BUY     || OrderType()==OP_SELL)    {SB_openGU++;}
      }
    if(OrderSymbol()=="USDCHF")
      {
      if(OrderType()==OP_BUY     || OrderType()==OP_SELL)    {SB_openUC++;}
      }
    if(OrderSymbol()=="USDJPY")
      {
      if(OrderType()==OP_BUY     || OrderType()==OP_SELL)    {SB_openUJ++;}
      }
    }
  }
 
//========== 
//---------- Ðàññ÷èòûâàåì äîïîëíèòåëüíûå ïàðàìåòðû
m4=iMA("EURUSD",PeriodMA,3,8,MODE_SMMA,PRICE_MEDIAN,0);
m5=iMA("GBPUSD",PeriodMA,3,8,MODE_SMMA,PRICE_MEDIAN,0);
m6=iMA("USDCHF",PeriodMA,3,8,MODE_SMMA,PRICE_MEDIAN,0);
m1=iMA("USDJPY",PeriodMA,3,8,MODE_SMMA,PRICE_MEDIAN,0);

m7=iMA("EURUSD",PeriodMA,7,8,MODE_SMMA,PRICE_MEDIAN,0);
m8=iMA("GBPUSD",PeriodMA,7,8,MODE_SMMA,PRICE_MEDIAN,0);
m9=iMA("USDCHF",PeriodMA,7,8,MODE_SMMA,PRICE_MEDIAN,0);
m2=iMA("USDJPY",PeriodMA,7,8,MODE_SMMA,PRICE_MEDIAN,0);

if(m4-m7>0){EU="BUY";}if(m4-m7<0){EU="SELL";}
if(m5-m8>0){GU="BUY";}if(m5-m8<0){GU="SELL";}
if(m6-m9>0){UC="BUY";}if(m6-m9<0){UC="SELL";}
if(m1-m2>0){UJ="BUY";}if(m6-m9<0){UJ="SELL";}
if((m4+m5+m6+m1)-(m7+m8+m9+m2)>0){OBCH_TREND="BUY";}
if((m4+m5+m6+m1)-(m7+m8+m9+m2)<0){OBCH_TREND="SELL";}
for(int s=1;s<=50;s++)
  {
  L=L+iLow(SMB,PERIOD_H4,1);  //ñóììà ìèíèìàëüíûõ öåí áàðîâ
  H=H+iHigh(SMB,PERIOD_H4,1); //ñóììà ìàêñèìàëüíûõ öåí áàðîâ
  }
//--- Ðàññ÷åò ñðåäíåãî ðàçáðîñà öåí ñ ó÷åòîì âàëþòíûõ ïàð   
if(SMB=="EURUSD" || SMB=="GBPUSD" || SMB=="USDCHF" || SMB=="AUDUSD"
|| SMB=="USDCAD" || SMB=="EURCHF" || SMB=="NZDUSD")                 {sr=((H-L)/s)*10000;}
if(SMB=="USDJPY" || SMB=="EURJPY")                                  {sr=((H-L)/s)*100;}
sr=(NormalizeDouble((sr),0));
Pips_Profit=sr/5;  Pips_Profit=(NormalizeDouble((Pips_Profit),0));
if(Pips_Profit>13)  {Pips_Profit=13;}                 //ðàçìåð ïèïñîâêè

//==========
//---------- Ïðèíèìàåì ðåøåíèå â çàâèñèìîñòè îò êîëëè÷åñòâà îðäåðîâ
if(SB_openEU==0){Open_Oder1();}  
if(SB_openGU==0){Open_Oder2();}
if(SB_openUC==0){Open_Oder3();}
if(SB_openUJ==0){Open_Oder4();}

if(SB_openEU==1){Pips();}
if(SB_openGU==1){Pips();}
if(SB_openUC==1){Pips();}
if(SB_openUJ==1){Pips();}

Comment("Êîë-âî îðäåðîâ: ",SB_openEU+SB_openGU+SB_openUC+SB_openUJ,
"\n","Ïèïñîâêà: ",Pips_Profit,"\n",
"EURUSD: ",EU,"\n","GBPUSD: ",GU,"\n","USDCHF: ",UC,"\n","USDJPY: ",UJ,"\n",
"Îáùèé òðåíä äëÿ USD: ",OBCH_TREND,"\n","Ãëîáàëüíûé ïðîôèò: ",PR,"\n",
"Ãëîáàëüíûé ñòîï: ",ST);

SB_openEU=0;SB_stopEU=0;SB_openGU=0;SB_stopGU=0;SB_openUC=0;SB_stopUC=0;SB_openUJ=0;SB_stopUJ=0;
sr=0; H=0;L=0;
return(0);
}

//---------- Îòêðûâàåì ïåðâûé îðäåð
void Open_Oder1()
{
//--- Ðàñ÷èòûâàåì ëîò
Lot = (AccountFreeMargin() / 10000*LotsPercent/4) / 10;
Lot=(NormalizeDouble((Lot),2));
   if(Lot<MinL){Lot=MinL;} 
   if(Lot>MaxL){Lot=MaxL;}

  if((m4+m5+m6+m1)-(m7+m8+m9+m2)>0)                                                             //BUY
  {
  if(m4>m7 && SB_openEU==0){fm=OrderSend("EURUSD",OP_BUY,Lot,Ask,3,0,0,NULL,MAGIC,0,MediumBlue);}
  }
  if((m4+m5+m6+m1)-(m7+m8+m9+m2)<0)                                                             //SELL
  {
  if(m4<m7 && SB_openEU==0){fm=OrderSend("EURUSD",OP_SELL,Lot,Bid,3,0,0,NULL,MAGIC,0,Gold);}
  }
}
//========== 
void Open_Oder2()
{
//--- Ðàñ÷èòûâàåì ëîò
Lot = (AccountFreeMargin() / 10000*LotsPercent/4) / 10;
Lot=(NormalizeDouble((Lot),2));
   if(Lot<MinL){Lot=MinL;} 
   if(Lot>MaxL){Lot=MaxL;}
   
    if((m4+m5+m6+m1)-(m7+m8+m9+m2)>0)
    {   
    if(m5>m8 && SB_openGU==0){fm=OrderSend("GBPUSD",OP_BUY,Lot,Ask,3,0,0,NULL,MAGIC,0,MediumBlue);}
    }
    if((m4+m5+m6+m1)-(m7+m8+m9+m2)<0)                                                             //SELL
    {
    if(m5<m8 && SB_openGU==0){fm=OrderSend("GBPUSD",OP_SELL,Lot,Bid,3,0,0,NULL,MAGIC,0,Gold);}
    }
}
//========== 
void Open_Oder3()
{
//--- Ðàñ÷èòûâàåì ëîò
Lot = (AccountFreeMargin() / 10000*LotsPercent/4) / 10;
Lot=(NormalizeDouble((Lot),2));
   if(Lot<MinL){Lot=MinL;} 
   if(Lot>MaxL){Lot=MaxL;}
   
    if((m4+m5+m6+m1)-(m7+m8+m9+m2)>0)
    {
    if(m6>m9 && SB_openUC==0){fm=OrderSend("USDCHF",OP_BUY,Lot,Ask,3,0,0,NULL,MAGIC,0,MediumBlue);} 
    }  
    if((m4+m5+m6+m1)-(m7+m8+m9+m2)<0)                                                             //SELL
    {
    if(m6<m9 && SB_openUC==0){fm=OrderSend("USDCHF",OP_SELL,Lot,Bid,3,0,0,NULL,MAGIC,0,Gold);}
    }
}
//==========
void Open_Oder4()
{
//--- Ðàñ÷èòûâàåì ëîò
Lot = (AccountFreeMargin() / 10000*LotsPercent/4) / 10;
Lot=(NormalizeDouble((Lot),2));
   if(Lot<MinL){Lot=MinL;} 
   if(Lot>MaxL){Lot=MaxL;}
   
    if((m4+m5+m6+m1)-(m7+m8+m9+m2)>0)
    {
    if(m1>m2 && SB_openUJ==0){fm=OrderSend("USDJPY",OP_BUY,Lot,Ask,3,0,0,NULL,MAGIC,0,MediumBlue);} 
    }  
    if((m4+m5+m6+m1)-(m7+m8+m9+m2)<0)                                                             //SELL
    {
    if(m1<m2 && SB_openUJ==0){fm=OrderSend("USDJPY",OP_SELL,Lot,Bid,3,0,0,NULL,MAGIC,0,Gold);}
    }
}
//---------- Åñëè îäèí ðûíî÷íûé îðäåð - ïèïñóåì
void Pips()
{
for(int e=OrdersTotal();e>=0;e--)
  {
  if (OrderSelect(e,SELECT_BY_POS,MODE_TRADES)==true)
    {
    if(OrderSymbol()=="EURUSD")
      {
      if(OrderType()==OP_BUY && (OrderOpenPrice()+Pips_Profit*Point)<Bid)
      {OrderClose(OrderTicket(),OrderLots(),Bid,3,Red);}
      if(OrderType()==OP_SELL && (OrderOpenPrice()-Pips_Profit*Point)>Ask)
      {OrderClose(OrderTicket(),OrderLots(),Ask,3,Red);}
      }
    if(OrderSymbol()=="GBPUSD")
      {
      if(OrderType()==OP_BUY && (OrderOpenPrice()+Pips_Profit*Point)<Bid)
      {OrderClose(OrderTicket(),OrderLots(),Bid,3,Red);}
      if(OrderType()==OP_SELL && (OrderOpenPrice()-Pips_Profit*Point)>Ask)
      {OrderClose(OrderTicket(),OrderLots(),Ask,3,Red);}
      }
    if(OrderSymbol()=="USDCHF")
      {
      if(OrderType()==OP_BUY && (OrderOpenPrice()+Pips_Profit*Point)<Bid)
      {OrderClose(OrderTicket(),OrderLots(),Bid,3,Red);}
      if(OrderType()==OP_SELL && (OrderOpenPrice()-Pips_Profit*Point)>Ask)
      {OrderClose(OrderTicket(),OrderLots(),Ask,3,Red);}
      }
    if(OrderSymbol()=="USDJPY")
      {
      if(OrderType()==OP_BUY && (OrderOpenPrice()+Pips_Profit*Point)<Bid)
      {OrderClose(OrderTicket(),OrderLots(),Bid,3,Red);}
      if(OrderType()==OP_SELL && (OrderOpenPrice()-Pips_Profit*Point)>Ask)
      {OrderClose(OrderTicket(),OrderLots(),Ask,3,Red);}
      }
    }
  }
  {//--- êîíòðîëü ïðèáûëè
  PR=AccountBalance()+(Balans/100*PrcProfit);
  PR=(NormalizeDouble((PR),2));
  if ((Free-Balans)>=(Balans/100*PrcProfit))
    {
    for (int b=OrdersTotal();b>=0; b--)
      {
      if (OrderSelect(b,SELECT_BY_POS,MODE_TRADES)==true)
        {
        if(OrderType()==OP_BUY) {OrderClose(OrderTicket(),OrderLots(),Bid,3);}
        if(OrderType()==OP_SELL){OrderClose(OrderTicket(),OrderLots(),Ask,3);}
        }
      }
    }//--- êîíòðîëü óáûòêîâ 
  ST=AccountBalance()-(Balans/100*PrcLose);
  ST=(NormalizeDouble((ST),2));
  if((Free-Balans)<=(-(Balans/100*PrcLose)))
    {
    for (int bd=OrdersTotal();bd>=0; bd--)
      {
      if (OrderSelect(bd,SELECT_BY_POS,MODE_TRADES)==true)
        {
        if(OrderType()==OP_BUY) {OrderClose(OrderTicket(),OrderLots(),Bid,3);}
        if(OrderType()==OP_SELL){OrderClose(OrderTicket(),OrderLots(),Ask,3);}
        }
      }
    }     
 } 
//==========
}

//+------------------------------------------------------------------+

Comments

Markdown supported. Formatting help

Markdown Formatting Guide

Element Markdown Syntax
Heading # H1
## H2
### H3
Bold **bold text**
Italic *italicized text*
Link [title](https://www.example.com)
Image ![alt text](image.jpg)
Code `code`
Code Block ```
code block
```
Quote > blockquote
Unordered List - Item 1
- Item 2
Ordered List 1. First item
2. Second item
Horizontal Rule ---