Author: Provided by sencho, coded by don_forex
Profit factor:
9611.30
Price Data Components
Series array that contains close prices for each bar
Orders Execution
Checks for the total of open ordersIt can change open orders parameters, due to possible stepping strategyIt automatically opens orders when conditions are reached
Indicators Used
Moving average indicator
9 Views
0 Downloads
0 Favorites
Binario_3
/*-----------------------------+
|			       |
| Shared by www.Aptrafx.com    |
|			       |
+------------------------------*/

//+------------------------------------------------------------------+
//|                           Copyright 2005, Gordago Software Corp. |
//|                                          http://www.gordago.com/ |
//+------------------------------------------------------------------+
  
// I want to thank Michal Rutka, michal1@zonnet.nl, for helping me correct
// the mistakes that I made... Good Job!!

#property copyright "Provided by sencho, coded by don_forex"
#property link      "http://www.gordago.com"

extern int TakeProfit = 850;
extern int TrailingStop = 850;
extern int PipDifference = 25;
extern double Lots = 0.1;
extern double MaximumRisk = 10;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int start(){
   int cnt, ticket;
   if(Bars<100){
      Print("bars less than 100");
      return(0);
   }
   if(TakeProfit<10){
      Print("TakeProfit less than 10");
      return(0);
   }
   string TradeSymbol = Symbol();
   double MA144H = MathRound(iMA(NULL,0,144,0,MODE_EMA,PRICE_HIGH,0)/Point)*Point;
   double MA144L = MathRound(iMA(NULL,0,144,0,MODE_EMA,PRICE_LOW,0)/Point)*Point;
   double Spread = Ask-Bid; // MarketInfo(TradeSymbol,MODE_SPREAD);
   double BuyPrice      = MA144H + Spread+PipDifference*Point;
   double BuyStopLoss   = MA144L - Point;
   double BuyTakeProfit = MA144H +(PipDifference+TakeProfit)*Point;
   double SellPrice     = MA144L -(PipDifference)*Point;
   double SellStopLoss  = MA144H + Spread+Point;
   double SellTakeProfit= MA144L - Spread-(PipDifference+TakeProfit)*Point;
   double lot=NormalizeDouble(AccountFreeMargin()*MaximumRisk/50000,1);
   double close=iClose(NULL,0,0);
   int total=OrdersTotal();
   
   bool need_long  = true;
   bool need_short = true;
   // First update existing orders.
   for(cnt=0;cnt<total;cnt++) {
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      if(OrderSymbol()==Symbol() && OrderMagicNumber() == 16384){
         if(OrderType() == OP_BUYSTOP){
            need_long = false;
            if (OrderStopLoss()!=BuyStopLoss){
               Print(BuyStopLoss, " ",OrderStopLoss());
               OrderModify(OrderTicket(),BuyPrice,BuyStopLoss,BuyTakeProfit,0,Green);
            }
         }
         if(OrderType() == OP_SELLSTOP){
            need_short = false;
            if (OrderStopLoss()!=SellStopLoss){
               Print(SellStopLoss, " ",OrderStopLoss());
               OrderModify(OrderTicket(),SellPrice,SellStopLoss,SellTakeProfit,0,Green);
            }
         }
         if(OrderType()==OP_BUY){
            need_long = false;
            if (OrderStopLoss()<BuyStopLoss){
               Print(BuyStopLoss, " ",OrderStopLoss());
               OrderModify(OrderTicket(),OrderOpenPrice(),BuyStopLoss,BuyTakeProfit,0,Green);
               OrderDelete(OrderTicket());
            }
            if(TrailingStop>0) {
               if(Bid-OrderOpenPrice()>Point*TrailingStop) {
                  if(OrderStopLoss()<Bid-Point*TrailingStop) {
                     OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);
                     return(0);
                  }
               }
            }
         }
         if(OrderType()==OP_SELL){
            need_short = false;
            if (OrderStopLoss()>SellStopLoss){
               Print(SellStopLoss, " ",OrderStopLoss());
               OrderModify(OrderTicket(),OrderOpenPrice(),SellStopLoss,SellTakeProfit,0,Green);
               OrderDelete(OrderTicket());
            }
            if(TrailingStop>0) {
               if((OrderOpenPrice()-Ask)>(Point*TrailingStop)) {
                  if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0)) {
                     OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);
                     return(0);
                  }
               }
            }
         }
      }
   }
      
   if(AccountFreeMargin()<(1000*lot)){
      Print("We have no money. Free Margin = ", AccountFreeMargin());
      return(0);
   }
       
   if (close<MA144H && close>MA144L){
      if(need_long)
         ticket=OrderSend(Symbol(),OP_BUYSTOP,lot,BuyPrice,3,BuyStopLoss,BuyTakeProfit,"Binario_v3",16384,0,Green);
      if(need_short)
         ticket=OrderSend(Symbol(),OP_SELLSTOP,lot,SellPrice,3,SellStopLoss,SellTakeProfit,"Binario_v3",16384,0,Red);
   }   
}

Profitability Reports

USD/CAD Jul 2025 - Sep 2025
0.67
Total Trades 106
Won Trades 18
Lost trades 88
Win Rate 16.98 %
Expected payoff -34.76
Gross Profit 7350.69
Gross Loss -11035.28
Total Net Profit -3684.59
-100%
-50%
0%
50%
100%
NZD/USD Jul 2025 - Sep 2025
0.78
Total Trades 89
Won Trades 17
Lost trades 72
Win Rate 19.10 %
Expected payoff -26.62
Gross Profit 8395.30
Gross Loss -10764.80
Total Net Profit -2369.50
-100%
-50%
0%
50%
100%
GBP/USD Jul 2025 - Sep 2025
1.19
Total Trades 90
Won Trades 20
Lost trades 70
Win Rate 22.22 %
Expected payoff 69.18
Gross Profit 38981.30
Gross Loss -32755.50
Total Net Profit 6225.80
-100%
-50%
0%
50%
100%
GBP/CAD Jul 2025 - Sep 2025
0.25
Total Trades 114
Won Trades 9
Lost trades 105
Win Rate 7.89 %
Expected payoff -83.47
Gross Profit 3175.16
Gross Loss -12691.16
Total Net Profit -9516.00
-100%
-50%
0%
50%
100%
GBP/AUD Jul 2025 - Sep 2025
0.91
Total Trades 104
Won Trades 18
Lost trades 86
Win Rate 17.31 %
Expected payoff -16.43
Gross Profit 17141.39
Gross Loss -18849.60
Total Net Profit -1708.21
-100%
-50%
0%
50%
100%
EUR/USD Jul 2025 - Sep 2025
103099.19
Total Trades 19
Won Trades 5
Lost trades 14
Win Rate 26.32 %
Expected payoff 16526639.00
Gross Profit 314009194.90
Gross Loss -3045.70
Total Net Profit 314006149.20
-100%
-50%
0%
50%
100%
AUD/USD Jul 2025 - Sep 2025
0.70
Total Trades 92
Won Trades 17
Lost trades 75
Win Rate 18.48 %
Expected payoff -30.97
Gross Profit 6788.50
Gross Loss -9638.00
Total Net Profit -2849.50
-100%
-50%
0%
50%
100%
USD/JPY Jul 2025 - Sep 2025
1.46
Total Trades 54
Won Trades 15
Lost trades 39
Win Rate 27.78 %
Expected payoff 125.81
Gross Profit 21624.43
Gross Loss -14830.76
Total Net Profit 6793.67
-100%
-50%
0%
50%
100%
USD/CHF Jul 2025 - Sep 2025
0.24
Total Trades 79
Won Trades 8
Lost trades 71
Win Rate 10.13 %
Expected payoff -101.55
Gross Profit 2478.53
Gross Loss -10501.36
Total Net Profit -8022.83
-100%
-50%
0%
50%
100%
USD/CAD Jul 2025 - Sep 2025
0.55
Total Trades 66
Won Trades 10
Lost trades 56
Win Rate 15.15 %
Expected payoff -64.04
Gross Profit 5216.79
Gross Loss -9443.27
Total Net Profit -4226.48
-100%
-50%
0%
50%
100%

Comments