- Katılım
- 23 Eki 2020
- Mesajlar
- 1,826
· 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: |