[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [EquisMetaStock Group] Convert Daily to Weekly/Monthly



PureBytes Links

Trading Reference Links

------------------------------------------------------------------------
You cannot reply to this message via email because you have chosen not
to disclose your email address to the group.

To reply:  http://groups.yahoo.com/group/equismetastock/post?act=reply&messageNum=5685
------------------------------------------------------------------------

Sam

> Is there a way to convert daily metastock files to weekly/monthly
> files with the downloader or any other tool? I have TC2000 as my EOD
> stock data provider & they give option to export data in metastock,
> ASCII & TCV3 formats.
>
> I know I can convert a daily chart to higher time frame, but I want
> to run some scans on raw metastock format files in different time
> frames. Any pointers will be appreciated.

I and a number of other people are working on creating weekly indicators
that can be used with daily periodicy charts and data. I feel that this
approach is more useful for running explorations and system tests than
attempting to switch between various timeframes.

The greatest hitch to this method is that each indicator requires a
specially constructed data array.

Here are two indicators that demonstrate my approach. I have a few others as
well, and a weekly Bollinger Band is in the pipe-line. Hope this gives you
some ideas.

Roy

  {Weekly Wilder's Smoothing (Close)}
  {for daily charts}
Pd:=Input("Periods in Weeks",1,99,10);
Op:=Input("1=Dynamic Current Week, MS Compatible",0,0,0);
Op:=Input("2=Value at End of Week,  3=Value at Start of Week",1,3,3);
 {1=dynamic current week, MS compatible}
 {2=signal @ end of week except when no Friday}
 {3=signal @ start of new week}
Lb:=LastValue(Cum(1)-0)=Cum(1); Pc:=1/Pd;
W1:=DayOfWeek()=5;
W2:=DayOfWeek()<=Ref(DayOfWeek(),-1);
We:=If(W1,1,If(Alert(W1,2)=0 AND W2,2,0));
Cl:=ValueWhen(1,We>0,If(We=1,C,Ref(C,-1)));
Ma:=If(Cum(We>0)=1,Cl,ValueWhen(1,We>0,PREV)*(1-Pc)+Cl*Pc);
Ma:=If(Op=1 AND We=0 AND Lb,ValueWhen(1,We>0,Ma) *(1-Pc)+C*Pc,Ma);
Ma:=If(DayOfWeek()=5 AND Op=3,Ref(Ma,-1),Ma); Ma;

  {Weekly EMA (Close)} {for daily charts}
Pd:=Input("Periods in Weeks",1,99,10);
Op:=Input("1=Update at Friday bar,  Dynamic Current Week",0,0,0);
Op:=Input("2=Update at Friday bar,  3=Update at Monday bar",1,3,2);
 {1=dynamic current week, MS compatible}
 {2=update @ end of week except when no Friday}
 {3=update @ start of new week}
Lb:=LastValue(Cum(1)-0)=Cum(1); Pc:=2/(Pd+1);
W1:=DayOfWeek()=5;
W2:=DayOfWeek()<=Ref(DayOfWeek(),-1);
We:=If(W1,1,If(Alert(W1,2)=0 AND W2,2,0));
Cl:=ValueWhen(1,We>0,If(We=1,C,Ref(C,-1)));
Ma:=If(Cum(We>0)=1,Cl,ValueWhen(1,We>0,PREV)*(1-Pc)+Cl*Pc);
Ma:=If(Op=1 AND We=0 AND Lb,ValueWhen(1,We>0,Ma) *(1-Pc)+C*Pc,Ma);
Ma:=If(DayOfWeek()=5 AND Op=3,Ref(Ma,-1),Ma); Ma;



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/