Binario_3_v1

Author: Provided by sencho, coded by don_forex
Profit factor:
10480.27
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
10 Views
0 Downloads
0 Favorites
Binario_3_v1
//+------------------------------------------------------------------+
//|                           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

NZD/USD Jul 2025 - Sep 2025
0.79
Total Trades 89
Won Trades 17
Lost trades 72
Win Rate 19.10 %
Expected payoff -25.04
Gross Profit 8482.10
Gross Loss -10710.60
Total Net Profit -2228.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 -15.87
Gross Profit 17551.77
Gross Loss -19202.55
Total Net Profit -1650.78
-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 -31.01
Gross Profit 6775.60
Gross Loss -9628.70
Total Net Profit -2853.10
-100%
-50%
0%
50%
100%
USD/CHF Jul 2025 - Sep 2025
0.27
Total Trades 79
Won Trades 8
Lost trades 71
Win Rate 10.13 %
Expected payoff -96.73
Gross Profit 2796.10
Gross Loss -10437.67
Total Net Profit -7641.57
-100%
-50%
0%
50%
100%
NZD/USD Jul 2025 - Sep 2025
0.42
Total Trades 48
Won Trades 8
Lost trades 40
Win Rate 16.67 %
Expected payoff -121.35
Gross Profit 4171.10
Gross Loss -9996.10
Total Net Profit -5825.00
-100%
-50%
0%
50%
100%
GBP/USD Jul 2025 - Sep 2025
1.66
Total Trades 44
Won Trades 13
Lost trades 31
Win Rate 29.55 %
Expected payoff 317.35
Gross Profit 35147.40
Gross Loss -21183.80
Total Net Profit 13963.60
-100%
-50%
0%
50%
100%
GBP/CAD Jul 2025 - Sep 2025
0.68
Total Trades 66
Won Trades 13
Lost trades 53
Win Rate 19.70 %
Expected payoff -61.52
Gross Profit 8595.72
Gross Loss -12655.77
Total Net Profit -4060.05
-100%
-50%
0%
50%
100%

Comments