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

RE: [AmiBroker] Re: Identifying Pnf Patterns



PureBytes Links

Trading Reference Links

 

And here is the Code I am using:

_SECTION_BEGIN("Point & Figure w Values adj");

GraphXSpace = 5;

 

SetChartBkColor(ParamColor("BackGroundColor"colorLightYellow));

GraphColor =  ParamColor("GarphColor",colorBlack);

GridColor = ParamColor("GridColor", colorBlack);

 

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 = Param("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|styleNoLabel0 , 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, colorGreen);

    bot = bot + box;   

 

    }   

}

 

}

 

 

//---------------------------------------------------------------------

//    TITLE

//----------------------------------------------------------------------

 

Title = "\n" +

" Instrument : " + Name() +  FullName()+"\n " +

"Formula : " + " Point & Figure (High/Low Range)" + "\n " +

"Box  : "NumToStr(Box,  4.4) + "     " +

"Reverse : "NumToStr(Reverse, 2.0) + "\n " +

"ATR : " + WriteVal(LastValue(ATR(100)), format = 4.4);

_SECTION_END();


From: amibroker@xxxxxxxxxxxxxxx [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of apfxtrader
Sent: Wednesday, April 25, 2007 12:16 AM
To: amibroker@xxxxxxxxxxxxxxx
Subject: [amibroker] Re: Identifying Pnf Patterns

 

Don,

Can you show a picture of what you have

__._,_.___

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

__,_._,___