The signs are there, but your mind is not.
Smart ones can learn from other people’s mistakes.
– A liquidity break is happening against the current direction.
– An MFI(14) peak only matters when overbought / oversold.

//////Liquidity break down
if (i>0 && yellow3[i+3]!=High[i+3] && yellow3[i+2]==High[i+2] && yellow3[i+1]==High[i+1] && iRSI(symbol,0,4,PRICE_MEDIAN,i)>90 && iRSI(symbol,0,4,PRICE_MEDIAN,i-1)<90 ){
ObjectCreate("Talmat"+DoubleToStr(i), OBJ_TEXT, 0, Time[i+4], High[i]-120*Point);
ObjectSetText("Talmat"+DoubleToStr(i), "Liq Brk", 32, "Impact", Purple);
if (High[i]>stratou[i]) ObjectSetText("Talmat"+DoubleToStr(i), "Kick Start", 32, "Impact", Blue);
}
...
if (mfi[i+12]>mfi[i+13] && mfi[i+12]>mfi[i+11] && mfi[ArrayMaximum(mfi,3,i+11)]>mfi[ArrayMaximum(mfi,23,i+15)] && mfi[i+12]>79 && iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)>28){
ObjectCreate("Sal"+DoubleToStr(i), OBJ_TEXT, indicator_window+1, Time[i+10], mfi[i]+mfi[i]*.2);
ObjectSetText("Sal"+DoubleToStr(i), "Sell Beats: "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+80*Point,4),4)+", "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+140*Point,4),4)+", ("+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+220*Point,4),4)+")", 22, "Impact", Black);
if (iStochastic(symbol,0,120,3,3,MODE_SMA,PRICE_MEDIAN,MODE_MAIN,i)<90) ObjectSetText("Sal"+DoubleToStr(i), "Sell Beats: "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+80*Point,4),4)+", "+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+140*Point,4),4)+", ("+DoubleToString(NormalizeDouble(iHigh(symbol,0,iHighest(symbol,0,MODE_HIGH,16,i+1))+220*Point,4),4)+")", 22, "Impact", DimGray);
}
– …or the break of the S high / breaking outside the 30-min 30-sample BB on the upside.

Those green bars will adjust the daily S1 and S2.
A subject I would normally never pick: risk and reward. You cannot plan for any distance that has not been fulfilled already; an arbitrary number that is not rooted in statistics is just an arbitrary number. What’s more, your risk only makes sense if a stop loss is set and does not get changed around, and if you knew your reward ahead of time, you would have zero risk.
Now with all of that said, let’s take into account how this idea could be shaped to a tool.
Once you have the direction right based on Money Flow divergence or the Liquidity break, you can call the 30-sample HL2 hourly BB’s one side zero risk.

The other end of the Bollinger Band would be T1, or Reward 1.
The second target would be the Stratosphere line which is 45 pips away from the E-16 HL2 (white lines).

This is why I automatically fit my orders with a Code 47 cropper (close 47 pips away from the E-16) by adding 4.7 or 0.47 for stop loss.
///// Crop 0.47 long (E16+47Pips)
if( OrderType()==OP_BUY && (OrderStopLoss()==0.47 || OrderTakeProfit()==4.7) && OrderMagicNumber()!=50 && OrderMagicNumber()!=51 && OrderMagicNumber()!=52 && OrderMagicNumber()!=53 && OrderMagicNumber()!=54 && OrderProfit()>0 &&
Close[0]>iMA(NULL,60,16,0,MODE_EMA, PRICE_MEDIAN,0)+470*Point && Bid>OrderOpenPrice()+.50*Point && OrderProfit()+OrderSwap()+OrderCommission()>0)
{OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 5, Red );
Print("Cropper Closed LONG @ "+MarketInfo(OrderSymbol(), MODE_BID)+" for ", OrderProfit());}
///// Crop 4.7 short (E16-47Pips)
if( OrderType()==OP_SELL && (OrderStopLoss()==4.7 || OrderTakeProfit()==0.47) && OrderMagicNumber()!=50 && OrderMagicNumber()!=51 && OrderMagicNumber()!=52 && OrderMagicNumber()!=53 && OrderMagicNumber()!=54 && OrderProfit()>0 &&
Close[0]<iMA(NULL,60,16,0,MODE_EMA, PRICE_MEDIAN,0)-470*Point && Ask<OrderOpenPrice()-.50*Point && OrderProfit()+OrderSwap()+OrderCommission()>0)
{OrderClose( OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 5, Red );
Print("Goldilocks Cropper Closed SHORT @ "+MarketInfo(OrderSymbol(), MODE_ASK)+" for ", OrderProfit());}
T3, or the ultimate target does not exist until you see the the 30-minute closing outside the Stratosphere line, this is when a target projection to the momentary location of the Ionosphere line comes into picture.

As a bonus here are earlier examples of what happens when the T3 gets hit.
////first & second encounters - upside stratosphere
if (High[i+2]<stratou[i+2] && High[i+1]<stratou[i+1] && High[i]>stratou[i]){
ObjectCreate("Poet"+DoubleToStr(i), OBJ_TEXT, 0, Time[i], High[i]+80*Point);
ObjectSetText("Poet"+DoubleToStr(i), "x", 32, "Wingdings", Crimson);
if (Close[i]>stratou[i]) { ObjectSetText("Poet"+DoubleToStr(i), "a", 32, "Webdings", DarkGreen);
ObjectCreate("Talmi"+DoubleToStr(i), OBJ_TEXT, 0, Time[i], stratou2[i]-150*Point);
ObjectSetText("Talmi"+DoubleToStr(i), "TGT:"+DoubleToStr(NormalizeDouble(stratou2[i],4),4), 32, "Impact", Crimson);}
}

After filling the T3, price would normally reverse.

…but certainly would not continue until 3 times it would make it outside the 60-sample 30-min BB.

