I'm looking for some help adjusting a pretty useful indicator.
I'm looking to generate an alert whenever a HL followed by a LL condition (declining support) or LL followed by a HL condition (rising support) occurs.
For anyone wondering, I'm basically trying to get a heads-up to possible wedge patterns.
I'm not sure how to code the indicator so it looks for the first condition, then look for the second condition. Any guidance here would be appreciated.
Code:
// This indicator labels HH, HL, LL, LH on the chart.
//
inputs:
LeftStrength( 3 ),
RightStrength( 3 ),
LookBackLength( 100 );
variable:
ID(-1),
Offset( 0 ) ,
HighValue1(0),
HighValue2(0),
LowValue1(0),
LowValue2(0);
Offset = .15 * Average( Range, 5 ) ;
if PivotHighVSBar( 1, High, LeftStrength, RightStrength, RightStrength + 1 ) <> -1 then
begin
HighValue1 = PivotHighVS(1, High, Leftstrength, RightStrength, LookBackLength );
HighValue2 = PivotHighVS(2, High, Leftstrength, RightStrength, LookBackLength );
if HighValue2 <> -1 and ( ( HighValue1 >= HighValue2 - Offset ) and ( HighValue1 <= HighValue2 + Offset ) ) then
begin
ID = Text_New(Date[RightStrength], Time[RightStrength], High[RightStrength] + Offset, "DT");
Text_SetStyle(ID, 2, 1 ) ;
Text_SetColor(ID, black);
Value1 = 1;
end ;
if HighValue2 <> -1 and HighValue1 > HighValue2 and value1 = 0 then
begin
ID = Text_New(Date[RightStrength], Time[RightStrength], High[RightStrength] + Offset, "HH");
Text_SetStyle(ID, 2, 1 ) ;
Text_SetColor(ID, blue);
end
else
if HighValue2 <> -1 and HighValue1 < HighValue2 and value1 = 0 then
begin
ID = Text_New(Date[RightStrength], Time[Rightstrength], High[RightStrength] + Offset, "(LH)");
Text_SetStyle(ID, 2, 1 ) ;
Text_SetColor(ID, blue);
end ;
Value1 = 0;
end ;
if PivotLowVSBar( 1, Low, LeftStrength, RightStrength, RightStrength + 1 ) <> -1 then
begin
LowValue1 = PivotLowVS(1, Low, Leftstrength, RightStrength, LookBackLength );
LowValue2 = PivotLowVS(2, Low, Leftstrength, RightStrength, LookBackLength );
if LowValue2 <> -1 and ( ( LowValue1 >= LowValue2 - Offset ) and ( LowValue1 <= LowValue2 + Offset ) ) then
begin
ID = Text_New(Date[RightStrength], Time[RightStrength], Low[RightStrength] - Offset, "DB");
Text_SetStyle(ID, 2, 0 ) ;
Text_SetColor(ID, black);
Value1 = 1;
end;
if LowValue2 <> -1 and LowValue1 < LowValue2 and Value1 = 0 then
begin
ID = Text_New(Date[RightStrength], Time[RightStrength], Low[RightStrength] - Offset, "LL");
Text_SetStyle(ID, 2, 0 ) ;
Text_SetColor(ID, white);
end
else
if LowValue2 <> -1 and LowValue1 > LowValue2 and Value1 = 0 then
begin
ID = Text_New(Date[RightStrength], Time[RightStrength], Low[RightStrength] - Offset, "(HL)");
Text_SetStyle(ID, 2, 0 ) ;
Text_SetColor(ID, white);
end;
Value1 = 0;
end ;