MetaStock™ Zone Forum & FAQ Artykuły Linki Elliott Waves EasyLanguage™ Zone

 A B C D E F G H I J K L M N O P R S T U V W Y Z #

Point & Figure Indicator by Adam Hefner
· To: "Metastock" <metastock@xxxxxxxxxxxxx>
· Subject: P&F Indicator
· From: "Von Hef" <VonHef@xxxxxxxxxx>
· Date: Tue, 27 Oct 1998 20:32:16 -0600
· Sender: owner-metastock@xxxxxxxxxxxxx

I know its long....but its the best I can do.
The following indicator will plot the high of the "x" column and the low of the "o" column in a stairstep manner on a barchart. If the high value changes then the low should hold its value until there is a "P&F" reversal, then as the low changes the high should hold. The first two lines are the Box and Reversal values, and I wasn't sure what the best "Input" values should be so please feel free to suggest any changes. My goal is to design a system around this indicator, to test different Point and Reversal amounts, but its nice to examine the P&F support and resistance levels on a bar chart. Also, I am not as experienced as many on this list nor am I above making errors, so test the value of this indicator for yourself.

Here is an update to the P&F Indicator, that corrects a plotting error I found on 1 chart.

Point & Figure Indicator

{Note: this will plot the high of the"x" and low of the "o" on a barchart}

{box value}
BS1:=Input("Box Size ?",.1,100,1);
{reversal amount}
RS1:=Input("Reversal Amount ?",1,10,3)*BS1;
{box high calculation}
BH1:=(Int(H/BS1))*BS1;
{box low calculation}
BL1:=If(((Int(L/BS1))*BS1)=L,
{then}L,
{else}((Int(L/BS1))*BS1)+BS1);
{reversal calculation}
DH1:=If((BL1>=Ref(BL1,-1))AND
((BH1-RS1)>=Ref(BL1,-1)),
{then}1,
{else}0);
DL1:=If((BH1<=Ref(BH1,-1))AND
((BL1+RS1)<=Ref(BH1,-1)),
{then}1,
{else}0);
{Determine market direction}
{NOTE: The value of D1=
1="trend up"
-1="trend down"}
D1:=If(DH1=1 AND DL1=1,
ValueWhen(3,DH1=1,DH1))<
ValueWhen(3,DL1=1,DL1)),
{then}-1,
{else}1),
{then}1,
{else}-1)),
{then}-1,
{else}1));
{time since market reversed}
{ plot high and low }
PH1:=HighestSince(1,DH=1,BH1);
PL1:=LowestSince(1,DL=1,BL1);
PH2:=ValueWhen(1,DH>0,PH1);
PL2:=ValueWhen(1,DL>0,PL1);
PH2;
PL2;

Best wishes,
e-mail: VonHef@xxxxxxxxxx

[9969]

Source / From: TOP
http://purebytes.com/archives/metastock/

Equis and MetaStock® and MetaStock Professional® are registered trademarks of Equis International. Achelis Binary Wave®, The DownLoader®,
Expert Advisor®, OptionScope®, Quotecenter® and Smart Charts® are trademarks of Equis International, a Thomson Reuters company.