yesterday high & low, last weeks high and low, this weeks open and todays open in EL TS2000i:
If changing the value of weeknumberhighlow from 1 to 0 then it will be the high and low of the current week up until today (handy after Christmas)
set it up as an indicator, you'll need 10 days history
prcescale the same as the symbol and update it not at every tick: so'll you will have to wait until the first bar is completed. Otherwise with every tick you get some annoying screenflicker.
Make sure to have a bit of space on the right side of your prices that's where the lines will appear.
enjoy
Sherlock
paste=====>
Inputs:
lineColorOpenDay(darkGree n), {yesterdays close}
lineColorHighDay(Blue), {yesterdays high}
lineColorLowDay(Red), {yesterdays low}
lineStyleDay(tool_Solid), {Tool_Solid,Tool_Dotted, Tool_Dashed, Tool_Dashed2, Tool_Dashed3}
lineSizeDay(0), {thickness of line 0 - 6, if larger than 0 then dotted, dashed etc will not work}
lineColorOpenWeek(darkGre en), {this weeks open}
lineColorHighWeek(darkBlu e), {this weeks high}
lineColorLowWeek(darkRed) , {this weeks low}
lineStyleWeek(tool_Dotted ), {Tool_Solid,Tool_Dotted, Tool_Dashed, Tool_Dashed2, Tool_Dashed3}
lineSizeWeek(0), {thickness of line 0 - 6, if larger than 0 then dotted, dashed etc will not work}
weekNumberHighLow(1), {when history is short last week is no good, 1 = last week, 0 = this week}
displaceLine(1); {displacing will only work on minute and daily charts, not on tick charts :-( }
Variables:
maxpts(6),
count(0),
dateOK(True),
lastDisplayTime (2359);
Arrays:
level[6](0),
lineID[6](0),
lineColor[6](0),
lineStyle[6](0),
lineSize[6](0);
If lastBarOnChart then
begin
{delete the lines - they are overlapping the old bars}
for count = 1 to maxpts
begin
if Level[Count] <> 0 then
begin
TL_delete(LineID[Count]);
end;
end;
{initialise values - unfortunately they'll have to be re-initialised}
Level[1] = OpenD(0);
Level[2] = LowD(1);
Level[3] = HighD(1);
Level[4] = OpenW(0);
Level[5] = LowW(weekNumberHighLow);
Level[6] = HighW(weekNumberHighLow);
LineColor[1] = lineColorOpenDay;
LineColor[2] = lineColorLowDay;
LineColor[3] = lineColorHighDay;
LineColor[4] = lineColorOpenWeek;
LineColor[5] = lineColorLowWeek;
LineColor[6] = lineColorHighWeek;
LineStyle[1] = lineStyleDay;
LineStyle[2] = lineStyleDay;
LineStyle[3] = lineStyleDay;
LineStyle[4] = lineStyleWeek;
LineStyle[5] = lineStyleWeek;
LineStyle[6] = lineStyleWeek;
LineSize[1] = lineSizeDay;
LineSize[2] = lineSizeDay;
LineSize[3] = lineSizeDay;
LineSize[4] = lineSizeWeek;
LineSize[5] = lineSizeWeek;
LineSize[6] = lineSizeWeek;
{if the bar is minutes then the trednlines do not have to go back all the way to the price bar.}
{unfortunately this only works with minute bars and not with tick bars}
if dataCompression = 1 then
value1 = displaceLine * barInterval
else
value1 = 0;
value2 = calctime(lastCalcTime , value1);
{need to check if the bar gets displaced beyond 2400 because then it plots on YESTERDAY's bars}
if value2 >= 2358 then value2 = 2358 ;
{now draw the lines}
for Count = 1 to maxpts
begin
{ fill the array with the TL parameters for deleting it later and plot the new trendline at the same time}
LineID[Count] = TL_New( Date,value2 , Level[count], Date, lastDisplayTime, Level[count]);
{complete the TL: set the trendline display parameters}
TL_SetColor(LineID[Count], LineColor[count]);
TL_SetStyle(LineID[Count], LineStyle[count]);
TL_SetSize(LineID[Count],lineSize[Count]);
TL_SetExtRight(LineID[Count], true );
end;
end;
<=======end paste