The first thing to say is that you are not smarter than a blue line. I certainly am not.

//buy the house break above 16,35, 55/yellow
if (ExtUpperBuffer_[i+1]==ExtUpperBuffer_[i+2] && ExtUpperBuffer_[i+1]!=EMPTY_VALUE
&& D32[i+1]>-4.5 && D32[i+1]<20
&& High[i+3]<ExtUpperBuffer_[i+3] && High[i+2]<ExtUpperBuffer_[i+2] && High[i+1]<ExtUpperBuffer_[i+1] && High[i]>High[i+1]
&& Close[i+1]>iMA(symbol,0,32,0,MODE_EMA,PRICE_MEDIAN,i)
)
{
//sell the house break lower 16,35, 55/yellow
if (ExtLowerBuffer_[i+1]==ExtLowerBuffer_[i+2] && ExtLowerBuffer_[i+1]!=EMPTY_VALUE && D32NEG[i+1]<-4.5 && D32NEG[i+1]>-20
&& (D32[i+2]<7 || D32[i+2]==EMPTY_VALUE)
&& Low[i+3]>ExtLowerBuffer_[i+3] && Low[i+2]>ExtLowerBuffer_[i+2] && Low[i+1]>ExtLowerBuffer_[i+1] && Low[i]<Low[i+1])
{
The second thing is about denominations.

Wasn’t this what they were teaching you at the Online Trading Academy? Why didn’t you come to me first?
I.e. $2 bottom

1+0.5+05=2
A typical reaction is a minimum of 32 pips from the lower denominations. I have no example of a “counter” move beyond 58 pips.
From left to right:
$1 reaction from above, $1 reaction from below, $3 top (2+0.5+0.5), $3 bottom (2+1), $3 top (2+1)

So, currently we have a $2 top followed by a $1 reaction.

I’m thinking another dollar (or 2x 0.5) to be found before back, up.
Shorts
///wick out on the upside mark up
if (High[i]<High[i+1] && High[i+1]>ExtUpperBuffer_[i+1]+30*Point
&& Open[i+1]<ExtUpperBuffer_[i+1]
&& Open[i+1]>Close[i+1]
&& MathAbs(ExtUpperBuffer_[i+1]-ExtUpperBuffer_[i])<30*Point
&& High[i+1]>High[i+2]-20*Point
&& High[i+1]>High[i]
)
///wick out on the downside mark up
if (Low[i+1]<ExtLowerBuffer_[i+1]-30*Point
&& Open[i+1]>ExtLowerBuffer_[i+1]
&& Open[i+1]<Close[i+1]
&& MathAbs(ExtLowerBuffer_[i+1]-ExtLowerBuffer_[i])<30*Point
&& Low[i+1]<Low[i+2]+20*Point
&& Low[i]>Low[i+1]
)
///failed break out on the upside mark up
if (i>0 && High[i-1]<High[i] && High[i+2]>ExtUpperBuffer_[i+2]
&& High[i+1]>ExtUpperBuffer_[i+1]+20*Point
&& High[i+1]<ExtUpperBuffer_[i+1]+150*Point
&& High[i]<ExtUpperBuffer_[i]
)
///failed break out on the downside mark up
if (Low[i+2]<ExtLowerBuffer_[i+2]
&& Low[i+1]>ExtLowerBuffer_[i+1]-150*Point
&& Low[i+1]<ExtLowerBuffer_[i+1]-20*Point
&& Low[i]>ExtLowerBuffer_[i]
)
///near miss on the upside mark up
if (High[i+1]>ExtUpperBuffer_[i+1]-30*Point
&& High[i+1]<ExtUpperBuffer_[i+1]+25*Point
&& Close[i+1]<ExtUpperBuffer_[i+1]
&& High[i+1]-Low[i+1]>150*Point
// && High[i+1]>High[i+2]
&& High[i+1]>High[i]
&& ExtUpperBuffer_[i+1]>=ExtUpperBuffer_[i+2]
)
///near miss on the downside mark up
if (Low[i+1]<ExtLowerBuffer_[i+1]+30*Point
&& Low[i+1]>ExtLowerBuffer_[i+1]-20*Point
&& Close[i+1]>ExtLowerBuffer_[i+1]
&& High[i+1]-Low[i+1]>150*Point
&& Low[i+1]<Low[i+2]
&& Low[i+1]<Low[i]
&& ExtLowerBuffer_[i+1]<=ExtLowerBuffer_[i+2]+20*Point
)