ソースを参照

ticket # 1483

AhtashamShahzad3 2 年 前
コミット
bdf10a84f2
共有2 個のファイルを変更した88 個の追加15 個の削除を含む
  1. BIN
      BOS_CHOCH.ex5
  2. 88 15
      BOS_CHOCH.mq5

BIN
BOS_CHOCH.ex5


+ 88 - 15
BOS_CHOCH.mq5

@@ -179,6 +179,88 @@ void Bos(int i)
179 179
 
180 180
   }
181 181
 
182
+
183
+//+------------------------------------------------------------------+
184
+//|                                                                  |
185
+//+------------------------------------------------------------------+
186
+void Entry_Action_1_up(int Store_bos_last_index, int i)
187
+  {
188
+   for(int j=Store_bos_last_index+1; j < iBars(Symbol(),PERIOD_CURRENT); j++)
189
+     {
190
+      if(checkCandle(j) == "Bearish")
191
+        {
192
+         ind = j;
193
+         bearish_found = true;
194
+         break;
195
+        }
196
+
197
+     }
198
+
199
+   if(bearish_found == true)
200
+     {
201
+      Print("index xi is ", ind);
202
+      ObjectCreate(0,"line10"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJ_TREND,0,iTime(Symbol(),PERIOD_CURRENT,ind),iHigh(Symbol(),PERIOD_CURRENT,ind),iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,ind));
203
+      ObjectCreate(0,"line11"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJ_TREND,0,iTime(Symbol(),PERIOD_CURRENT,ind),iLow(Symbol(),PERIOD_CURRENT,ind),iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,ind));
204
+
205
+      ObjectSetInteger(0,"line10"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJPROP_COLOR,clrBlue);
206
+      ObjectSetInteger(0,"line11"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJPROP_COLOR,clrBlue);
207
+
208
+      ObjectCreate(0,"line12"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJ_TREND,0,iTime(Symbol(),PERIOD_CURRENT,ind),iClose(Symbol(),PERIOD_CURRENT,ind),iTime(Symbol(),PERIOD_CURRENT,i),iClose(Symbol(),PERIOD_CURRENT,ind));
209
+      ObjectCreate(0,"line13"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJ_TREND,0,iTime(Symbol(),PERIOD_CURRENT,ind),iOpen(Symbol(),PERIOD_CURRENT,ind),iTime(Symbol(),PERIOD_CURRENT,i),iOpen(Symbol(),PERIOD_CURRENT,ind));
210
+
211
+      ObjectSetInteger(0,"line12"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJPROP_STYLE,STYLE_DOT);
212
+      ObjectSetInteger(0,"line13"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJPROP_STYLE,STYLE_DOT);
213
+
214
+      bearish_found = false;
215
+
216
+     }
217
+
218
+
219
+  }
220
+
221
+
222
+//+------------------------------------------------------------------+
223
+//|                                                                  |
224
+//+------------------------------------------------------------------+
225
+void Entry_Action_1_down(int Store_bos_last_index, int i,int diff)
226
+  {
227
+  diff++;
228
+
229
+   for(int j=Store_bos_last_index+1; j < iBars(Symbol(),PERIOD_CURRENT); j++)
230
+     {
231
+      if(checkCandle(j) == "Bullish")
232
+        {
233
+         ind = j;
234
+         bullish_found = true;
235
+         diff++;
236
+         break;
237
+        }
238
+
239
+     }
240
+   Print(diff);
241
+   if(bullish_found == true)
242
+     {
243
+      Print("index xi is ", ind);
244
+      ObjectCreate(0,"line14"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJ_TREND,0,iTime(Symbol(),PERIOD_CURRENT,ind),iHigh(Symbol(),PERIOD_CURRENT,ind),iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,ind));
245
+      ObjectCreate(0,"line15"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJ_TREND,0,iTime(Symbol(),PERIOD_CURRENT,ind),iLow(Symbol(),PERIOD_CURRENT,ind),iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,ind));
246
+
247
+      ObjectSetInteger(0,"line14"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJPROP_COLOR,clrBlue);
248
+      ObjectSetInteger(0,"line15"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJPROP_COLOR,clrBlue);
249
+
250
+      ObjectCreate(0,"line16"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJ_TREND,0,iTime(Symbol(),PERIOD_CURRENT,ind),iClose(Symbol(),PERIOD_CURRENT,ind),iTime(Symbol(),PERIOD_CURRENT,i),iClose(Symbol(),PERIOD_CURRENT,ind));
251
+      ObjectCreate(0,"line17"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJ_TREND,0,iTime(Symbol(),PERIOD_CURRENT,ind),iOpen(Symbol(),PERIOD_CURRENT,ind),iTime(Symbol(),PERIOD_CURRENT,i),iOpen(Symbol(),PERIOD_CURRENT,ind));
252
+
253
+      ObjectSetInteger(0,"line16"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJPROP_STYLE,STYLE_DOT);
254
+      ObjectSetInteger(0,"line17"+iTime(Symbol(),PERIOD_CURRENT,ind),OBJPROP_STYLE,STYLE_DOT);
255
+
256
+
257
+
258
+
259
+
260
+      bullish_found = false;
261
+
262
+     }
263
+  }
182 264
 //+------------------------------------------------------------------+
183 265
 //|                                                                  |
184 266
 //+------------------------------------------------------------------+
@@ -199,7 +281,7 @@ void choch(int i)
199 281
 
200 282
          Print("last bos index is ",Store_bos_last_index);
201 283
 
202
-
284
+         Entry_Action_1_up(Store_bos_last_index,i);
203 285
 
204 286
          low = iLow(Symbol(),PERIOD_CURRENT,i);
205 287
          Print("low update due to choch : ", low);
@@ -226,24 +308,14 @@ void choch(int i)
226 308
          ObjectCreate(0,"line7"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_ARROW_UP,0,iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,i)-100*Point());
227 309
          ObjectSetInteger(0,"line7"+iTime(Symbol(),PERIOD_CURRENT,i),OBJPROP_COLOR,clrGreen);
228 310
 
229
-         Print("last bos index is ",Store_bos_last_index);
230 311
 
231
-         for(int j=Store_bos_last_index; j < iBars(Symbol(),PERIOD_CURRENT); j++)
232
-           {
233
-            if(checkCandle(j) == "Bearish")
234
-              {
235
-               ind = j;
236
-               bearish_found = true;
237
-               break;
238
-              }
312
+         Print("last bos index is ",Store_bos_last_index);
313
+         int diff = Store_bos_last_index - i;
314
+         Print(diff);
239 315
 
240
-           }
316
+         Entry_Action_1_down(Store_bos_last_index,i,diff);
241 317
 
242
-         if(bearish_found == true)
243
-           {
244
-            Print("inde xi ",ind);
245 318
 
246
-           }
247 319
 
248 320
 
249 321
          high = iHigh(Symbol(),PERIOD_CURRENT,i);
@@ -427,4 +499,5 @@ string checkCandle(int i)  // to check the candle is bullish or bearish
427 499
   }
428 500
 //+------------------------------------------------------------------+
429 501
 
502
+
430 503
 //+------------------------------------------------------------------+