Rank: Advanced Member
Groups: Registered, Registered Users, Subscribers, Unverified Users Joined: 8/11/2005(UTC) Posts: 104
|
Hi Equis Formual Assatance I would like to Extend the Trend Line in the Formula below past the Second date
to the Last Data Point on the Chart i.e. extend plot to end of chart Hoping you can oblige Thanking you in advace Derek Code:======================
Trendline - date range
======================
---8<--------------------------{ Trendline - date range v3.0©Copyright 2002~2006 Jose Silva.
For personal use only.
All code remains the property of Jose Silva.
http://www.metastocktools.com }{ Dates user input }
StDay:=Input("start Day",1,31,1);
StMnth:=Input("start Month",1,12,1);
StYear:=Input("start Year",1800,2200,2006);
EnDay:=Input("end Day",1,31,1);
EnMnth:=Input("end Month",1,12,6);
EnYear:=Input("end Year",1800,2200,2006);{ Selected date periods }
start:=Year()>StYear
OR (Year()=StYear AND (Month()>StMnth
OR Month()=StMnth AND DayOfMonth()>=StDay));
end:=Year()<EnYear
OR (Year()=EnYear AND (Month()<EnMnth
OR Month()=EnMnth AND DayOfMonth()<=EnDay));{ Date signals }
date1:=start AND Alert(start=0,2);
date2:=end=0 AND Alert(end,2);
date2:=Zig(end AND Cum(1)>1,1,$)=1;{ Restrict out of range dates to chart }
date1:=If(LastValue(Cum(date1))>0,date1,
Cum(1)=1);
date2:=If(LastValue(Cum(date2))>0,date2,
LastValue(Cum(1))=Cum(1));{ Sort dates in chronological order }
dateOk:=LastValue(BarsSince(date1))
>LastValue(BarsSince(date2));
day1:=If(dateOk,date1,date2);
day2:=If(dateOk,date2,date1);{ Data Array type, levels }
dataArray:=C;
price1:=ValueWhen(1,day1,dataArray);
price2:=LastValue(ValueWhen(1,day2,dataArray));{ Trendline definition }
x1:=LastValue(BarsSince(day1));
x2:=LastValue(BarsSince(day2));
trendline:=price1
+BarsSince(day1)*(price2-price1)
/Max(x1-x2,.000001);{ Rem next line to extend plot to end of chart }
trendline:=Ref(Ref(trendline,-x2),x2);{ Plot on price chart }
trendline ---8<--------------------------
|