Rank: Advanced Member
Groups: Registered, Registered Users, Subscribers Joined: 7/25/2005(UTC) Posts: 1,042
Was thanked: 57 time(s) in 54 post(s)
|
Hi Dwight
I'm not 100% sure of what it is that you're asking but it's likely that a number of Multi-Frame formulas (indicators) are able to be used by calling specific formulas via the Fml() function. The "Multi-Frame D+ CLOSE" formula can provide daily, weekly, fortnightly, monthly or quarterly etc. CLOSE prices. For chart display purposes you only need one formula because a series of Input() functions allow for the selection of time-frames in addition to a number of other options. If you wish to call Multi-Frame formulas with another formula then you might need several copies, each with a different set of options. Only default Input() values can be accessed by other formulas or tools, so you'd need a weekly version and a monthly version.
The following code does not include the proprietary timing module so you will not be able to test or use the formula. However you should be able to see the range of settings available. User settings vary a little from one series to another. For example, the D+ series provides for daily, weekly, fortnightly and monthly time frames etc., while the D series provides for weekly, split weekly and monthly etc, time frames.
{Multi-Frame D+ CLOSE}
{Uses Equis Forum DLL}
{Roy Larsen, 2011-2014, 3/1/14}
{User settings}
N:=Input("Multi-Frame D+ CLOSE",0,0,0);
J:=Input("Months/Frame, 0=Weekly 5=Bi-weekly 10=Daily",0,12,0);
Q:=Input("Mode, 0=Static 1=Dynamic 2=Delayed",0,2,0);
G:=Input("End-of-Frame Offset in Days, 0-13",0,13,0);
{D+ Timing}
{Day counter by metastock@wabbit.com.au}
(Code for this module has been removed)
{Frame CLOSE}
ValueWhen(1,J,If(J=1,C,ValueWhen(2-G,1,C)));
Different formulas can be used to return a selected price rather than being stuck with just CLOSE. The timing modules for each series are slightly different, depending on a base chart's periodicity and other factors. The "J" variable produced by each timing module is the signal that identifies the end of any data frame.
{Multi-Frame D+ OHLC}
{Uses Equis Forum DLL}
{Roy Larsen, 2008-2014, 3/1/14}
{User settings}
N:=Input("Multi-Frame D+ OHLC, 0=All 1=O 2=H 3=L 4=C",0,4,0);
J:=Input("Months/Frame, 0=Weekly 5=Bi-weekly 10=Daily",0,12,0);
Q:=Input("Mode, 0=Static 1=Dynamic 2=Delayed",0,2,0);
G:=Input("End-of-Frame Offset in Days, 0-13",0,13,0);
{D+ Timing}
{Day counter by metastock@wabbit.com.au}
(Code for this module has been removed)
{Frame prices}
Q:=ValueWhen(1,M+(Z=1),O);
B:=HighestSince(1,M+(Z=1),H);
Y:=LowestSince(1,M+(Z=1),L);
Q:=ValueWhen(1,J,If(J=1,Q,ValueWhen(2-G,1,Q)));
B:=ValueWhen(1,J,If(J=1,B,ValueWhen(2-G,1,B)));
Y:=ValueWhen(1,J,If(J=1,Y,ValueWhen(2-G,1,Y)));
K:=ValueWhen(1,J,If(J=1,C,ValueWhen(2-G,1,C)));
{Outputs}
ValueWhen(1,N=0,Q);
ValueWhen(1,N=0,B);
ValueWhen(1,N=0,Y);
If(N=1,Q,If(N=2,B,If(N=3,Y,K)));
If this is of any help to you then email me at rlarsen@quik.co.nz for further information and/or a complete formula.
Roy
|