PureBytes Links
Trading Reference Links
|
Trendchaser, your code is a Linear Regression mixture of the Typ() SMA
and Close. It doesn't address the original problem.
Ron,
http://finance.groups.yahoo.com/group/Metastockusers/message/9753
welcome to one of MetaStock's single precision limitations:
MS can't handle accurate number crunching in complex processing.
The code below, using and external dll to process the Linear
Regression values, tracks the Mov(Typ(),20,S) correctly:
---8<--------------------
{ Adaptive.dll (not avail to public) must be in
...\MetaStock\External Function DLLs\ folder }
pds:=Input("Linear Regression Trendline periods",2,2520,21);
x:=Mov(Typ(),20,S);
LRSlope:=ExtFml("Adaptive.LinRegSlope",x,pds);
LRInd:=LRSlope*Cum(1)
-LRSlope*ExtFml("Adaptive.Mov",Cum(1),pds)
+ExtFml("Adaptive.Mov",x,pds);
lastVal:=LastValue(LRInd);
countback:=LastValue(Cum(1))-Cum(1);
LR:=
lastVal-LastValue(LRSlope)*countback;
restrict:=0-(LastValue(Cum(1))-pds);
LRT:=Ref(Ref(LR,-restrict),restrict);
LRT
---8<--------------------
Adaptive.dll is not available for public release, so you'll have to
take my word for it.
Now, the same code, using MetaStock's Linear Regression functions,
plots a Linear Regression line that does not track Mov(Typ(),20,S):
---8<--------------------
pds:=Input("Linear Regression Trendline periods",2,2520,21);
x:=Mov(Typ(),20,S);
LRSlope:=LinRegSlope(x,pds);
LRInd:=LinearReg(x,pds);
lastVal:=LastValue(LRInd);
countback:=LastValue(Cum(1))-Cum(1);
LR:=
lastVal-LastValue(LRSlope)*countback;
restrict:=0-(LastValue(Cum(1))-pds);
LRT:=Ref(Ref(LR,-restrict),restrict);
LRT
---8<--------------------
Linear Regression has been a thorn in MetaStock's side for a while.
jose '-)
--- In Metastockusers@xxxxxxxxxxxxxxx, "trendchaser2003"
<trendchaser2003@xxxx> wrote:
> Try this.
>
> Ps:=Input("Mov(Typ() Periods",2,1000,20);
> Pe:=Input("LinearReg Periods",2,1000,21);
> x:=Mov(Typ(),Ps,S);
> x:=LastValue(X);
> Z:=LastValue(LinearReg(C,Pe));
> Z:=(Z+X)-Z;
> Y:=LastValue(Cum(1))-Cum(1);
> U:=Z-(LastValue(LinRegSlope(C,Pe))*Y);
> R:=0-(LastValue(Cum(1))-Pe);
> A:=U+Ref(C,R)-Ref(C,R);
> Range:=LastValue(Mov(H,Pe,E)-LastValue(Mov(L,Pe,E)));
> a+(16*(0.125*Range));
> a+(8*(0.125*Range));
> A;
> a-(8*(0.125*Range));
> a-(16*(0.125*Range));
>
> Trendchaser
> http://www.freewebs.com/trendchaser/
> > --- In Metastockusers@xxxxxxxxxxxxxxx, karile <karile@xxxx>
wrote:
> > Hi,
> > I have a code which calculates a linear regression (see
below).
> > What I would like to have is a linear regression of a 20 SMA
> > ( (mov(typical(),20,s) ) instead of the close.
> > Could anyone adjust the code below to perform that ?
> > Here is the code :
> > Pe:=Input("Periods",2,1000,6);
> > Z:=LastValue(LinearReg(C,Pe));
> > Y:=LastValue(Cum(1))-Cum(1);
> > U:=Z-(LastValue(LinRegSlope(C,Pe))*Y);
> > R:=0-(LastValue(Cum(1))-Pe);
> > U+Ref(C,R)-Ref(C,R);
> > Thanks for your help,
> > Regards,
> > Karile
------------------------ Yahoo! Groups Sponsor ---------------------~-->
Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
Printer at MyInks.com. Free s/h on orders $50 or more to the US & Canada.
http://www.c1tracking.com/l.asp?cid=5511
http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/zMEolB/TM
---------------------------------------------------------------------~->
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/Metastockusers/
<*> To unsubscribe from this group, send an email to:
Metastockusers-unsubscribe@xxxxxxxxxxxxxxx
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|