PureBytes Links
Trading Reference Links
|
Andrew, here's one way to get around the MetaStock null (or N/A)
limitation introduced by the forward-plotting Ref(x,+y) function:
===========
Centered MA
===========
---8<--------------------
{ http://www.metastocktools.com }
pds:=Input("MA periods",1,260,9);
type:=Input("MA type: [1]SMA, [2]EMA",1,2,1);
sma:=If(type=1,Mov(C,pds,S),Mov(C,pds,E));
center:=LastValue(Int(pds/2));
x:=Ref(sma,center);
y:=LastValue(x+PREV-PREV);
If(y>0,y,C)
---8<--------------------
jose '-)
http://www.metastocktools.com
--- In equismetastock@xxxxxxxxxxxxxxx, "Andrew Tomlinson"
<andrew_tomlinson@xxxx> wrote:
> Hi guys,
>
> I am playing with a number of different ways of projecting a
> centered moving average up to the current bar. For example, here I
> have a 9-day moving average which is centered and therefore plots 5
> days prior (i.e. the value for a particular bar is the SMA that
> would normally plot 5 bars later). In> this case I am trying to
> continue the line plot using the result of successively shorter
> centered moving averages.
>
> The problem is that the following just plots the original centered
> moving average (CMA). If I replace the CMA1, CMA2...etc. in the CMAP
> code with numbers, they all plot, so the basic mechanism seems ok.
> I suspect I'm making some kind of elementary mistake - can anyone
> see what I'm missing?
>
> (I know there are forward references - try coding a centered MA
> without)
>
> P1:=Input("Odd # of bars:",1,1001,9);
> MA:=Mov(C,P1,S);
> CMA:=Ref(MA,(p1+1)/2);
> CMA1:=Ref(Mov(C,P1-1,S),(p1+1)/2-1);
> CMA2:=Ref(Mov(C,P1-2,S),(p1+1)/2-2);
> CMA3:=Ref(Mov(C,P1-3,S),(p1+1)/2-3);
> CMA4:=Ref(Mov(C,P1-4,S),(p1+1)/2-4);
> CMA5:=Ref(Mov(C,P1-5,S),(p1+1)/2-5);
>
> CMAP:=
> If(Cum(1)=LastValue(Cum(1)-(p1+1)/2+1),CMA1,
> If(Cum(1)=LastValue(Cum(1)-(p1+1)/2+2),CMA2,
> If(Cum(1)=LastValue(Cum(1)-(p1+1)/2+3),CMA3,
> If(Cum(1)=LastValue(Cum(1)-(p1+1)/2+4),CMA4,
> If(Cum(1)=LastValue(Cum(1)-(p1+1)/2+5),CMA5,CMA)))));CMAP;
>
> Best
> Andrew
------------------------ Yahoo! Groups Sponsor --------------------~-->
Has someone you know been affected by illness or disease?
Network for Good is THE place to support health awareness efforts!
http://us.click.yahoo.com/Rcy2bD/UOnJAA/cosFAA/BefplB/TM
--------------------------------------------------------------------~->
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/equismetastock/
<*> To unsubscribe from this group, send an email to:
equismetastock-unsubscribe@xxxxxxxxxxxxxxx
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|