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

RE: [AmiBroker] Re: Identifying Pnf Patterns



PureBytes Links

Trading Reference Links

Graham,

Changing the Background color does in fact let AB’s normal values show, but that isn’t the issue. If you look at  the link called Chart and Grid you will see that his image shows values in the right (Blank 10) area of the chart with each line of the PnF having its own value. This is what I can’t duplicate. Sure I can kind of  interpolate visually from AB’s Values, but that is not as quick and easy as having them were he shows them on his chart image. I am just learning how to use PnF charts as Wycoft describes their use to forecast the degree of price movement, and having these values would make that a lot easier. I can’t understand why it works for him and not for me!

 

Don Lindberg

 


From: amibroker@xxxxxxxxxxxxxxx [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of Graham
Sent: Tuesday, April 24, 2007 9:49 PM
To: amibroker@xxxxxxxxxxxxxxx
Subject: Re: [amibroker] Re: Identifying Pnf Patterns

 

remove the chartbackground colour and change the colours of the charts so you can see them, the background is overlaying the axes



--
Cheers
Graham
AB-Write >< Professional AFL Writing Service
Yes, I write AFL code to your requirements
http://www.aflwriting.com

On 25/04/07, Don Lindberg <dlindber@xxxxxxxxxxnet> wrote:

I have copied the new code. Blank bars set to 10. PlotGrid set to Yes. Scaling set to Traditional (I tried the others too) and the following image is what I get! Were are the Values?????? I am using AB 4.93, running on MS Vista Business.

 


From: amibroker@xxxxxxxxxps.com [mailto: amibroker@xxxxxxxxxps.com] On Behalf Of apfxtrader
Sent: Tuesday, April 24, 2007 4:15 PM
To: amibroker@xxxxxxxxxps.com
Subject: [amibroker] Re: Identifying Pnf Patterns

 

Lets go over the steps to plot Chart and Grid once again:

Once you copy the new code*  at the end of the message

You need to perform the following:

Set Blank bars in right margin  to 10 .
Preferences Window

Right click on chart select Parameters and press  "YES"  on "PlotGrid" option.
Parameters Window 

Note that:
Grid is plotted for the chart area in the right of  Vertical Selection Line. Chart and Grid

* The following code includes the option to choose form 3 ways  of calculating the box size:

1.      Traditional  (Box size default value  = 1  with increments of 10 points)

2.      Percentage (Box size default value 1%  of last value close with increments of 0.1%).

3.      Average True Range (Box size default value last value ATR (20)  with increments of 10 % of ATR (20) ).

You  can choose to apply this from "Scaling Method" drop down  menu in Parameters

Don't forget to check the code in formula editor before you apply

//Copy ----------------------------------------------------


GraphXSpace = 5;

SetChartBkColor(ParamColor("BackGroundColor",  colorBlack));
GraphColor =  ParamColor("GarphColor",colorLightGrey);
GridColor = ParamColor("GridColor", ColorRGB(39,49, 67) );

Scaling = ParamList("Scaling Method", "Traditional|Percentage|AVG True Range");

if( scaling == "Traditional")      Box = Param("Box", 1, 0.2, 10, 0.1);
else
if( scaling == "Percentage")      Box = Pa! ram("Box ", 1, 0.2, 10, 0.1)/100 * LastValue(C);


else
if( scaling == "AVG True Range")  Box = Param("Box", 1, 0.3, 5, 0.1) * LastValue( ATR (20));



shiftChart =0;
shiftLastClose =1;
shiftGrid =7;
shiftPriceAxis = 2;


Reverse = Param("Reverse", 3, 1, 5);
j = 0;
PFL[0] = Box * ceil(Low[0]/Box) + Box;
PFH[0] = Box * floor(High[0]/Box);
direction = 0;


for( i = 1; i < BarCount; i++ )
{
if(direction[j] == 0)
{
if(Low[i] <= PFL[j] - Box)
{
PFL[j] = Box * ceil(Low[i]/Box);
}
else
{
if(High[i] >= PFL[j] + Reverse*Box)
{
j++;
direction[j] = 1;
PFH[j] = Box * floor(High[i]/Box);
PFL[j] = PFL[j - 1] + Box;

}
}
}
else
{
if(High[i] >= PFH[j] + Box)
{
PFH[j] = Box * floor(High[i]/Box);
}
else
{
if( Low[i] <= PFH[j] - Reverse * Box )
{
j++;
direction[j] = 0;
PFH[j] = PFH[j - 1] - Box;
PFL[j] = Box * ceil(Low[i]/Box);

}
}
}
}
delta = BarCount - j -1;
direction = Ref(direction, - delta);
Hi = Ref(PFH, -delta) + Box/2;
Lo = Ref(PFL, -delta)- Box/2;
Cl = IIf(direction == 1, Hi, Lo);
Op = IIf(direction == 1, Cl - Box, Cl + Box);




PlotOHLC(Op, Hi, Lo, Cl,"", GraphColor , stylePointAndFigure|styleNoLabel, 0, 0 ,shiftChart);



Last = Ref( LastValue(C), -(BarCount-1));
Plot( Last,"", colorRed,styleNoLine|styleDots, 0 , 0, shiftLastClose);

// selected value
Value= IIf(direction>0, SelectedValue(Hi)-box/2, SelectedValue(Lo)+box/2);

//-----------------------------------------------------------------------
//        GRID CONSTRUCTION
//----------------------------------------------------------------------

PlotGridLines = ParamToggle("PlotdGrid", "Yes! |No", 0) ;



if (PlotGridLines)
{
begin = SelectedValue(BarIndex());
end = LastValue(BarIndex());
period = end-begin +1;

if( begin<end)
{


ScreenHigh =LastValue( HHV(cl, period ));
ScreenLow =LastValue( LLV( Cl, period) );


top= LineArray( begin-shiftGrid, screenHigh, end, screenhigh, 0 , 1);
Bot= LineArray( begin-shiftGrid, screenlow, end, screenLow, 0, 1);

Plot( top, "", gridColor,styleLine|styleNoLabel , 0, 0,shiftGrid);
//Plot( bot, "", gridColor,styleLine|styleNoLabel,  0 , 0 , shiftGrid);


VerticalGrid = IIf ( BarIndex() >= begin, IIf(direction==1, screenHigh, screenLow), Null);

Plot (VerticalGrid, "", gridColor, styleStaircase|styleNoLabel, 0,0, 1);


    format = 8.2;



    for  ( n=LastValue(bot); n< LastValue(top) - 0.5*box; n = n+box)
    {
       
    Plot(  bot , "", gridColor, styleLine|styleNoLabel, 0, 0 ,shiftGrid);
   
   
    text = NumToStr(LastValue(bot) + 0.5*box, format);
    xposition = BarCount+shiftPriceaxis;
    yPosition = LastValue(bot)+0.27*box;
   
    PlotText(text,  xPosition , yPosition, colorWhite);
    bot = bot + box;   

    }   
}

}


//---------------------------------------------------------------------
//    TITLE
//----------------------------------------------------------------------

Title = "\n" +
" Instrument : " + Name() +  FullName()+"\n " +
"Formula : " + " PF StockChart" + "\n " +

"Box  : " +  ! box + "& nbsp;    " +
"Reverse : " +  reverse + "\n " +
"ATR : " + LastValue(ATR(20));

 

__._,_.___

Please note that this group is for discussion between users only.

To get support from AmiBroker please send an e-mail directly to
SUPPORT {at} amibroker.com

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/

For other support material please check also:
http://www.amibroker.com/support.html





SPONSORED LINKS
Investment management software Investment property software Investment software
Investment tracking software Return on investment software

Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___