Indicator:
Weekly Hi-Lo Lines
{ This indicator is for use with daily charts and inserts 2
horizontal trendlines for each week, at the high and low of the
previous week, respectively.
For the current week, the
trendlines are extended to the right. }
inputs:
HighColor( Yellow ),
LowColor(
Cyan ) ;
variables:
HavePrevLines( false ),
TLHigh( 0 ),
TLLow( 0 ),
WeekHigh( 0 ),
WeekLow( 1000000 ),
PrevWeekHigh( 0 ),
PrevWeekLow( 0 ) ;
if DayOfWeek( Date ) <
DayOfWeek( Date[1] ) then
{ ie, if new week }
begin
{
truncate the previous lines if they exist }
if HavePrevLines then
begin
TL_SetEnd( TLHigh, Date[1], Time[1],
PrevWeekHigh ) ;
TL_SetEnd( TLLow, Date[1], Time[1],
PrevWeekLow ) ;
TL_SetExtRight( TLHigh, false ) ;
TL_SetExtRight( TLLow, false )
;
end ;
{ insert the new hi/lo lines and set their
colors/extents }
TLHigh = TL_New( Date[1], Time[1], WeekHigh,
Date, Time, WeekHigh ) ;
TLLow = TL_New( Date[1], Time[1],
WeekLow, Date, Time, WeekLow ) ;
TL_SetColor( TLHigh, HighColor )
;
TL_SetColor( TLLow, LowColor ) ;
TL_SetExtLeft( TLHigh,
false ) ;
TL_SetExtLeft( TLLow,false ) ;
TL_SetExtRight(
TLHigh, true ) ;
TL_SetExtRight( TLLow, true ) ;
{
re-initialize hi/lo variables }
PrevWeekHigh = WeekHigh ;
PrevWeekLow = WeekLow ;
WeekHigh = High ;
WeekLow = Low ;
{
set flag }
if HavePrevLines = false then
HavePrevLines = true
;
end
else
{ if new hi/lo for week, save values }
begin
if High > WeekHigh then
WeekHigh = High ;
if Low < WeekLow
then
WeekLow = Low ;
end ;