Stair-stepping

I’m not sure what you are going to be doing with all of this, but I decided to share; this is what I am currently preoccupied with.

Those orange triangles mark up stair-stepping breakout failures.

If I were screening for an apprentice, I would ask, What is 17 pips for the Euro?

The answer, of course, is that it is the size of one step. If someone said it meant about one-half of the Euro’s fluctuation size, I would probably pass them still.

When the RSI2 hits in the last 2%, you get the following values: 17 pips out is the next step. 22 pips out, strong fade, 27 pips out, a stair-step breakout is occurring. In the next 4 hours an adjustment can be made to the calculation’s base value, and there are MFI(7) filters applied.

///RSI2 steps up
 if (i>0 && RSI2[i]>98 && RSI2[i-1]<98 && iMFI(symbol,0,7,i)>69){
   j=i-1;
   while (j>i-4 && j>0){
      if (High[j]>High[i]) break;
   j--;}
   if (High[j]>High[i] && RSI2[j]<81) {
            ObjectCreate("Talm"+IntegerToString(j), OBJ_TEXT, indicator_window+1, Time[j], 40); 
            ObjectSetText("Talm"+IntegerToString(j), "C:"+DoubleToStr(NormalizeDouble(High[j]+170*Point,4),4), 21, "Impact", Navy); 
            ObjectCreate("Talmi"+IntegerToString(j), OBJ_TEXT, indicator_window+1, Time[j], 60); 
            ObjectSetText("Talmi"+IntegerToString(j), "S:"+DoubleToStr(NormalizeDouble(High[j]+220*Point,4),4), 21, "Impact", Crimson); 
            ObjectCreate("Talmin"+IntegerToString(j), OBJ_TEXT, indicator_window+1, Time[j], 20); 
            ObjectSetText("Talmin"+IntegerToString(j), "Br:"+DoubleToStr(NormalizeDouble(High[j]+270*Point,4),4)+"->W3C", 21, "Impact", Black); }
            
       else  {
            ObjectCreate("Talm"+IntegerToString(i), OBJ_TEXT, indicator_window+1, Time[i], 40); 
            ObjectSetText("Talm"+IntegerToString(i), "C:"+DoubleToStr(NormalizeDouble(High[i]+170*Point,4),4), 21, "Impact", Navy); 
            ObjectCreate("Talmi"+IntegerToString(i), OBJ_TEXT, indicator_window+1, Time[i], 60); 
            ObjectSetText("Talmi"+IntegerToString(i), "S:"+DoubleToStr(NormalizeDouble(High[i]+220*Point,4),4), 21, "Impact", Crimson); 
            ObjectCreate("Talmin"+IntegerToString(i), OBJ_TEXT, indicator_window+1, Time[i], 20); 
            ObjectSetText("Talmin"+IntegerToString(i), "Br:"+DoubleToStr(NormalizeDouble(High[i]+270*Point,4),4)+"->W3C", 21, "Impact", Black); 
                        if (i>2 && RSI2[i-1]<69 && iMFI(symbol,0,7,i-1)<83 && Close[i-2]<Close[i-1]){ 
               ObjectCreate("Talma"+IntegerToString(i), OBJ_TEXT, indicator_window+1, Time[i], 80); 
               ObjectSetText("Talma"+IntegerToString(i), "Sell4LL:"+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Red); 
            }
         }
   }
   ///RSI2 steps down
    if (i>0 && RSI2[i]<2 && RSI2[i-1]>2 && iMFI(symbol,0,7,i)<31){
   j=i-1;
   while (j>i-4 && j>0){
      if (Low[j]<Low[i]) break;
   j--;}
   if (Low[j]<Low[i] ) {
            ObjectCreate("Talm"+IntegerToString(j), OBJ_TEXT, indicator_window+2, Time[j], 60); 
            ObjectSetText("Talm"+IntegerToString(j), "C:"+DoubleToStr(NormalizeDouble(Low[j]-170*Point,4),4), 21, "Impact", Navy); 
            ObjectCreate("Talmi"+IntegerToString(j), OBJ_TEXT, indicator_window+2, Time[j], 40); 
            ObjectSetText("Talmi"+IntegerToString(j), "B:"+DoubleToStr(NormalizeDouble(Low[j]-220*Point,4),4), 21, "Impact", Green); 
             ObjectCreate("Talmin"+IntegerToString(j), OBJ_TEXT, indicator_window+2, Time[j], 20); 
            ObjectSetText("Talmin"+IntegerToString(j), "Br:"+DoubleToStr(NormalizeDouble(Low[j]-270*Point,4),4)+"->W3C", 21, "Impact", Black);} 
            
       else 
        {
            ObjectCreate("Talm"+IntegerToString(i), OBJ_TEXT, indicator_window+2, Time[i], 60); 
            ObjectSetText("Talm"+IntegerToString(i), "C:"+DoubleToStr(NormalizeDouble(Low[i]-170*Point,4),4), 21, "Impact", Navy); 
            ObjectCreate("Talmi"+IntegerToString(i), OBJ_TEXT, indicator_window+2, Time[i], 40); 
            ObjectSetText("Talmi"+IntegerToString(i), "B:"+DoubleToStr(NormalizeDouble(Low[i]-220*Point,4),4), 21, "Impact", Green); 
            ObjectCreate("Talmin"+IntegerToString(i), OBJ_TEXT, indicator_window+2, Time[i], 20); 
            ObjectSetText("Talmin"+IntegerToString(i), "Br:"+DoubleToStr(NormalizeDouble(Low[i]-270*Point,4),4)+"->W3C", 21, "Impact", Black); 
            if (i>2 && RSI2[i-1]>31 && iMFI(symbol,0,7,i-1)>17 && Close[i-2]>Close[i-1]){ 
           //    ObjectCreate("Talma"+IntegerToString(i), OBJ_TEXT, indicator_window+2, Time[i], 20); 
            //   ObjectSetText("Talma"+IntegerToString(i), "BUY4HH:"+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", LimeGreen); 
            }
         }
   }

Now, the blue rectangles are 4 small-bodied candles next to each other (<5 pips typically).

 ///5x4 
 if (MathAbs(Open[i+3]-Close[i+3])<50*Point && MathAbs(Open[i+2]-Close[i+2])<50*Point && MathAbs(Open[i+1]-Close[i+1])<58*Point && MathAbs(Open[i]-Close[i])<50*Point){
     ObjectCreate("Ginner"+IntegerToString(i), OBJ_RECTANGLE, 0,  Time[i+3], iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,3,i)), Time[i], iLow(symbol,0,iLowest(symbol,0,MODE_HIGH,3,i)));
      ObjectSetInteger(0,"Ginner"+IntegerToString(i),OBJPROP_COLOR,clrBlue);
      ObjectSet("Ginner"+IntegerToString(i),OBJPROP_BACK,0);
      ObjectSet("Ginner"+IntegerToString(i),OBJPROP_WIDTH,5);   
 
 }

I find it interesting that swing highs tend to print 56-58 pips (middle number) above the high of the box(es).

They also seem to result in a new low printed below the blue boxes by 10-15 pips.