NatusekoProtrader4HStrategy

Author: FORTRADER.RU
Orders Execution
Checks for the total of open ordersIt automatically opens orders when conditions are reachedIt Closes Orders by itself
Indicators Used
Moving average indicatorMACD HistogramMoving average indicatorRelative strength indexParabolic Stop and Reverse system
0 Views
0 Downloads
0 Favorites

Profitability Reports

AUD/USD Oct 2024 - Jan 2025
16.00 %
Total Trades 110
Won Trades 0
Lost trades 0
Win Rate 0.00 %
Expected payoff -8.30
Gross Profit 176.65
Gross Loss -1089.40
Total Net Profit -912.75
-100%
-50%
0%
50%
100%
GBP/USD Oct 2024 - Jan 2025
13.00 %
Total Trades 106
Won Trades 13
Lost trades 93
Win Rate 0.12 %
Expected payoff -12.14
Gross Profit 196.45
Gross Loss -1483.15
Total Net Profit -1286.70
-100%
-50%
0%
50%
100%
NatusekoProtrader4HStrategy
//+------------------------------------------------------------------+
//|                                  NatusekoProtrader4HStrategy.mq4 |
//|                                                     FORTRADER.RU |
//|                                              http://FORTRADER.RU |
//+------------------------------------------------------------------+
#property copyright "FORTRADER.RU"
#property link      "http://FORTRADER.RU"
extern string x="Íàñòðîéêè öåíîâûõ EMA:";
extern  int perema1=13;
extern  int perema2=21;
extern  int persma3=55;

extern string x1="Íàñòðîéêè MACD:";
extern int lowema4=5;
extern int fastema4=200;

extern string x2="Íàñòðîéêè MACD Bolinger:";
extern int bbper=20;
extern int bbotcl=1;

extern string x3="Íàñòðîéêè MACD SMA:";
extern int smaper=3;

extern string x4="Íàñòðîéêè RSI:";
extern int rsiper=21;
extern int rsiur=50;

extern string x5="Íàñòðîéêè ñèëû äâèæåíèÿ:";
extern int sila=100;

extern string x6="Íàñòðîéêè ParabolicSar:";
extern double step=0.02;
extern double maximum=0.2;

extern string x7="Íàñòðîéêè âûáîðà StopLoss:";
extern bool StopLossParabolic=false;
extern bool StopLossEMA=true;
extern int otstup=0;

extern string x8="Íàñòðîéêè âûáîðà TakeProfit:";
extern bool TakeProfitParabolic=true;
extern bool TakeProfitRSI=true;
extern int rsitpurbuy=65;
extern int rsitpursell=35;


int maxdrow=24250;
double macd[1000];
int start()
  {
  
        NatusPro4HStrClassicPattern();
        NatusPro4HStrPosManager();

   return(0);
  }
int buy,sell,i,flagtest,wait,waits;int nummodb,nummods;
int NatusPro4HStrClassicPattern()
{  double sl;
     buy=0;sell=0;
     for(int  i=0;i<OrdersTotal();i++)
         {
           OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
           if(OrderType()==OP_BUY ){buy=1;}
           if(OrderType()==OP_SELL ){sell=1;}
         }  
         
 double ema13 =iMA(NULL,0,perema1,0,MODE_EMA,PRICE_CLOSE,1);
 double ema21 =iMA(NULL,0,perema2,0,MODE_EMA,PRICE_CLOSE,1);
 double sma55 =iMA(NULL,0,persma3,0,MODE_EMA,PRICE_CLOSE,1);
 
 //double looker=iCustom(NULL, 0, "NatusekoProtrader4HStrategy",1,1);
 
        ArraySetAsSeries(macd,true);
        for( i=10; i>=0; i--)          
        {
        macd[i]=iMACD(NULL,0,lowema4,fastema4,1,PRICE_CLOSE,MODE_MAIN,i);
        }
        
        if(i<=1)
        {     
             double bbmain=iBandsOnArray(macd,0,bbper,bbotcl,0,MODE_MAIN,1);
             double bbup=iBandsOnArray(macd,0,bbper,bbotcl,0,MODE_UPPER,1);
             double bblow=iBandsOnArray(macd,0,bbper,bbotcl,0,MODE_LOWER,1);
             double macdsma=iMAOnArray(macd,0,smaper,0,MODE_SMA,1);
         }
         
         double rsi=iRSI(NULL,0,rsiper,PRICE_CLOSE,1);
         double pb=iSAR(NULL,0,step,maximum,1);
         
         double high=MathAbs(High[1]-Close[1]);  
         double telo=MathAbs(Close[1]-Open[1]); 
         double low=MathAbs(Open[1]-Low[1]); 
         
         
  if(ema13>ema21 && ema13>sma55 && rsi>rsiur && rsi<rsitpurbuy &&macd[1]>macdsma && macd[1]>bbmain && macdsma>bbmain && telo>0 && telo>low && telo>high && pb<Close[1]&& buy==0)
  {
   if((Close[1]-sma55)<sila*Point)
   {if(StopLossParabolic==true){sl=pb-otstup*Point;}if(StopLossEMA==true){sl=sma55-otstup*Point;}
   OrderSend(Symbol(),OP_BUY,0.1,Ask,3,NormalizeDouble(sl,4),0,"FORTRADER.RU",0,0,Red);
   nummodb=0;
   }
   else{wait=1;}
  }
  
  if(Low[1]<=ema13 && rsi<rsitpurbuy && pb<Close[1] && wait==1&& buy==0)
      {if(StopLossParabolic==true){sl=pb-otstup*Point;}if(StopLossEMA==true){sl=sma55-otstup*Point;}
         OrderSend(Symbol(),OP_BUY,0.1,Ask,3,NormalizeDouble(sl,4),0,"FORTRADER.RU",0,0,Red);
         nummodb=0;
         wait=0;
      }
  
  
  /******************************************************************************************************************************************/
  if(ema13<ema21 && ema13<sma55 && rsi<rsiur && rsi>rsitpursell &&macd[1]<macdsma && macd[1]<bbmain && macdsma<bbmain && telo>0 && telo>low && telo>high && pb>Close[1]&& sell==0)
  {
   if((sma55-Close[1])<sila*Point)
   {if(StopLossParabolic==true){sl=pb+otstup*Point;}if(StopLossEMA==true){sl=sma55+otstup*Point;}
   OrderSend(Symbol(),OP_SELL,0.1,Bid,3,NormalizeDouble(sl,4),0,"FORTRADER.RU",0,0,Red);
   nummods=0;
   }
   else{waits=1;}
  }
  
  if(High[1]>=ema13 && rsi>rsitpursell && pb>Close[1] && waits==1&& sell==0)
      {if(StopLossParabolic==true){sl=pb+otstup*Point;}if(StopLossEMA==true){sl=sma55+otstup*Point;}
         OrderSend(Symbol(),OP_SELL,0.1,Bid,3,NormalizeDouble(sl,4),0,"FORTRADER.RU",0,0,Red);
         nummods=0;
         waits=0;
      }
  
 /******************************************************************************************************************************************/ 
}

int  NatusPro4HStrPosManager()
{double lt; 
double rsi=iRSI(NULL,0,rsiper,PRICE_CLOSE,1);
double pb=iSAR(NULL,0,step,maximum,1);
 
   for( i=1; i<=OrdersTotal(); i++)          
     {
      if (OrderSelect(i-1,SELECT_BY_POS)==true) 
        {                                       
              if(OrderType()==OP_BUY && OrderProfit()>5 && rsi>rsitpurbuy && TakeProfitRSI==true && OrderSymbol()==Symbol() && nummodb==0)
              {  lt=NormalizeDouble(OrderLots()/2,2);if(lt<=0.01){lt=0.01;}
                 OrderClose(OrderTicket(),lt,Bid,3,Violet); 
                 nummodb++;
              }
         }
             
         if (OrderSelect(i-1,SELECT_BY_POS)==true) 
            {  
              if(OrderType()==OP_BUY && OrderProfit()>5 && pb>Close[1] && TakeProfitParabolic==true &&OrderSymbol()==Symbol() && nummodb==0)
              { lt=NormalizeDouble(OrderLots()/2,2);if(lt<=0.01){lt=0.01;}
                 OrderClose(OrderTicket(),lt,Bid,3,Violet); 
                 nummodb++;   
              }
             }
             
            if (OrderSelect(i-1,SELECT_BY_POS)==true) 
            {  
              if(OrderType()==OP_BUY && OrderProfit()>5 && rsi<rsiur  &&OrderSymbol()==Symbol())
              { 
                 OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); 
              }
             }
             
          
             
             /**********************************************************************************************************************************/
             
            if (OrderSelect(i-1,SELECT_BY_POS)==true) 
            { 
              
              if(OrderType()==OP_SELL && OrderProfit()>5 && rsi<rsitpursell && TakeProfitRSI==true  &&OrderSymbol()==Symbol() && nummods==0)
              {lt=NormalizeDouble(OrderLots()/2,2);if(lt<=0.01){lt=0.01;}
               OrderClose(OrderTicket(),lt,Ask,3,Violet); 
               nummods++; 
              }
            }
             
        if (OrderSelect(i-1,SELECT_BY_POS)==true) 
        { 
              if(OrderType()==OP_SELL && OrderProfit()>5 && pb<Close[1] && TakeProfitParabolic==true &&  OrderSymbol()==Symbol() && nummods==0)
              {  lt=NormalizeDouble(OrderLots()/2,2);if(lt<=0.01){lt=0.01;}
                 OrderClose(OrderTicket(),lt,Ask,3,Violet); 
                 nummods++;
                  
              }
        }
      
                 if (OrderSelect(i-1,SELECT_BY_POS)==true) 
            {  
              if(OrderType()==OP_SELL && OrderProfit()>5 && rsi>rsiur  &&OrderSymbol()==Symbol())
              { 
                 OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); 
              }
             }
 }
 

 
 
}

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 ---