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
· Reply-To: metastock@xxxxxxxxxxxxx
· 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

{ by Adam Hefner }
{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,
{then}If(BarsSince(Ref(DH1=1,-1))=
BarsSince(Ref(DL1=1,-1)),
{then}If(BarsSince(
ValueWhen(3,DH1=1,DH1))<
BarsSince(
ValueWhen(3,DL1=1,DL1)),
{then}-1,
{else}1),
{else}If(BarsSince(Ref(DH1=1,-1))<
BarsSince(Ref(DL1=1,-1)),
{then}1,
{else}-1)),
{else}If(BarsSince(DH1=1)<BarsSince(DL1=1),
{then}-1,
{else}1));
{time since market reversed}
DH:=BarsSince(D1=1);
DL:=BarsSince(D1=-1);
{ 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,
Adam Hefner.
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.

TradeStation® Pro, TradeStation® 2000i, OptionStation®, SuperCharts®, PowerEditor® and EasyLanguage®
are registered trademarks of TradeStation Technologies, Inc. Other names and marks referred to are the property of their respective owners.

All information provided on this website is for educational purposes only. Trading involves risk, including possible loss of principal and other losses.

Ten i inne materiały na tej stronie zostały zamieszczone zostały jedynie w celach edukacyjnych, nie ponoszę żadnej odpowiedzialno¶ci za ich stosowanie.

Gra na giełdzie i rynkach walutowych (FOREX) niesie ze sob± ryzyko poważnych strat finansowych!