Jelajahi Sumber

ticket # 1483

AhtashamShahzad3 2 tahun lalu
induk
melakukan
c9292fa5d6
2 mengubah file dengan 31 tambahan dan 174 penghapusan
  1. TEMPAT SAMPAH
      BOS_CHOCH.ex5
  2. 31 174
      BOS_CHOCH.mq5

TEMPAT SAMPAH
BOS_CHOCH.ex5


+ 31 - 174
BOS_CHOCH.mq5

@@ -956,7 +956,7 @@ void choch(int i)
 
          choch_at_index = true;
 
-         ObjectCreate(0,"line4"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,i)+20*Point());
+         ObjectCreate(0,"line4"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,i)+60*Point());
          ObjectSetString(0,"line4"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"choch");
 
          ObjectCreate(0,"line7"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_ARROW_UP,0,iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,i)-100*Point());
@@ -1636,8 +1636,8 @@ void third_Condition(int i)
 
       if(low2 < low)
         {
-         ObjectCreate(0,"line5"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,i));
-         ObjectSetString(0,"line5"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
+         //ObjectCreate(0,"line5"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,i));
+        // ObjectSetString(0,"line5"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
          low = low2;
 
          low_index_time = iTime(Symbol(),PERIOD_CURRENT,i);
@@ -1660,8 +1660,8 @@ void third_Condition(int i)
 
       if(high2 > high)
         {
-         ObjectCreate(0,"line51"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,i));
-         ObjectSetString(0,"line51"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
+        // ObjectCreate(0,"line51"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,i));
+        // ObjectSetString(0,"line51"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
          high = high2;
 
          high_index_time = iTime(Symbol(),PERIOD_CURRENT,i);
@@ -1692,8 +1692,8 @@ void third_Condition(int i)
 
       if(high2 > high)
         {
-         ObjectCreate(0,"line6"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,i));
-         ObjectSetString(0,"line6"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
+       //  ObjectCreate(0,"line6"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,i));
+       //  ObjectSetString(0,"line6"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
 
          high = high2;
 
@@ -1714,8 +1714,8 @@ void third_Condition(int i)
 
       if(low2 < low)
         {
-         ObjectCreate(0,"line61"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,i));
-         ObjectSetString(0,"line61"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
+      //   ObjectCreate(0,"line61"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,i));
+      //   ObjectSetString(0,"line61"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
 
          low = low2;
 
@@ -1822,17 +1822,6 @@ void placeBuyTrade()
 
    buyTp = iLow(Symbol(),PERIOD_CURRENT,tp);
 
-   // tp_date_time_buy = 0.0;
-//
-//   if(stoploss != 0)
-//     {
-//      buySL = Ask - (stoploss *10* Point());
-//     }
-//if(takeProfit != 0)
-//  {
-//   buyTp = Ask + (takeProfit *10* Point());
-//  }
-
    double distance = (Ask - buySL)/Point();
    if(trade.PositionOpen(Symbol(),ORDER_TYPE_BUY,getlot(distance),Ask,buySL,buyTp,"Buy Trade Placed"))
      {
@@ -1909,16 +1898,9 @@ void placeSellTrade()
    int tp = iBarShift(Symbol(), PERIOD_CURRENT,tp_date_time_sell,false);
    sell_Tp = iLow(Symbol(),PERIOD_CURRENT,tp);
 
-   //tp_date_time_sell = 0.0;
+//tp_date_time_sell = 0.0;
    double distance = (sell_SL - Bid)/Point();
-//if(stoploss != 0)
-//  {
-//   sell_SL = Bid + (stoploss *10* Point());
-//  }
-//if(takeProfit != 0)
-//  {
-//   sell_Tp = Bid - (takeProfit *10* Point());
-//  }
+
 
 
    if(trade.PositionOpen(Symbol(),ORDER_TYPE_SELL,getlot(distance),Bid,sell_SL,sell_Tp,"Sell Trade Placed"))
@@ -1948,27 +1930,27 @@ int OnInit()
 
    int idx = 0;
 
-//int user_input_index = iBarShift(Symbol(), PERIOD_CURRENT,inpTime, false);
-//if(ObjectCreate(0,"line",OBJ_VLINE,0,inpTime,iLow(Symbol(),PERIOD_CURRENT,user_input_index)))
-//  {
-//   Print("vertical line created on chart : ");
-//  }
-//else
-//  {
-//   Print("error in creating line : ");
-//  }
-
-
-   int user_input_index = iBarShift(Symbol(), PERIOD_CURRENT, D'2021.09.01 15:30:27', false);
-   if(ObjectCreate(0,"line",OBJ_VLINE,0,D'2021.09.01 15:30:27',iLow(Symbol(),PERIOD_CURRENT,user_input_index)))
+   int user_input_index = iBarShift(Symbol(), PERIOD_CURRENT,inpTime, false);
+   if(ObjectCreate(0,"line",OBJ_VLINE,0,inpTime,iLow(Symbol(),PERIOD_CURRENT,user_input_index)))
      {
-      Print("object created on chart : ");
+      Print("vertical line created on chart : ");
      }
    else
      {
-      Print("object not created : ");
+      Print("error in creating line : ");
      }
 
+
+//int user_input_index = iBarShift(Symbol(), PERIOD_CURRENT, D'2021.09.01 15:30:27', false);
+//if(ObjectCreate(0,"line",OBJ_VLINE,0,D'2021.09.01 15:30:27',iLow(Symbol(),PERIOD_CURRENT,user_input_index)))
+//  {
+//   Print("object created on chart : ");
+//  }
+//else
+//  {
+//   Print("object not created : ");
+//  }
+
    object_find(object_name);
    if(object_find(object_name) == true)
      {
@@ -2103,29 +2085,17 @@ void OnTick()
          if(od_1[m].choch_index_date_time != 0)
            {
 
-            //Print("current time is ",TimeCurrent());
-            //Print("time is ",od_1[m].Time_of_candle_For_trade);
-            //Print("signal is ",od_1[m].Signal);
-
 
             if(od_1[m].EntryCon == 1 && iTime(Symbol(),PERIOD_CURRENT,1) == od_1[m].Time_of_candle_For_trade && od_1[m].Signal == "buy" && od_1[m].Time_of_candle_For_trade != 0 /*&& HIGH != 0 && LOW != 0*/)
               {
-               // Print("time is greater and signal is buy ",TimeCurrent());
 
                int reversal_indexx = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].reversal_index_date_time,false);
                int close_index = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].choch_index_date_time,false);
 
-               //                     Print("reversal_index_date_time ",od_1[m].reversal_index_date_time);
-               //                     Print("choch_index_date_time ",od_1[m].choch_index_date_time);
-               //
-               //                     Print(" high is ",iHigh(Symbol(),PERIOD_CURRENT,reversal_indexx));
-               //                     Print("low of current candle  ",iLow(Symbol(),PERIOD_CURRENT,0));
-               //                     Print("close of chock is ",iClose(Symbol(),PERIOD_CURRENT,close_index));
-               //                     Print("close of current candle is ",iClose(Symbol(),PERIOD_CURRENT,0));
                double reversalMax = iOpen(Symbol(),PERIOD_CURRENT,reversal_indexx) <  iClose(Symbol(),PERIOD_CURRENT,reversal_indexx) ?  iClose(Symbol(),PERIOD_CURRENT,reversal_indexx) : iOpen(Symbol(),PERIOD_CURRENT,reversal_indexx);
 
                if(reversalMax > iLow(Symbol(),PERIOD_CURRENT,1)
-                  && iClose(Symbol(),PERIOD_CURRENT,close_index) < iClose(Symbol(),PERIOD_CURRENT,1)  && tp_date_time_buy != 0.0 )
+                  && iClose(Symbol(),PERIOD_CURRENT,close_index) < iClose(Symbol(),PERIOD_CURRENT,1)  && tp_date_time_buy != 0.0)
                  {
                   Print("<<<<<<<<<<<< Entry 1 >>>>>>>>>");
                   placeBuyTrade();
@@ -2148,24 +2118,15 @@ void OnTick()
             if(od_1[m].EntryCon == 1 && iTime(Symbol(),PERIOD_CURRENT,1) == od_1[m].Time_of_candle_For_trade && od_1[m].Signal == "sell" && od_1[m].Time_of_candle_For_trade != 0  /*&& HIGH != 0 && LOW != 0*/)
               {
 
-               //Print("i am in enrtry condition 1 : ");
-
-               // Print("time is greater and signal is sell ",TimeCurrent());
 
                int reversal_indexx = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].reversal_index_date_time,false);
                int close_index = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].choch_index_date_time,false);
 
-               //                     Print("reversal_index_date_time ",od_1[m].reversal_index_date_time);
-               //                     Print("choch_index_date_time ",od_1[m].choch_index_date_time);
-               //
-               //                     Print(" high is ",iHigh(Symbol(),PERIOD_CURRENT,reversal_indexx));
-               //                     Print("low of current candle  ",iLow(Symbol(),PERIOD_CURRENT,0));
-               //                     Print("close of chock is ",iClose(Symbol(),PERIOD_CURRENT,close_index));
-               //                     Print("close of current candle is ",iClose(Symbol(),PERIOD_CURRENT,0));
+
                double reversalMin = iOpen(Symbol(),PERIOD_CURRENT,reversal_indexx) >  iClose(Symbol(),PERIOD_CURRENT,reversal_indexx) ?  iClose(Symbol(),PERIOD_CURRENT,reversal_indexx) : iOpen(Symbol(),PERIOD_CURRENT,reversal_indexx);
 
                if(reversalMin < iHigh(Symbol(),PERIOD_CURRENT,1)
-                  && iClose(Symbol(),PERIOD_CURRENT,close_index) > iClose(Symbol(),PERIOD_CURRENT,1) && tp_date_time_sell != 0.0 )
+                  && iClose(Symbol(),PERIOD_CURRENT,close_index) > iClose(Symbol(),PERIOD_CURRENT,1) && tp_date_time_sell != 0.0)
                  {
                   placeSellTrade();
                   remove_value_from_structure();
@@ -2194,21 +2155,10 @@ void OnTick()
                int reversal_indexx = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].reversal_index_date_time,false);
                int close_index = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].choch_index_date_time,false);
 
-
-
-               //                     Print("reversal_index_date_time ",od_1[m].reversal_index_date_time);
-               //                     Print("choch_index_date_time ",od_1[m].choch_index_date_time);
-               //
-               //                     Print(" high is ",iHigh(Symbol(),PERIOD_CURRENT,reversal_indexx));
-               //                     Print("low of current candle  ",iLow(Symbol(),PERIOD_CURRENT,0));
-               //                     Print("close of chock is ",iClose(Symbol(),PERIOD_CURRENT,close_index));
-               //                     Print("close of current candle is ",iClose(Symbol(),PERIOD_CURRENT,0));
-
-
                if(value_close_high(close_index) == true)
                  {
                   if(iClose(Symbol(),PERIOD_CURRENT,close_index) > iLow(Symbol(),PERIOD_CURRENT,1)
-                     && iClose(Symbol(),PERIOD_CURRENT,close_index) < iClose(Symbol(),PERIOD_CURRENT,1) && tp_date_time_buy != 0.0 )
+                     && iClose(Symbol(),PERIOD_CURRENT,close_index) < iClose(Symbol(),PERIOD_CURRENT,1) && tp_date_time_buy != 0.0)
                     {
                      Print("<<<<<<<<<<<< Entry 2 >>>>>>>>>");
                      placeBuyTrade();
@@ -2232,25 +2182,13 @@ void OnTick()
             if(od_1[m].EntryCon == 2 && TimeCurrent() > od_1[m].Time_of_candle_For_trade && od_1[m].Signal == "sell" && od_1[m].Time_of_candle_For_trade != 0  /*&& HIGH != 0 && LOW != 0*/)
               {
 
-               // Print("time is greater and signal is sell ",TimeCurrent());
-
-
-
                int reversal_indexx = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].reversal_index_date_time,false);
                int close_index = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].choch_index_date_time,false);
 
-               //                     Print("reversal_index_date_time ",od_1[m].reversal_index_date_time);
-               //                     Print("choch_index_date_time ",od_1[m].choch_index_date_time);
-               //
-               //                     Print(" high is ",iHigh(Symbol(),PERIOD_CURRENT,reversal_indexx));
-               //                     Print("low of current candle  ",iLow(Symbol(),PERIOD_CURRENT,0));
-               //                     Print("close of chock is ",iClose(Symbol(),PERIOD_CURRENT,close_index));
-               //                     Print("close of current candle is ",iClose(Symbol(),PERIOD_CURRENT,0));
-
                if(value_close_low(close_index) == true)
                  {
                   if(iClose(Symbol(),PERIOD_CURRENT,close_index) < iHigh(Symbol(),PERIOD_CURRENT,1)
-                     && iClose(Symbol(),PERIOD_CURRENT,close_index) > iClose(Symbol(),PERIOD_CURRENT,1) && tp_date_time_sell!= 0.0 )
+                     && iClose(Symbol(),PERIOD_CURRENT,close_index) > iClose(Symbol(),PERIOD_CURRENT,1) && tp_date_time_sell!= 0.0)
                     {
                      placeSellTrade();
                      remove_value_from_structure();
@@ -2273,84 +2211,6 @@ void OnTick()
            }
         }
 
-      //      for(int m=0; m < orderNum; m++)
-      //        {
-      //         if(od_1[m].choch_index_date_time != 0)
-      //           {
-      //
-      //            //Print("current time is ",TimeCurrent());
-      //            //Print("time is ",od_1[m].Time_of_candle_For_trade);
-      //            //Print("signal is ",od_1[m].Signal);
-      //
-      //
-      //            if(TimeCurrent() >= od_1[m].Time_of_candle_For_trade && od_1[m].Signal == "buy" && od_1[m].Time_of_candle_For_trade != 0)
-      //              {
-      //               // Print("time is greater and signal is buy ",TimeCurrent());
-      //
-      //               int reversal_indexx = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].reversal_index_date_time,false);
-      //               int close_index = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].choch_index_date_time,false);
-      //
-      //               //                     Print("reversal_index_date_time ",od_1[m].reversal_index_date_time);
-      //               //                     Print("choch_index_date_time ",od_1[m].choch_index_date_time);
-      //               //
-      //               //                     Print(" high is ",iHigh(Symbol(),PERIOD_CURRENT,reversal_indexx));
-      //               //                     Print("low of current candle  ",iLow(Symbol(),PERIOD_CURRENT,0));
-      //               //                     Print("close of chock is ",iClose(Symbol(),PERIOD_CURRENT,close_index));
-      //               //                     Print("close of current candle is ",iClose(Symbol(),PERIOD_CURRENT,0));
-      //
-      //               if(iHigh(Symbol(),PERIOD_CURRENT,reversal_indexx) > iLow(Symbol(),PERIOD_CURRENT,1)
-      //                  && iClose(Symbol(),PERIOD_CURRENT,close_index) < iClose(Symbol(),PERIOD_CURRENT,1))
-      //                 {
-      //                  placeBuyTrade();
-      //                  remove_value_from_structure();
-      //                  od_1[m].choch_index_date_time = 0;
-      //                  od_1[m].Signal == "";
-      //                  od_1[m].reversal_index_date_time = 0;
-      //                  od_1[m].choch_index_date_time = 0;
-      //
-      //                  signal = "";
-      //                  Print("buy trade placed  -------------------------------------------------------------");
-      //                  Print("time at which trade is placed : ",TimeCurrent());
-      //
-      //                 }
-      //
-      //
-      //              }
-      //
-      //            if(TimeCurrent() >= od_1[m].Time_of_candle_For_trade && od_1[m].Signal == "sell" && od_1[m].Time_of_candle_For_trade != 0)
-      //              {
-      //
-      //               // Print("time is greater and signal is sell ",TimeCurrent());
-      //
-      //               int reversal_indexx = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].reversal_index_date_time,false);
-      //               int close_index = iBarShift(Symbol(), PERIOD_CURRENT,od_1[m].choch_index_date_time,false);
-      //
-      //               //                     Print("reversal_index_date_time ",od_1[m].reversal_index_date_time);
-      //               //                     Print("choch_index_date_time ",od_1[m].choch_index_date_time);
-      //               //
-      //               //                     Print(" high is ",iHigh(Symbol(),PERIOD_CURRENT,reversal_indexx));
-      //               //                     Print("low of current candle  ",iLow(Symbol(),PERIOD_CURRENT,0));
-      //               //                     Print("close of chock is ",iClose(Symbol(),PERIOD_CURRENT,close_index));
-      //               //                     Print("close of current candle is ",iClose(Symbol(),PERIOD_CURRENT,0));
-      //
-      //               if(iHigh(Symbol(),PERIOD_CURRENT,reversal_indexx) < iLow(Symbol(),PERIOD_CURRENT,1)
-      //                  && iClose(Symbol(),PERIOD_CURRENT,close_index) > iClose(Symbol(),PERIOD_CURRENT,1))
-      //                 {
-      //                  placeSellTrade();
-      //                  remove_value_from_structure();
-      //                  od_1[m].choch_index_date_time = 0;
-      //                  od_1[m].Signal == "";
-      //                  od_1[m].reversal_index_date_time = 0;
-      //                  od_1[m].choch_index_date_time = 0;
-      //                  signal = "";
-      //                  Print("sell trade placed  -------------------------------------------------------------");
-      //                  Print("time at which trade is placed : ",TimeCurrent());
-      //
-      //                 }
-      //
-      //              }
-      //           }
-      //        }
 
 
      }
@@ -2409,7 +2269,4 @@ string checkCandle(int v)  // to check the candle is bullish or bearish
   }
 //+------------------------------------------------------------------+
 
-
-//+------------------------------------------------------------------+
-
 //+------------------------------------------------------------------+