In the previous entry I named the upside targets as 1.1190 and 1.1210.
Now, it is becoming more and more clear that a capitulation would be necessary here. It is very much looking like a 5 Wave structure was started and Wave 2 is arriving at its closure.

In some iterations the MA (ribbon) buy is actually spelled as a W2 buy.

About drawing support & resistance lines utilizing the “5/10/20” prints and the dojis.

I was asked recently about dojis. They are often strongholds with break even stops. These lines of course go on the small bodies, not on the end of the tails.
The 6+6 flag move down looks like a classic ABC pattern.
The numbers are getting a bit more involving. I highlight the 5s with size and color if they are outside the 30-sample BB by at least 2/3 of their length.
I’m not saying this is how you do it, I’m saying, this is what I’m doing.
if (dcount[i]>0 && dcount[i]<=10){
ObjectCreate("Counterd"+IntegerToString(i), OBJ_TEXT, 0, Time[i], Low[i]-40*Point);
ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 11, "Impact", Maroon);
if (iMA(symbol,0,207,0,MODE_EMA,PRICE_HIGH,i)>iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)-270*Point) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 11, "Impact", Gray);
if (High[i]>E8[i] &&Close[i]>Low[i]+(High[i]-Low[i])/2) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", DarkGreen);
if (High[i]<E8[i] && Close[i]<High[i]-(High[i]-Low[i])/2) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", Red);
if (dcount[i]==8 && iLow(symbol,0,iLowest(symbol,0,MODE_LOW,3,i))==iLow(symbol,0,iLowest(symbol,0,MODE_LOW,15,i))) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i])+"!!!", 21, "Impact", Maroon);
else ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 21, "Impact", Maroon);
if (dcount[i]==4 && High[i]<High[i+1] && Low[i]>Low[i+1] && Close[i+1]<E8[i+1]) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", Red);
else
if (dcount[i]==4 && Low[i]<Low[i+1] && Close[i]>Low[i+1]) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", Red);
if (dcount[i]==4 && High[i]>High[i+1] && !(Close[i]<High[i]-(High[i]-Low[i])/2)) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", DarkGreen);
if (dcount[i]==4 && Low[i]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i)) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 16, "Impact", DarkGreen);
if (dcount[i]==4) {
ObjectDelete("Counterp");
if (MathAbs(Close[i]-E8[i])<150*Point && !(RSI[i]<60 && High[i]>E8[i]) ) {
ObjectCreate("Counterp", OBJ_TEXT, 0, Time[20], Close[0]-40*Point);
ObjectSetText("Counterp", "Sell: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Maroon);
}
else {
ObjectCreate("Counterp", OBJ_TEXT, 0, Time[20], Close[0]-40*Point);
ObjectSetText("Counterp", "Buy: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Blue);
if (High[i]>E8[i]) ObjectSetText("Counterp", "Buy Support "+DoubleToStr(NormalizeDouble(iHigh(symbol,0,iLowest(symbol,0,MODE_HIGH,40,i)),4),4), 21, "Impact", Blue);
}
}
if (dcount[i]==5) {ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 31, "Impact", Maroon);
if (iMA(symbol,0,207,0,MODE_EMA,PRICE_HIGH,i)>iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)-270*Point) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 31, "Impact", Gray);
if ((High[i]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i) || (High[i]-(High[i]-Low[i])/3<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i))) && RSI[i]<lower2[i]+2) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 39, "Impact", Green);
}
}
if (dcount[i]>=5) dir[i]=-1;
if (dcount[i]==10) if (High[i]<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i) || (High[i]-(High[i]-Low[i])/3<iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_LOWER,i))) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 39, "Impact", Green);
if (dcount[i]==20) {
ObjectCreate("Counterd"+IntegerToString(i), OBJ_TEXT, 0, Time[i], Low[i]-40*Point);
ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 31, "Impact", Maroon);
if (RSI[i]<lower[i]) ObjectSetText("Counterd"+IntegerToString(i), IntegerToString(dcount[i]), 39, "Impact", Green);
}
if (ucount[i]>0 && ucount[i]<=10){
ObjectCreate("Counteru"+IntegerToString(i), OBJ_TEXT, 0, Time[i], High[i]+110*Point);
ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 11, "Impact", Blue);
if (iMA(symbol,0,207,0,MODE_EMA,PRICE_LOW,i)<iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)+270*Point) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 11, "Impact", Gray);
if (MathAbs(Close[i]-iMA(symbol,0,120,0,MODE_SMA,PRICE_MEDIAN,i))>150*Point) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 11, "Impact", clrNONE);
if (Low[i]<E8[i] &&Close[i]<High[i]-(High[i]-Low[i])/2) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 16, "Impact", Red);
if (Low[i]>E8[i] && Close[i]>Low[i]+(High[i]-Low[i])/2) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 16, "Impact", DarkGreen);
if (ucount[i]==8 && iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,3,i))==iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,15,i))) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i])+"!!!", 21, "Impact", Blue);
else ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 21, "Impact", Blue);
if (ucount[i]==4 && High[i]<High[i+1] && Low[i]>Low[i+1] && Close[i+1]>E8[i+1]) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 16, "Impact", DarkGreen);
else if (ucount[i]==4 && High[i]<High[i+1] && Close[i]<High[i+1]) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 16, "Impact", DarkGreen);
if (ucount[i]==4 && High[i]<High[i+1] && Low[i]>Low[i+1] && MathAbs(Close[i]-Open[i])<20*Point && Close[i]>E8[i]+180*Point) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 16, "Impact", Red);
if (ucount[i]==5) {ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 31, "Impact", Blue);
if (iMA(symbol,0,207,0,MODE_EMA,PRICE_LOW,i)<iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)+270*Point) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 31, "Impact", Gray);
if ((Low[i]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i) || (Low[i]+(High[i]-Low[i])/3>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i))) && RSI[i]>upper2[i]) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 39, "Impact", Red);
}
if (ucount[i]==10) if ((Low[i]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i) || (High[i]>iBands(symbol,0,30,2,0,PRICE_MEDIAN,MODE_UPPER,i) && Close[i]>High[i]-(High[i]-Low[i])/3)) && RSI[i]>upper2[i]) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 39, "Impact", Red);
if (ucount[i]==10) if (RSI[i]<AVG[i] && RSI[i]>upper[i] && RSI[i]>70) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 59, "Impact", Red);
}
if (ucount[i]==20) {ObjectCreate("Counteru"+IntegerToString(i), OBJ_TEXT, 0, Time[i], High[i]+110*Point);
ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 31, "Impact", Blue);
if (RSI[i]>upper[i]) ObjectSetText("Counteru"+IntegerToString(i), IntegerToString(ucount[i]), 39, "Impact", Red);
}
if (ucount[i]==4) {
if (MathAbs(Close[i]-E8[i])>150*Point) {
ObjectDelete("Counterp");
ObjectCreate("Counterp", OBJ_TEXT, 0, Time[20], Close[0]-40*Point);
ObjectSetText("Counterp", "Sell: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Maroon);
if (iMA(symbol,0,207,0,MODE_EMA,PRICE_HIGH,i)>iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)-270*Point) ObjectSetText("Counterp", "Sell: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Gray);
}
else if (MathAbs(Close[i]-iMA(symbol,0,120,0,MODE_SMA,PRICE_MEDIAN,i))>150*Point){
ObjectDelete("Counterp");
ObjectCreate("Counterp", OBJ_TEXT, 0, Time[20], Close[0]-40*Point);
ObjectSetText("Counterp", "Buy: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Blue);
if (iMA(symbol,0,207,0,MODE_EMA,PRICE_LOW,i)<iMA(symbol,0,356,0,MODE_EMA,PRICE_MEDIAN,i)+270*Point) ObjectSetText("Counterp", "Buy: "+DoubleToStr(NormalizeDouble(Close[i],4),4), 21, "Impact", Gray);
}
}
if (ucount[i]>=5) dir[i]=1;
}
}
