4%

I’ll show you something neat. Remember the circled menu item?

Below was the inspiration for enlisting it.

This much about fractals, a 30-minute chart, and a 30-sample BB.

Next thing – 60 sample stochastic on the hourly. Highlights for the last 4-percentile.

 if (i>0  && stoch60[i]<4)
   {
       ObjectCreate("DOTS"+i,OBJ_TEXT, 1, Time[i+1],(ExtATRBuffer2[i])+25);
        ObjectSetText("DOTS"+i, DoubleToStr(NormalizeDouble(stoch60[i],1),1), 16, "Impact", clrDarkGreen);
   }  
   
  if (i>0  && stoch60[i]>96)
   {
       ObjectCreate("DOTS"+i,OBJ_TEXT, 1, Time[i+1],(ExtATRBuffer2[i])-15);
        ObjectSetText("DOTS"+i, DoubleToStr(NormalizeDouble(stoch60[i],1),1), 16, "Impact", clrCrimson);
   }  

It does not always prompt an immediate reaction, but the countermove also holds predictive value.

For instance, a shallow pullback to the E-30 is a great continuation entry.

Otherwise, I have a couple of examples with an 86-pip counter move first.

This is a tough call with the Bulls and the Bears converging, being neck & neck.

The Bull / Bear strength plotter I came up with yesterday. Not sure how it would be useful, but I felt the need for it.


if (ExtATRBuffer<30) bulls=(100-ExtATRBuffer+20)/30*25;
else if (ExtATRBuffer>=30 && ExtATRBuffer<47) bulls=(100-ExtATRBuffer+26)/17*9+25;
else if (ExtATRBuffer>=47 && ExtATRBuffer<135) bulls=(100-ExtATRBuffer+36)/88*41+25;


if (ExtATRBuffer2<30) bears=(100-ExtATRBuffer2+20)/30*25;
else if (ExtATRBuffer2>=30 && ExtATRBuffer2<47) bears=(100-ExtATRBuffer2+26)/17*9+25;
else if (ExtATRBuffer2>=47 && ExtATRBuffer2<135) bears=(100-ExtATRBuffer2+36)/88*41+25;


ObjectCreate("LEVELOPE"+29,OBJ_LABEL,3, 0,0);
  ObjectSet("LEVELOPE"+29,OBJPROP_CORNER,3);
    ObjectSet("LEVELOPE"+29,OBJPROP_XDISTANCE,0);
  ObjectSet("LEVELOPE"+29,OBJPROP_YDISTANCE,60);
  if (bulls>bears) ObjectSet("LEVELOPE"+29,OBJPROP_COLOR,clrGreen);
  else ObjectSet("LEVELOPE"+29,OBJPROP_COLOR,clrCrimson);
  if (Period()==60) ObjectSetText("LEVELOPE"+29,"  ",24,"Arial Black");
   else ObjectSetText("LEVELOPE"+29,"Bulls: "+DoubleToStr(NormalizeDouble(bulls,1),1)+"%",24,"Arial Black");

ObjectCreate("LEVELOPE"+30,OBJ_LABEL,3, 0,0);
  ObjectSet("LEVELOPE"+30,OBJPROP_CORNER,3);
    ObjectSet("LEVELOPE"+30,OBJPROP_XDISTANCE,0);
  ObjectSet("LEVELOPE"+30,OBJPROP_YDISTANCE,90);
  if (bulls>bears) ObjectSet("LEVELOPE"+30,OBJPROP_COLOR,clrGreen);
  else ObjectSet("LEVELOPE"+30,OBJPROP_COLOR,clrCrimson);
  if (Period()==60) ObjectSetText("LEVELOPE"+30,"  ",24,"Arial Black");
   else ObjectSetText("LEVELOPE"+30,"Bears: "+DoubleToStr(NormalizeDouble(bears,1),1)+"%",24,"Arial Black");