Ichimoku_02

Profit factor:
1.00
Price Data Components
Series array that contains close prices for each barSeries 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
Ichimoku Kinko Hyo
10 Views
0 Downloads
0 Favorites
Ichimoku_02
//+------------------------------------------------------------------+
//|                                                    Ichimoku_v0.5 |
//|                                          Copyright © 2007, Volky |
//|          Not recommended for using with your real money trading. |
//|                                                                  |
//+------------------------------------------------------------------+
//Try with EURUSD 4H, USDJPY 1H, EURJPY 1H

//You can go to "Expert Properties > Inputs", and choose which kind of signals should be executed. "1" means YES, "0" means NO.
//There are 4 types of signals with this EA.
//CrossSignals1: Tenkan crosses Kijun on the "right" side of the Kumo.
//CrossSignals2: Tenkan crosses Kijun inside the Kumo.
//CrossSignals3: Tenkan crosses Kijun on the "wrong" side of the Kumo.
//KijunSignals: Prices run away from Kijun.

extern double CrossSignals1=1;
extern double CrossSignals2=1;
extern double CrossSignals3=1;
extern double KijunSignals=1;

int start()
  {
   double tenkan, kijun, senkouA, senkouB, chinkou;
   double pretenkan, prekijun, presenkouA, presenkouB, prechinkou;
   double KumoHigh, KumoLow;
   double buycross1, sellcross1, buycross2, sellcross2, buycross3, sellcross3, buyprice1, sellprice1;
   double lots=1;
   double profit=1000;
   double stop=1000;
   double noopen1, noopen2, noopen3, noopen4, noopen5, noopen6, noopen7, noopen8;
   int cnt, ticket, total;
   
   if(Bars<100)
     {
      Print("bars less than 100");
      return(0);  
     }

   tenkan=iIchimoku(NULL,0,9,26,52,MODE_TENKANSEN,1);
   kijun=iIchimoku(NULL,0,9,26,52,MODE_KIJUNSEN,1);
   senkouA=iIchimoku(NULL,0,9,26,52,MODE_SENKOUSPANA,1);
   senkouB=iIchimoku(NULL,0,9,26,52,MODE_SENKOUSPANB,1);
   chinkou=iIchimoku(NULL,0,9,26,52,MODE_CHINKOUSPAN,26);
   pretenkan=iIchimoku(NULL,0,9,26,52,MODE_TENKANSEN,2);
   prekijun=iIchimoku(NULL,0,9,26,52,MODE_KIJUNSEN,2);
   presenkouA=iIchimoku(NULL,0,9,26,52,MODE_SENKOUSPANA,2);
   presenkouB=iIchimoku(NULL,0,9,26,52,MODE_SENKOUSPANB,2);

      //KUMO
   if (senkouA>senkouB)
    {KumoHigh=senkouA;
     KumoLow=senkouB;
    }
   if (senkouA<=senkouB)
    {KumoHigh=senkouB;
     KumoLow=senkouA;
    }
   double KumoAv=(KumoHigh+KumoLow)/2;
   
   total=OrdersTotal();

   for(cnt=0;cnt<total;cnt++)
    {
     OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
     if(OrderMagicNumber()==1) noopen1=1;
     if(OrderMagicNumber()==2) noopen2=1;
     if(OrderMagicNumber()==3) noopen3=1;     
     if(OrderMagicNumber()==4) noopen4=1;
     if(OrderMagicNumber()==5) noopen5=1;
     if(OrderMagicNumber()==6) noopen6=1;
     if(OrderMagicNumber()==7) noopen7=1; 
     if(OrderMagicNumber()==8) noopen8=1;
    }   
   
   if (pretenkan>prekijun && tenkan<=kijun) noopen1=1;
   if (pretenkan<prekijun && tenkan>=kijun) noopen2=1;
   if ((pretenkan>prekijun && tenkan<=kijun)||(iClose(NULL,0,2)>=KumoLow && iClose(NULL,0,1)<KumoLow)) noopen3=1;
   if ((pretenkan<prekijun && tenkan>=kijun)||(iClose(NULL,0,2)<KumoHigh && iClose(NULL,0,1)>=KumoHigh)) noopen4=1;
   if ((pretenkan>prekijun && tenkan<=kijun)||(iClose(NULL,0,2)>=KumoHigh && iClose(NULL,0,1)<KumoHigh)) noopen5=1;
   if ((pretenkan<prekijun && tenkan>=kijun)||(iClose(NULL,0,2)<KumoLow && iClose(NULL,0,1)>=KumoLow)) noopen6=1;
   if (pretenkan>prekijun && tenkan<=kijun) noopen7=1;
   if (pretenkan<prekijun && tenkan>=kijun) noopen8=1;
   
   
   //on the "right side" of Kumo
   if (noopen1==0 && pretenkan<=prekijun && tenkan>kijun && iClose(NULL,0,1)>=KumoHigh) buycross1=1;
   if (noopen2==0 && pretenkan>=prekijun && tenkan<kijun && iClose(NULL,0,1)<KumoLow) sellcross1=1;
   
   //inside the Kumo
   if (noopen3==0 && pretenkan<=prekijun && tenkan>kijun && iClose(NULL,0,1)>=KumoLow && iClose(NULL,0,1)<KumoHigh) buycross2=1;
   if (noopen4==0 && pretenkan>=prekijun && tenkan<kijun && iClose(NULL,0,1)>=KumoLow && iClose(NULL,0,1)<KumoHigh) sellcross2=1;
   
   //on the "wrong side" of Kumo
   if (noopen5==0 && pretenkan<=prekijun && tenkan>kijun && iClose(NULL,0,1)<KumoLow) buycross3=1;
   if (noopen6==0 && pretenkan>=prekijun && tenkan<kijun && iClose(NULL,0,1)>=KumoHigh) sellcross3=1;

   //Price Leaves Kijun
   if (noopen7==0 && iLow(NULL,0,2)<=prekijun && iLow(NULL,0,1)>kijun && iLow(NULL,0,1)>=KumoHigh) buyprice1=1;
   if (noopen8==0 && iLow(NULL,0,2)>=prekijun && iLow(NULL,0,1)<kijun && iHigh(NULL,0,1)<=KumoLow) sellprice1=1;
   
   noopen1=0;
   noopen2=0;
   noopen3=0;
   noopen4=0;
   noopen5=0;
   noopen6=0;
   noopen7=0;
   noopen8=0;
   
   //POSITION OPENINGS
    if(CrossSignals1==true && buycross1==1 && noopen1==0) ticket=OrderSend(Symbol(),OP_BUY,lots,Ask,3,0,Ask+profit*Point,"BUY1",1,0,Green);
    if(CrossSignals1==true && sellcross1==1 && noopen2==0) ticket=OrderSend(Symbol(),OP_SELL,lots,Bid,3,0,Bid-profit*Point,"SELL1",2,0,Red);
    if(CrossSignals2==true && buycross2==1 && noopen3==0) ticket=OrderSend(Symbol(),OP_BUY,lots,Ask,3,0,Ask+profit*Point,"BUY2",3,0,Green);
    if(CrossSignals2==true && sellcross2==1 && noopen4==0) ticket=OrderSend(Symbol(),OP_SELL,lots,Bid,3,0,Bid-profit*Point,"SELL2",4,0,Red);
    if(CrossSignals3==true && buycross3==1 && noopen5==0) ticket=OrderSend(Symbol(),OP_BUY,lots,Ask,3,0,Ask+profit*Point,"BUY3",5,0,Green);
    if(CrossSignals3==true && sellcross3==1 && noopen6==0) ticket=OrderSend(Symbol(),OP_SELL,lots,Bid,3,0,Bid-profit*Point,"SELL3",6,0,Red);
    if(KijunSignals==true && buyprice1==1 && noopen7==0) ticket=OrderSend(Symbol(),OP_BUY,lots,Ask,3,0,Ask+profit*Point,"BUYP1",7,0,Green);
    if(KijunSignals==true && sellprice1==1 && noopen8==0) ticket=OrderSend(Symbol(),OP_SELL,lots,Bid,3,0,Bid-profit*Point,"SELLP1",8,0,Red);
    
   //CLOSING
    for(cnt=0;cnt<total;cnt++)
     {
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      
      if(OrderMagicNumber()==1 && pretenkan>prekijun && tenkan<=kijun) 
       {OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet);
        }
      
      if(OrderMagicNumber()==2 && pretenkan<prekijun && tenkan>=kijun) 
       {OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet);
       }
       
      if(OrderMagicNumber()==3)
       {if ((pretenkan>prekijun && tenkan<=kijun)||(iClose(NULL,0,2)>=KumoLow && iClose(NULL,0,1)<KumoLow)) OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet);
       }
      
      if(OrderMagicNumber()==4)
       {if ((pretenkan<prekijun && tenkan>=kijun)||(iClose(NULL,0,2)<KumoHigh && iClose(NULL,0,1)>=KumoHigh)) OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet);
       }
      
      if(OrderMagicNumber()==5)
       {if ((pretenkan>prekijun && tenkan<=kijun)||(iClose(NULL,0,2)>=KumoHigh && iClose(NULL,0,1)<KumoHigh)) OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet);
       }
      
      if(OrderMagicNumber()==6)
       {if ((pretenkan<prekijun && tenkan>=kijun)||(iClose(NULL,0,2)<KumoLow && iClose(NULL,0,1)>=KumoLow)) OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet);
       }
      
      if(OrderMagicNumber()==7 && pretenkan>prekijun && tenkan<=kijun) 
       {OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet);
        }
      
      if(OrderMagicNumber()==8 && pretenkan<prekijun && tenkan>=kijun) 
       {OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet);
       }
      
      
     }
     
buycross1=0;
sellcross1=0;
buycross2=0; 
sellcross2=0;
buycross3=0;
sellcross3=0;
buyprice1=0;
sellprice1=1;            
  }

Profitability Reports

NZD/USD Jul 2025 - Sep 2025
1.58
Total Trades 105
Won Trades 35
Lost trades 70
Win Rate 33.33 %
Expected payoff 47.08
Gross Profit 13460.00
Gross Loss -8517.00
Total Net Profit 4943.00
-100%
-50%
0%
50%
100%
GBP/USD Jul 2025 - Sep 2025
1.16
Total Trades 110
Won Trades 52
Lost trades 58
Win Rate 47.27 %
Expected payoff 33.85
Gross Profit 27696.00
Gross Loss -23972.00
Total Net Profit 3724.00
-100%
-50%
0%
50%
100%
GBP/CAD Jul 2025 - Sep 2025
0.52
Total Trades 66
Won Trades 21
Lost trades 45
Win Rate 31.82 %
Expected payoff -128.79
Gross Profit 9178.68
Gross Loss -17678.93
Total Net Profit -8500.25
-100%
-50%
0%
50%
100%
GBP/AUD Jul 2025 - Sep 2025
1.40
Total Trades 108
Won Trades 48
Lost trades 60
Win Rate 44.44 %
Expected payoff 42.63
Gross Profit 16119.53
Gross Loss -11515.71
Total Net Profit 4603.82
-100%
-50%
0%
50%
100%
EUR/USD Jul 2025 - Sep 2025
0.00
Total Trades 18
Won Trades 4
Lost trades 14
Win Rate 22.22 %
Expected payoff -234421.61
Gross Profit 1305.00
Gross Loss -4220894.00
Total Net Profit -4219589.00
-100%
-50%
0%
50%
100%
AUD/USD Jul 2025 - Sep 2025
0.69
Total Trades 112
Won Trades 42
Lost trades 70
Win Rate 37.50 %
Expected payoff -40.45
Gross Profit 9856.00
Gross Loss -14386.00
Total Net Profit -4530.00
-100%
-50%
0%
50%
100%
USD/JPY Jul 2025 - Sep 2025
0.22
Total Trades 12
Won Trades 6
Lost trades 6
Win Rate 50.00 %
Expected payoff -770.86
Gross Profit 2590.95
Gross Loss -11841.28
Total Net Profit -9250.33
-100%
-50%
0%
50%
100%
USD/CAD Jul 2025 - Sep 2025
0.38
Total Trades 57
Won Trades 18
Lost trades 39
Win Rate 31.58 %
Expected payoff -103.48
Gross Profit 3542.61
Gross Loss -9440.71
Total Net Profit -5898.10
-100%
-50%
0%
50%
100%
NZD/USD Jul 2025 - Sep 2025
1.02
Total Trades 51
Won Trades 17
Lost trades 34
Win Rate 33.33 %
Expected payoff 3.57
Gross Profit 9622.00
Gross Loss -9440.00
Total Net Profit 182.00
-100%
-50%
0%
50%
100%
GBP/USD Jul 2025 - Sep 2025
1.54
Total Trades 57
Won Trades 31
Lost trades 26
Win Rate 54.39 %
Expected payoff 124.51
Gross Profit 20165.00
Gross Loss -13068.00
Total Net Profit 7097.00
-100%
-50%
0%
50%
100%

Comments