Hi,
I have 2 problems with the code below.
1. The code is referencing yesterday's opening range and not today's. What do I need to change to get it to reference today's opening range between the StartCalcTime and EndCalcTime?
2. Once problem 1 is solved, I would like to have the opening range trendline extend to the input value of the TLEndTime. Right now I just have a vertical line shooting straight up for the opening range trendlines.
Thanks.
Code: Select all
Inputs:
StartCalcTime (0900),
EndCalcTime (0905),
TLStartTime (0900),
TLEndTime (1430),
PlaceTextRight (true),
PlotatDateChange (true),
PlotToDateEnd (true),
IgnoreWeekends (true),
TLSize (1),
TLStyle (1),
DayHiColor (white),
DayLoColor (white),
FibR1Color (red),
FibR2Color (red),
FibR3Color (red),
FibR4Color (red),
FibS1Color (green),
FibS2Color (green),
FibS3Color (green),
FibS4Color (green);;
Variables:
Monday2Friday (false),
FibR1 (0),
FibR2 (0),
FibR3 (0),
FibR4 (0),
FibS1 (0),
FibS2 (0),
FibS3 (0),
FibS4 (0),
DayHiTL (0),
DayLoTL (0),
FibR1TL (0),
FibR2TL (0),
FibR3TL (0),
FibR4TL (0),
FibS1TL (0),
FibS2TL (0),
FibS3TL (0),
FibS4TL (0),
DayHi (-999999),
DayLo (+999999),
HaveTLs (false),
StartTime (0),
EndTime (0),
DayHiTxt (0),
DayLoTxt (0),
FibR1Txt (0),
FibR2Txt (0),
FibR3Txt (0),
FibR4Txt (0),
FibS1Txt (0),
FibS2Txt (0),
FibS3Txt (0),
FibS4Txt (0),
SessClose (0),
TextStyleHoriz (1), //0: To the right of the bar specified for the text object
//1: To the left of the bar specified for the text object
//2: Centered on the bar specified for the text object
TextStyleVert (2); //0: Beneath the price specified for the text object
//1: Above the price specified for the text object
//2: Centered on the specified price location of the text object
If IgnoreWeekends then begin
If DayOfWeek(Date) >= Monday and DayOfWeek(Date) <= Friday then
Monday2Friday = true
else
Monday2Friday = false;
end
else begin
Monday2Friday = true;
end;
If Monday2Friday then begin
If Date <> Date[1] then begin
If PlaceTextRight then
TextStyleVert = 1;
If PlotatDateChange then
StartTime = Time
else
StartTime = StartCalcTime;
EndTime = Time[1];
FibR1 = DayLo + ((DayHi - DayLo) * 2.33);
FibR2 = DayLo + ((DayHi - DayLo) * 3.82);
FibR3 = DayLo + ((DayHi - DayLo) * 5);
FibR4 = DayLo + ((DayHi - DayLo) * 6.1);
FibS1 = DayHi - ((DayHi - DayLo) * 2.33);
FibS2 = DayHi - ((DayHi - DayLo) * 3.82);
FibS3 = DayHi - ((DayHi - DayLo) * 5);
FibS4 = DayHi - ((DayHi - DayLo) * 6.1);
DayHi = -999999;
DayLo = +999999;
HaveTLs = false;
end; //If Date <> Date[1] then begin...
If Time > StartCalcTime and Time <= EndCalcTime then begin
If High >= DayHi then DayHi = High;
If Low <= DayLo then DayLo = Low;
If BarStatus(1) = 2 then
SessClose = Close;
end;//If Time > StartCalcTime and Time <= EndCalcTime then begin...
If HaveTLs = false then begin
HaveTLs = true;
DayHiTL = TL_New(Date, StartCalcTime, DayHi, Date, EndCalcTime, DayHi);
TL_SetColor(DayHiTL, DayHiColor);
TL_SetSize(DayHiTL, TLSize);
TL_SetStyle(DayHiTL, TLStyle);
DayLoTL = TL_New(Date, StartCalcTime, DayHi, Date, EndCalcTime, DayHi);
TL_SetColor(DayLoTL, DayLoColor);
TL_SetSize(DayLoTL, TLSize);
TL_SetStyle(DayLoTL, TLStyle);
FibR1TL = TL_New(Date, TLStartTime , FibR1, Date, TLEndTime , FibR1);
TL_SetColor(FibR1TL, FibR1Color);
TL_SetSize(FibR1TL, TLSize);
TL_SetStyle(FibR1TL, TLStyle);
FibR2TL = TL_New(Date, TLStartTime , FibR2, Date, TLEndTime , FibR2);
TL_SetColor(FibR2TL, FibR2Color);
TL_SetSize(FibR2TL, TLSize);
TL_SetStyle(FibR2TL, TLStyle);
FibR3TL = TL_New(Date, TlStartTime, FibR3, Date, TLEndTime, FibR3);
TL_SetColor(FibR3TL, FibR3Color);
TL_SetSize(FibR3TL, TLSize);
TL_SetStyle(FibR3TL, TLStyle);
FibR4TL = TL_New(Date, TLStartTime, FibR4, Date, TLEndTime, FibR4);
TL_SetColor(FibR4TL , FibR4Color);
TL_SetSize(FibR4TL , TLSize);
TL_SetStyle(FibR4TL , TLStyle);
FibS1TL = TL_New(Date, TLStartTime, FibS1, Date, TLEndTime, FibS1);
TL_SetColor(FibS1TL, FibS1Color);
TL_SetSize(FibS1TL, TLSize);
TL_SetStyle(FibS1TL, TLStyle);
FibS2TL = TL_New(Date, TLStartTime, FibS2, Date, TLEndTime, FibS2);
TL_SetColor(FibS2TL, FibS2Color);
TL_SetSize(FibS2TL, TLSize);
TL_SetStyle(FibS2TL, TLStyle);
FibS3TL = TL_New(Date, TLStartTime, FibS3, Date, TLEndTime, FibS3);
TL_SetColor(FibS3TL, FibS3Color);
TL_SetSize(FibS3TL, TLSize);
TL_SetStyle(FibS3TL, TLStyle);
FibS4TL = TL_New(Date, TLStartTime, FibS4, Date, TLEndTime, FibS4);
TL_SetColor(FibS4TL, FibS4Color);
TL_SetSize(FibS4TL, TLSize);
TL_SetStyle(FibS4TL, TLStyle);
DayHiTxt = Text_New(Date, TLStartTime, DayHi, "100%");
Text_SetStyle(DayHiTxt, TextStyleHoriz, TextStyleVert);
Text_SetColor(DayHiTxt, DayHiColor);
DayLoTxt = Text_New(Date, TLStartTime, DayLo, "0%");
Text_SetStyle(DayLoTxt, TextStyleHoriz, TextStyleVert);
Text_SetColor(DayLoTxt, DayLoColor);
FibR1Txt = Text_New(Date, TLStartTime, FibR1, "233%");
Text_SetStyle(FibR1Txt, TextStyleHoriz, TextStyleVert);
Text_SetColor(FibR1Txt, FibR1Color);
FibR2Txt = Text_New(Date, TLStartTime, FibR2, "382%");
Text_SetStyle(FibR2Txt, TextStyleHoriz, TextStyleVert);
Text_SetColor(FibR2Txt, FibR2Color);
FibR3Txt = Text_New(Date, TLStartTime, FibR3, "500%");
Text_SetStyle(FibR3Txt, TextStyleHoriz, TextStyleVert);
Text_SetColor(FibR3Txt, FibR3Color);
FibR4Txt = Text_New(Date, TLStartTime, FibR4, "610%");
Text_SetStyle(FibR4Txt, TextStyleHoriz, TextStyleVert);
Text_SetColor(FibR4Txt, FibR4Color);
FibS1Txt = Text_New(Date, TLStartTime, FibS1, "233%");
Text_SetStyle(FibS1Txt, TextStyleHoriz, TextStyleVert);
Text_SetColor(FibS1Txt, FibS1Color);
FibS2Txt = Text_New(Date, TLStartTime, FibS2, "382%");
Text_SetStyle(FibS2Txt, TextStyleHoriz, TextStyleVert);
Text_SetColor(FibS2Txt, FibS2Color);
FibS3Txt = Text_New(Date, TLStartTime, FibS3, "500%");
Text_SetStyle(FibS3Txt, TextStyleHoriz, TextStyleVert);
Text_SetColor(FibS3Txt, FibS3Color);
FibS4Txt = Text_New(Date, TLStartTime, FibS4, "610%");
Text_SetStyle(FibS4Txt, TextStyleHoriz, TextStyleVert);
Text_SetColor(FibS4Txt, FibS4Color);
end //If HaveTLs = false then begin...
else begin
If PlotToDateEnd then
EndTime = EndTime
else
EndTime = EndCalcTime;
TL_SetEnd(DayHiTL, Date, TLEndTime, DayHi);
TL_SetEnd(DayLoTL, Date, TLEndTime, DayLo);
TL_SetEnd(FibR1TL, Date, TLEndTime, FibR1);
TL_SetEnd(FibR2TL, Date, TLEndTime, FibR2);
TL_SetEnd(FibR3TL, Date, TLEndTime, FibR3);
TL_SetEnd(FibR4TL, Date, TLEndTime, FibR4);
TL_SetEnd(FibS1TL, Date, TLEndTime, FibS1);
TL_SetEnd(FibS2TL, Date, TLEndTime, FibS2);
TL_SetEnd(FibS3TL, Date, TLEndTime, FibS3);
TL_SetEnd(FibS4TL, Date, TLEndTime, FibS4);
If PlaceTextRight then begin
Text_SetLocation(DayHiTxt, Date, TLEndTime, DayHi);
Text_SetLocation(DayLoTxt, Date, TLEndTime, DayLo);
Text_SetLocation(FibR1Txt, Date, TLEndTime, FibR1);
Text_SetLocation(FibR2Txt, Date, TLEndTime, FibR2);
Text_SetLocation(FibR3Txt, Date, TLEndTime, FibR3);
Text_SetLocation(FibR4Txt, Date, TLEndTime, FibR4);
Text_SetLocation(FibS1Txt, Date, TLEndTime, FibS1);
Text_SetLocation(FibS2Txt, Date, TLEndTime, FibS2);
Text_SetLocation(FibS3Txt, Date, TLEndTime, FibS3);
Text_SetLocation(FibS4Txt, Date, TLEndTime, FibS4);
end; //If PlaceTextRight then begin...
end; //If HaveTLs then begin...
end; //If Monday2Friday then begin...