PureBytes Links
Trading Reference Links
|
Price Range Box Size
0.00 to 5.00 .25
5.01 to 20.00 .50
20.01 to 100.00 1.00
Over 100.00 2.00
But if anyone sees a reason to change this let me know.
Peter
-----Original Message-----
From: bluesinvestor [mailto:investor@x...]
Sent: Friday, July 19, 2002 5:11 PM
To: amibroker@xxxxxxxxxxxxxxx
Subject: RE: [amibroker] Re: Point & Figure Chart in AFL
Richard,
>From http://stockcharts.com/education/How/AnalysisTools/pnfCharts.html:
Traditional box scaling preloads box sizes historically used for that
particular price range. The reversal amount starts at 2 (this should be 3),
but can be adjusted dynamically. Here are the traditional box sizes used in
our charts:
Price Range Box Size
Under $0.25 .0625
.26 to 1.00 .125
1.01 to 5.00 .25
5.01 to 20.00 .50
20.01 to 100.00 1.00
100.01 to 200.00 2.00
200.01 to 500.00 4.00
500.01 to 1,000.00 5.00
1,000.01 to 25,000.00 50.00
25,000.01 and up 500.00
The traditional scaling in PnF.dll only uses .25 (less than $5) up to 2
(greater than $100) because I have been a student of Dorsey Wright long
before StockCharts came along, but the DLL can change when and if needed.
Plus you have the ability to use your own boxsize in the DLL.
Peter
-----Original Message-----
From: Richard Alford [mailto:richard.alford@x...]
Sent: Friday, July 19, 2002 4:59 PM
To: amibroker@xxxxxxxxxxxxxxx
Subject: Re: [amibroker] Re: Point & Figure Chart in AFL
Looks great, Peter. Can you elaborate on what is meant by the
traditional scaling? "x = Boxsize (use '0' for traditional scaling)or
provide a reference. I was checking out Kaufman and I couldn't find a
recommended box size.
Thanks,
Richard
----- Original Message -----
From: bluesinvestor
To: amibroker@xxxxxxxxxxxxxxx
Sent: Friday, July 19, 2002 3:29 PM
Subject: RE: [amibroker] Re: Point & Figure Chart in AFL
Forgot to mention:
http://groups.yahoo.com/group/amibroker/message/17288
For PnF.dll information.
Peter
-----Original Message-----
From: bluesinvestor [mailto:investor@x...]
Sent: Friday, July 19, 2002 4:23 PM
To: amibroker@xxxxxxxxxxxxxxx
Subject: RE: [amibroker] Re: Point & Figure Chart in AFL
Hello Mirat,
Good stuff!! I made some modifications to your code to call my
Point & Figure DLL and plot the data using your jscript code. I tested it
on one stock (PYPL - short history) and it looks correct (except for the
beginning bars:
I have attached the AFL to this email (and posted below for Yahoo
viewers).
Thanks again,
Peter
// PF Chart by Mirat Dave
// Copy and paste this as a custom indicator.
x=calcPnF(0,3);
EnableScript("jscript");
<%
PnFValue = VBArray( AFL( "PnFVal" ) ).toArray();
PnFColumn = VBArray( AFL( "PnFCol" ) ).toArray();
// Calculate running average stock price for use in calculating the
Box size.
PFO = new Array();
PFC = new Array();
// initialize first element
j = 0;
PFO[j] = PnFValue[0];
PFC[j] = PnFValue[0];
// perform the loop that produces PF Chart
for( i = 1; i < PnFValue.length; i++ )
{
if ( PnFColumn[i] == 0 )
{
if( PnFColumn[i] == 0 && PnFColumn[i-1] == 0)
{
PFC[j] = PnFValue[i];
}
if( PnFColumn[i] == 0 && PnFColumn[i-1] != 0 )
{
j++;
PFC[j] = PnFValue[i];
PFO[j] = PnFValue[i-1];
}
}
else
{
if (PnFColumn[i] == 1)
{
if( PnFColumn[i] == 1 && PnFColumn[i-1] == 1 )
{
PFC[j] = PnFValue[i];
}
if( PnFColumn[i] == 1 && PnFColumn[i-1] != 1 )
{
j++;
PFO[j] = PnFValue[i-1];
PFC[j] = PnFValue[i];
}
}
}
}
// Shift chart to the right to eliminate trailing empty data
// - PF charts are generally smaller/shorter then the full stock
charts because they lack a time scale.
delta = PnFValue.length - PFO.length;
for( i = PnFValue.length; i > delta; i-- )
{
PFO[ i-1 ] = PFO[ i-delta-1];
PFC[ i-1 ] = PFC[ i-delta-1];
}
for( i = 0; i < delta; i++)
{
PFO[ i-1 ] = 0;
PFC[ i-1 ] = 0;
}
AFL.Var("delta") = delta;
AFL.Var("length") = PnFValue.length;
AFL.Var("PFO") = PFO;
AFL.Var("PFC") = PFC;
%>
O = PFO;
C = PFC;
H = (O+C)/2;
L = (O+C)/2;
GraphXSpace = 9;
Graph0Style = 64;
Graph0Color =1;
Graph0 = C;
Filter=C>0;
AddColumn(PFO,"PFO");
AddColumn(PFC,"PFC");
-----Original Message-----
From: mirat_dave [mailto:mirat_dave@x...]
Sent: Friday, July 19, 2002 10:00 AM
To: amibroker@xxxxxxxxxxxxxxx
Subject: [amibroker] Re: Point & Figure Chart in AFL
Hello Richard and Dimitris,
Sorry to have caused so much confusion.
Since most stocks since 2000 have been trending down, you may get a
only a few bars because the P&F Chart ignores small up moves and
only
extends down bars when the price moves more than the box size.
Since
2000, you may very well have only a few bars. Try loading more data
for at least one stock.
I used AmiQuote and Yahoo for the data. I have data from January
1994. The AmiBroker version on which I created this file is 4.0.0
Apr 26 2002.
I do not know if the AmiBroker version is causing the difference. I
saw that it worked for Richard on MSFT (although I am not sure what
the whole MSFT v. MSFT issue was - it seems to have resolved
itself). Perhaps Richard also has more data loaded.
As you can see from the script, it is very simple. If problems
continue, I would be happy to go through it in detail to see if
there
is a coding error.
I'm afraid I have no other explanation other than more data. Let's
try that first.
Mirat
PS I would post .gifs of my charts but I do not know how to attach
a
file to my reply. Although that would not help resolve the issue.
:-)
--- In amibroker@xxxx, "Richard Alford" <richard.alford@xxxx> wrote:
> I am just isolating variables. If we have the same program and
version (4.06.1 Jun 19 build), the same indicator code (this I
confirmed) and same data we should get the same result. (I continue
to believe in deterministic computing - probably naive in light of
Microsoft!). The questionable variable, and a big one, is the data
source - I use qp2. Perhaps someone using yahoo could compare to
your results?
>
>
> It does appear that the "box size", the significant change that
defines an X or O in my understanding, should be normalized to the
price of the instrument to account for the difference in WCOME
pricing vs. DJIA, for example. I am referring to the code fragment:
>
> // Calculate PF Chart Box size and minimum Reverse values
> // Box = ((tot[i]/(i+1))^.5)/7.3374;
>
> Cheers,
>
> Richard
> ----- Original Message -----
> From: dtsokakis
> To: amibroker@xxxx
> Sent: Wednesday, July 17, 2002 2:49 PM
> Subject: [amibroker] Re: Point & Figure Chart in AFL
>
>
> Richard,
> YHOO via Amiquote.
> Why do you think it is a matter of data provider ?
> Dimitris Tsokakis
>
> --- In amibroker@xxxx, "Richard Alford" <richard.alford@xxxx>
wrote:
> > but the point remains that you and I get different results.
what
> is your data source?
> >
> > Richard
> > ----- Original Message -----
> > From: dtsokakis
> > To: amibroker@xxxx
> > Sent: Wednesday, July 17, 2002 1:47 PM
> > Subject: [amibroker] Re: Point & Figure Chart in AFL
> >
> >
> > Richard,
> > ANY other function works just fine with my valuable
Amibroker
> 4.06.
> > Just fine.
> > I can not see the reason for this P&F script.
> > Anyway, the author perhaps could expain.
> > Dimitris Tsokakis
> >
> > --- In amibroker@xxxx, "Richard Alford"
<richard.alford@xxxx>
> wrote:
> > > DT, I agree it was not easy to understand. The attached
charts
> > showed the TWO results that were generated whenever I
entered
the
> > symbol MSFT - it appears to be a fluke and I cannot
reproduce
it
> any
> > longer. Although there is not ticker name in the formula,
there
> was
> > strange behavior occurring for MSFT and MSFT only at that
time.
> > >
> > > The gist of my reply to you was that using the SAME code
as
you
> > posted and using the code I copied from the files sections,
I
> > generated the same results - and not the results that you
were
> > creating. That suggests that you have a problem in your
data
> and/or
> > setup. The only reason for the two codes was to guarantee
that
> there
> > wasn't a subtle error - there was not.
> > >
> > > Sorry for adding the confusion about the MSFT fluke at the
same
> > time.
> > >
> > > Cheers,
> > >
> > > Richard
> > > ----- Original Message -----
> > > From: dtsokakis
> > > To: amibroker@xxxx
> > > Sent: Wednesday, July 17, 2002 12:47 AM
> > > Subject: [amibroker] Re: Point & Figure Chart in AFL
> > >
> > >
> > > Richard,
> > > It is not easy to understand this
> > > "the plot for MSFT changes when one changes the symbol
go
> MSFT
> > from
> > > MSFT??? "
> > > I copied the formula from
> > >
http://groups.yahoo.com/group/amibroker/files/Point-Figure
> > > pasted in my Ind. builder and get the posted gifs.
> > > No ticker name is into the formula.
> > > What is "the two MSFT " ???
> > > Do you use the same code from the above address??
> > > DT
> > >
> > >
> > > --- In amibroker@xxxx, "Richard Alford"
<richard.alford@xxxx>
> > wrote:
> > > > Those are not the figures I generate using the code in
> > the "files
> > > section". (Why wasn't this put in the AFL library is a
> question
> > in
> > > my mind???)
> > > >
> > > > Just noticed that the plot for MSFT changes when one
> changes
> > the
> > > symbol go MSFT from MSFT??? Not the case for AMZN or
ORCL?
> > > >
> > > > I attached the two MSFT for comparison, one is "my"
copy,
> and
> > the
> > > other is a copy and paste of the code in your note. The
> > difference
> > > is the quirk in MSFT, not an error in the code you have
used.
> And
> > DT
> > > do you really like black on blue borders? Personally, I
can
> > never
> > > read your chart titles.
> > > >
> > > > Cheers,
> > > >
> > > > Richard
> > > >
> > > >
> > > > ----- Original Message -----
> > > > From: Dimitris Tsokakis
> > > > To: amibroker@xxxx
> > > > Sent: Tuesday, July 16, 2002 1:14 PM
> > > > Subject: [amibroker] Re: Point & Figure Chart in AFL
> > > >
> > > >
> > > > Mirat,
> > > > Here is P&F charts for AMZN, MSFT and ORCL.
> > > > Data since Jan 2000.
> > > > Is it the expected picture ?
> > > > The code, copied from files section
> > > >
> > > > // PF Chart by Mirat Dave
> > > > // Copy and paste this as a custom indicator.
> > > >
> > > > EnableScript("jscript");
> > > > <%
> > > >
> > > > High = VBArray( AFL( "High" ) ).toArray();
> > > > Low = VBArray( AFL( "Low" ) ).toArray();
> > > >
> > > > // Calculate running average stock price for use in
> > calculating
> > > the Box size.
> > > >
> > > > tot = new Array();
> > > > tot[0] = (High[0] + Low[0])/2;
> > > > for( i=1; i < High.length; i++ )
> > > > {
> > > > tot[i] = tot[i-1] + ((High[i] + Low[i])/2);
> > > > }
> > > > PFO = new Array();
> > > > PFC = new Array();
> > > >
> > > > // initialize first element
> > > >
> > > > j = 0;
> > > > PFO[j] = High[0];
> > > > PFC[j] = Low[0];
> > > > down = 1; // By default the first bar is a down bar.
> > > >
> > > > up = 0;
> > > > swap = 0;
> > > >
> > > > // perform the loop that produces PF Chart
> > > >
> > > > for( i = 1; i < High.length; i++ )
> > > > {
> > > > // Calculate PF Chart Box size and minimum Reverse
values
> > > >
> > > > Box = ((tot[i]/(i+1))^.5)/7.3374;
> > > > Reverse = Box * 3;
> > > > if( Low[i] < PFC[j] - Box && down)
> > > > {
> > > > PFC[j] = Low[i];
> > > > }
> > > > else
> > > > {
> > > > if( High[i] >= PFC[j] + Reverse && down)
> > > > {
> > > > j++;
> > > > swap = 1;
> > > > PFO[j] = Low[i];
> > > > PFC[j] = High[i];
> > > > }
> > > > }
> > > > if( High[i] > PFC[j] + Box && up)
> > > > {
> > > > PFC[j] = High[i];
> > > > }
> > > > else
> > > > {
> > > > if( Low[i] <= PFC[j] - Reverse && up)
> > > > {
> > > > j++;
> > > > PFC[j] = Low[i];
> > > > PFO[j] = High[i];
> > > > swap = 1;
> > > > }
> > > > }
> > > > if( swap )
> > > > {
> > > > swap = 0;
> > > > if( up )
> > > > {
> > > > up = 0;
> > > > down = 1;
> > > > }
> > > > else
> > > > {
> > > > up = 1;
> > > > down = 0;
> > > > }
> > > > }
> > > > }
> > > >
> > > > // Shift chart to the right to eliminate trailing
empty
> data
> > > > // - PF charts are generally smaller/shorter then
the
> full
> > stock
> > > charts because they lack a time scale.
> > > >
> > > > delta = High.length - PFO.length;
> > > > for( i = High.length; i > delta; i-- )
> > > > {
> > > > PFO[ i-1 ] = PFO[ i-delta-1];
> > > > PFC[ i-1 ] = PFC[ i-delta-1];
> > > > }
> > > > for( i = 0; i < delta; i++)
> > > > {
> > > > PFO[ i-1 ] = 0;
> > > > PFC[ i-1 ] = 0;
> > > > }
> > > > AFL.Var("PFO") = PFO;
> > > > AFL.Var("PFC") = PFC;
> > > > %>
> > > >
> > > > O = PFO;
> > > > C = PFC;
> > > >
> > > > H = (O+C)/2;
> > > > L = (O+C)/2;
> > > >
> > > > GraphXSpace = 9;
> > > > Graph0Style = 64;
> > > >
> > > > Graph0Color =1;
> > > > Graph0 = C;
> > > >
> > > > Thanks in advance for any reply.
> > > > Dimitris Tsokakis
> > > >
> > > > Yahoo! Groups Sponsor
> > > >
> > > > Click here to find your contact lenses!
> > > >
> > > > Your use of Yahoo! Groups is subject to the Yahoo!
Terms
> of
> > > Service.
> > >
> > >
> > > Yahoo! Groups Sponsor
> > > ADVERTISEMENT
> > >
> > >
> > >
> > > Your use of Yahoo! Groups is subject to the Yahoo! Terms
of
> > Service.
> >
> >
> > Yahoo! Groups Sponsor
> > ADVERTISEMENT
> >
> >
> >
> > Your use of Yahoo! Groups is subject to the Yahoo! Terms of
> Service.
>
>
> Yahoo! Groups Sponsor
> ADVERTISEMENT
>
>
>
> Your use of Yahoo! Groups is subject to the Yahoo! Terms of
Service.
------------------------ Yahoo! Groups
Sponsor ---------------------~-->
Will You Find True Love?
Will You Meet the One?
Free Love Reading by phone!
http://us.click.yahoo.com/O3jeVD/R_ZEAA/Ey.GAA/GHeqlB/TM
--------------------------------------------------------------------
-~->
Your use of Yahoo! Groups is subject to
http://docs.yahoo.com/info/terms/
Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
Yahoo! Groups Sponsor
ADVERTISEMENT
Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
------=_NextPart_001_00A1_01C22F48.11EC8820
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE></TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Diso-8859-1"=
>
<META content=3D"MSHTML 5.50.4916.2300" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><SPAN class=3D634241221-19072002><FONT face=3DArial color=3D#0000ff si=
ze=3D2>I=20
think I should elaborate on my last email ... the is the traditional scale =
used=20
in PnF.dll:</FONT></SPAN></DIV>
<DIV><SPAN class=3D634241221-19072002><FONT face=3DArial color=3D#0000ff=20
size=3D2></FONT></SPAN> </DIV><SPAN class=3D634241221-19072002>
<TABLE cellPadding=3D1 border=3D0>
<TBODY>
<TR>
<TD><FONT face=3DArial color=3D#0000ff size=3D2><B>Price Range</B></FON=
T></TD>
<TD><FONT face=3DArial color=3D#0000ff size=3D2><B>Box Size</B></FONT><=
/TD></TR>
<TR>
<TD><FONT face=3DArial color=3D#0000ff size=3D2>0.00 to 5.00</FONT></TD=
>
<TD><FONT face=3DArial color=3D#0000ff size=3D2>.25</FONT></TD></TR>
<TR>
<TD><FONT face=3DArial color=3D#0000ff size=3D2>5.01 to 20.00</FONT></T=
D>
<TD><FONT face=3DArial color=3D#0000ff size=3D2>.50</FONT></TD></TR>
<TR>
<TD><FONT face=3DArial color=3D#0000ff size=3D2>20.01 to 100.00</FONT><=
/TD>
<TD><FONT face=3DArial color=3D#0000ff size=3D2>1.00</FONT></TD></TR>
<TR>
<TD><FONT face=3DArial color=3D#0000ff size=3D2>Over 100.00</FONT></TD>
<TD><FONT face=3DArial color=3D#0000ff size=3D2>2.00</FONT></TD></TR>
<TR>
<TD><FONT face=3DArial color=3D#0000ff size=3D2></FONT></TD>
<TD><FONT face=3DArial color=3D#0000ff size=3D2></FONT></TD></TR>
<TR>
<TD><FONT face=3DArial color=3D#0000ff size=3D2></FONT></TD>
<TD><FONT face=3DArial color=3D#0000ff size=3D2></FONT></TD></TR></TBOD=
Y></TABLE>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2></FONT> </DIV>
<DIV></SPAN><SPAN class=3D634241221-19072002><FONT face=3DArial color=3D#00=
00ff=20
size=3D2>But if anyone sees a reason to change this let me=20
know.</FONT></SPAN></DIV>
<DIV><SPAN class=3D634241221-19072002><FONT face=3DArial color=3D#0000ff=20
size=3D2></FONT></SPAN> </DIV>
<DIV><SPAN class=3D634241221-19072002><FONT face=3DArial color=3D#0000ff=20
size=3D2>Peter</FONT></SPAN></DIV>
<BLOCKQUOTE>
<DIV class=3DOutlookMessageHeader dir=3Dltr align=3Dleft><FONT face=3DTah=
oma=20
size=3D2>-----Original Message-----<BR><B>From:</B> bluesinvestor=20
[mailto:investor@x...]<BR><B>Sent:</B> Friday, July 19, 2002 5:1=
1=20
PM<BR><B>To:</B> amibroker@xxxxxxxxxxxxxxx<BR><B>Subject:</B> RE: [amibro=
ker]=20
Re: Point & Figure Chart in AFL<BR><BR></FONT></DIV>
<DIV><SPAN class=3D533150621-19072002><FONT face=3DArial color=3D#0000ff=
=20
size=3D2>Richard,</FONT></SPAN></DIV>
<DIV><SPAN class=3D533150621-19072002><FONT face=3DArial color=3D#0000ff=
=20
size=3D2></FONT></SPAN> </DIV>
<DIV><SPAN class=3D533150621-19072002><FONT face=3DArial color=3D#0000ff =
size=3D2>From=20
<A=20
href=3D"http://stockcharts.com/education/How/AnalysisTools/pnfCharts.html=
">http://stockcharts.com/education/How/AnalysisTools/pnfCharts.html</A>:</F=
ONT></SPAN></DIV>
<DIV><SPAN class=3D533150621-19072002><FONT face=3DArial color=3D#0000ff=
=20
size=3D2></FONT></SPAN> </DIV>
<DIV><SPAN class=3D533150621-19072002><STRONG>Traditional box scaling</ST=
RONG>=20
preloads box sizes historically used for that particular price range. The=
=20
reversal amount starts at 2 (this should be 3), but can be adjusted=20
dynamically. Here are the traditional box sizes used in our=20
charts:<BR><BR></DIV>
<TABLE cellPadding=3D4 bgColor=3D#99ccff border=3D0>
<TBODY>
<TR>
<TD>
<TABLE cellPadding=3D1 border=3D0>
<TBODY>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2><B>Pric=
e=20
Range</B></FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2><B>Box=
=20
Size</B></FONT></TD></TR>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2>Under=20
$0.25</FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif"=20
size=3D-2>.0625</FONT></TD></TR>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2>.26 to=
=20
1.00</FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif"=20
size=3D-2>.125</FONT></TD></TR>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2>1.01 to=
=20
5.00</FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif"=20
size=3D-2>.25</FONT></TD></TR>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2>5.01 to=
=20
20.00</FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif"=20
size=3D-2>.50</FONT></TD></TR>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2>20.01 t=
o=20
100.00</FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif"=20
size=3D-2>1.00</FONT></TD></TR>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2>100.01 =
to=20
200.00</FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif"=20
size=3D-2>2.00</FONT></TD></TR>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2>200.01 =
to=20
500.00</FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif"=20
size=3D-2>4.00</FONT></TD></TR>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2>500.01 =
to=20
1,000.00</FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif"=20
size=3D-2>5.00</FONT></TD></TR>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2>1,000.0=
1 to=20
25,000.00 </FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif"=20
size=3D-2>50.00</FONT></TD></TR>
<TR>
<TD><FONT face=3D"verdana, arial, sans-serif" size=3D-2>25,000.=
01 and=20
up</FONT></TD>
<TD><FONT face=3D"verdana, arial, sans-serif"=20
size=3D-2>500.00</FONT></TD></TR></TBODY></TABLE></TD></TR></TB=
ODY></TABLE>
<DIV> </DIV>
<DIV><FONT face=3DArial><FONT color=3D#0000ff><FONT size=3D2>T<SPAN=20
class=3D533150621-19072002>he traditional scaling in PnF.dll only uses .2=
5 (less=20
than $5) up to 2 (greater than $100) because I have been a stud=
ent=20
of Dorsey Wright long before StockCharts came along, but the DLL can chan=
ge=20
when and if needed. Plus you have the ability to use your own boxsi=
ze in=20
the DLL.</SPAN></FONT></FONT></FONT></DIV>
<DIV><FONT face=3DArial><FONT color=3D#0000ff><FONT size=3D2><SPAN=20
class=3D533150621-19072002></SPAN></FONT></FONT></FONT> </DIV>
<DIV><FONT face=3DArial><FONT color=3D#0000ff><FONT size=3D2><SPAN=20
class=3D533150621-19072002>Peter</SPAN></FONT></FONT></FONT></SPAN></DIV>
<BLOCKQUOTE>
<DIV class=3DOutlookMessageHeader dir=3Dltr align=3Dleft><FONT face=3DT=
ahoma=20
size=3D2>-----Original Message-----<BR><B>From:</B> Richard Alford=20
[mailto:richard.alford@x...]<BR><B>Sent:</B> Friday, July 19, 2002 4=
:59=20
PM<BR><B>To:</B> amibroker@xxxxxxxxxxxxxxx<BR><B>Subject:</B> Re:=20
[amibroker] Re: Point & Figure Chart in AFL<BR><BR></FONT></DIV>
<DIV><FONT face=3DArial size=3D2>Looks great, Peter. Can you elab=
orate on=20
what is meant by the traditional scaling? <FONT face=3D"Courier N=
ew"=20
size=3D3>"x =3D Boxsize (use '0' for traditional scaling)</FONT></FONT>=
<FONT=20
size=3D+0><FONT face=3DArial size=3D2>or provide a reference. I w=
as checking=20
out Kaufman and I couldn't find a recommended box size.</FONT></FONT></=
DIV>
<DIV><FONT size=3D+0><FONT face=3DArial size=3D2></FONT></FONT> </=
DIV>
<DIV><FONT size=3D+0><FONT face=3DArial size=3D2>Thanks,</FONT></FONT><=
/DIV>
<DIV><FONT size=3D+0><FONT face=3DArial size=3D2></FONT></FONT> </=
DIV>
<DIV><FONT size=3D+0><FONT face=3DArial size=3D2>Richard</FONT></DIV>
<DIV><FONT face=3DArial><BR><FONT size=3D2></FONT></FONT></DIV></FONT>
<BLOCKQUOTE=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDE=
R-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV=20
style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B=
>From:</B>=20
<A title=3Dinvestor@xxxx=20
href=3D"mailto:investor@xxxx">bluesinvestor</A> </DIV>
<DIV style=3D"FONT: 10pt arial"><B>To:</B> <A=20
title=3Damibroker@xxxxxxxxxxxxxxx=20
href=3D"mailto:amibroker@xxxxxxxxxxxxxxx">amibroker@xxxxxxxxxxxxxxx</=
A>=20
</DIV>
<DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Friday, July 19, 2002 3:=
29=20
PM</DIV>
<DIV style=3D"FONT: 10pt arial"><B>Subject:</B> RE: [amibroker] Re: P=
oint=20
& Figure Chart in AFL</DIV>
<DIV><BR></DIV>
<DIV><SPAN class=3D741082920-19072002><FONT face=3DArial color=3D#000=
0ff=20
size=3D2>Forgot to mention:</FONT></SPAN></DIV>
<DIV><SPAN class=3D741082920-19072002><FONT face=3DArial color=3D#000=
0ff=20
size=3D2></FONT></SPAN> </DIV>
<DIV><SPAN class=3D741082920-19072002><FONT face=3DArial color=3D#000=
0ff=20
size=3D2><A=20
href=3D"http://groups.yahoo.com/group/amibroker/message/17288">http:/=
/groups.yahoo.com/group/amibroker/message/17288</A></FONT></SPAN></DIV>
<DIV><SPAN class=3D741082920-19072002><FONT face=3DArial color=3D#000=
0ff=20
size=3D2></FONT></SPAN> </DIV>
<DIV><SPAN class=3D741082920-19072002><FONT face=3DArial color=3D#000=
0ff=20
size=3D2>For PnF.dll information.</FONT></SPAN></DIV>
<DIV><SPAN class=3D741082920-19072002><FONT face=3DArial color=3D#000=
0ff=20
size=3D2></FONT></SPAN> </DIV>
<DIV><SPAN class=3D741082920-19072002><FONT face=3DArial color=3D#000=
0ff=20
size=3D2>Peter</FONT></SPAN></DIV>
<BLOCKQUOTE dir=3Dltr style=3D"MARGIN-RIGHT: 0px">
<DIV class=3DOutlookMessageHeader dir=3Dltr align=3Dleft><FONT face=
=3DTahoma=20
size=3D2>-----Original Message-----<BR><B>From:</B> bluesinvestor=20
[mailto:investor@x...]<BR><B>Sent:</B> Friday, July 19, 20=
02=20
4:23 PM<BR><B>To:</B> <A=20
href=3D"mailto:amibroker@xxxxxxxxxxxxxxx">amibroker@xxxxxxxxxxxxxxx=
</A><BR><B>Subject:</B>=20
RE: [amibroker] Re: Point & Figure Chart in AFL<BR><BR></FONT><=
/DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2>Hello Mirat,</FONT=
></DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2></FONT> </DIV=
>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2>Good stuff!! =
I made=20
some modifications to your code to call my Point & Figure DLL a=
nd=20
plot the data using your jscript code. I tested it on one sto=
ck=20
(PYPL - short history) and it looks correct (except for the beginni=
ng=20
bars:</FONT></DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2></FONT> </DIV=
>
<DIV><IMG alt=3D"" hspace=3D0 src=3D"cid:634241221@xxxx"=20
align=3Dbaseline border=3D0></DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2></FONT> </DIV=
>
<DIV><IMG alt=3D"" hspace=3D0 src=3D"cid:634241221@xxxx"=20
align=3Dbaseline border=3D0></DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2></FONT> </DIV=
>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2>I have attached th=
e AFL to=20
this email (and posted below for Yahoo viewers).</FONT></DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2></FONT> </DIV=
>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2>Thanks again,</FON=
T></DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2>Peter</FONT></DIV>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2></FONT> </DIV=
>
<DIV><FONT face=3DArial color=3D#0000ff size=3D2><FONT color=3D#008=
000 size=3D1>
<P>// PF Chart by Mirat Dave</P>
<P>// Copy and paste this as a custom indicator.</P></FONT><FONT=20
color=3D#000000 size=3D1>
<P>x=3D</FONT><FONT color=3D#0000ff size=3D1>calcPnF</FONT><FONT co=
lor=3D#000000=20
size=3D1>(</FONT><FONT color=3D#ff00ff size=3D1>0</FONT><FONT color=
=3D#000000=20
size=3D1>,</FONT><FONT color=3D#ff00ff size=3D1>3</FONT><FONT color=
=3D#000000=20
size=3D1>);</P></FONT><FONT color=3D#0000ff size=3D1>
<P>EnableScript</FONT><FONT color=3D#000000 size=3D1>(</FONT><FONT=
=20
color=3D#ff00ff size=3D1>"jscript"</FONT><FONT color=3D#000000 size=
=3D1>);</P>
<P><%</P>
<P>PnFValue =3D VBArray( AFL( </FONT><FONT color=3D#ff00ff=20
size=3D1>"PnFVal"</FONT><FONT color=3D#000000 size=3D1> ) ).toArray=
();</P>
<P>PnFColumn =3D VBArray( AFL( </FONT><FONT color=3D#ff00ff=20
size=3D1>"PnFCol"</FONT><FONT color=3D#000000 size=3D1> )=20
).toArray();</P></FONT><FONT color=3D#008000 size=3D1>
<P>// Calculate running average stock price for use in calculating =
the=20
Box size.</P></FONT><FONT color=3D#000000 size=3D1>
<P>PFO =3D new Array();</P>
<P>PFC =3D new Array();</P></FONT><FONT color=3D#008000 size=3D1>
<P>// initialize first element</P></FONT><FONT color=3D#000000 size=
=3D1>
<P>j =3D </FONT><FONT color=3D#ff00ff size=3D1>0</FONT><FONT color=
=3D#000000=20
size=3D1>;</P>
<P>PFO[j] =3D PnFValue[</FONT><FONT color=3D#ff00ff size=3D1>0</FON=
T><FONT=20
color=3D#000000 size=3D1>];</P>
<P>PFC[j] =3D PnFValue[</FONT><FONT color=3D#ff00ff size=3D1>0</FON=
T><FONT=20
color=3D#000000 size=3D1>];</P></FONT><FONT color=3D#008000 size=3D=
1>
<P>// perform the loop that produces PF Chart</P></FONT><FONT=20
color=3D#000000 size=3D1>
<P>for( i =3D </FONT><FONT color=3D#ff00ff size=3D1>1</FONT><FONT=20
color=3D#000000 size=3D1>; i < PnFValue.length; i++ )</P>
<P>{</P>
<P>if ( PnFColumn[i] =3D=3D </FONT><FONT color=3D#ff00ff size=3D1>0=
</FONT><FONT=20
color=3D#000000 size=3D1> ) </P>
<P>{</P>
<P>if( PnFColumn[i] =3D=3D </FONT><FONT color=3D#ff00ff size=3D1>0<=
/FONT><FONT=20
color=3D#000000 size=3D1> && PnFColumn[i-</FONT><FONT color=
=3D#ff00ff=20
size=3D1>1</FONT><FONT color=3D#000000 size=3D1>] =3D=3D </FONT><FO=
NT=20
color=3D#ff00ff size=3D1>0</FONT><FONT color=3D#000000 size=3D1>)</=
P>
<P>{</P>
<P>PFC[j] =3D PnFValue[i];</P>
<P>}</P>
<P>if( PnFColumn[i] =3D=3D </FONT><FONT color=3D#ff00ff size=3D1>0<=
/FONT><FONT=20
color=3D#000000 size=3D1> && PnFColumn[i-</FONT><FONT color=
=3D#ff00ff=20
size=3D1>1</FONT><FONT color=3D#000000 size=3D1>] !=3D </FONT><FONT=
=20
color=3D#ff00ff size=3D1>0</FONT><FONT color=3D#000000 size=3D1> )<=
/P>
<P>{</P>
<P>j++;</P>
<P>PFC[j] =3D PnFValue[i];</P>
<P>PFO[j] =3D PnFValue[i-</FONT><FONT color=3D#ff00ff size=3D1>1</F=
ONT><FONT=20
color=3D#000000 size=3D1>];</P>
<P>}</P>
<P>}</P>
<P>else</P>
<P>{</P>
<P>if (PnFColumn[i] =3D=3D </FONT><FONT color=3D#ff00ff size=3D1>1<=
/FONT><FONT=20
color=3D#000000 size=3D1>)</P>
<P>{</P>
<P>if( PnFColumn[i] =3D=3D </FONT><FONT color=3D#ff00ff size=3D1>1<=
/FONT><FONT=20
color=3D#000000 size=3D1> && PnFColumn[i-</FONT><FONT color=
=3D#ff00ff=20
size=3D1>1</FONT><FONT color=3D#000000 size=3D1>] =3D=3D </FONT><FO=
NT=20
color=3D#ff00ff size=3D1>1</FONT><FONT color=3D#000000 size=3D1> )<=
/P>
<P>{</P>
<P>PFC[j] =3D PnFValue[i];</P>
<P>}</P>
<P>if( PnFColumn[i] =3D=3D </FONT><FONT color=3D#ff00ff size=3D1>1<=
/FONT><FONT=20
color=3D#000000 size=3D1> && PnFColumn[i-</FONT><FONT color=
=3D#ff00ff=20
size=3D1>1</FONT><FONT color=3D#000000 size=3D1>] !=3D </FONT><FONT=
=20
color=3D#ff00ff size=3D1>1</FONT><FONT color=3D#000000 size=3D1> )<=
/P>
<P>{</P>
<P>j++;</P>
<P>PFO[j] =3D PnFValue[i-</FONT><FONT color=3D#ff00ff size=3D1>1</F=
ONT><FONT=20
color=3D#000000 size=3D1>];</P>
<P>PFC[j] =3D PnFValue[i];</P>
<P>}</P>
<P>}</P>
<P>}</P>
<P>}</P></FONT><FONT color=3D#008000 size=3D1>
<P>// Shift chart to the right to eliminate trailing empty data</P>
<P>// - PF charts are generally smaller/shorter then the full stock=
=20
charts because they lack a time scale.</P></FONT><FONT color=3D#000=
000=20
size=3D1>
<P>delta =3D PnFValue.length - PFO.length;</P>
<P>for( i =3D PnFValue.length; i > delta; i-- )</P>
<P>{</P>
<P>PFO[ i-</FONT><FONT color=3D#ff00ff size=3D1>1</FONT><FONT color=
=3D#000000=20
size=3D1> ] =3D PFO[ i-delta-</FONT><FONT color=3D#ff00ff size=3D1>=
1</FONT><FONT=20
color=3D#000000 size=3D1>];</P>
<P>PFC[ i-</FONT><FONT color=3D#ff00ff size=3D1>1</FONT><FONT color=
=3D#000000=20
size=3D1> ] =3D PFC[ i-delta-</FONT><FONT color=3D#ff00ff size=3D1>=
1</FONT><FONT=20
color=3D#000000 size=3D1>];</P>
<P>}</P>
<P>for( i =3D </FONT><FONT color=3D#ff00ff size=3D1>0</FONT><FONT=20
color=3D#000000 size=3D1>; i < delta; i++)</P>
<P>{</P>
<P>PFO[ i-</FONT><FONT color=3D#ff00ff size=3D1>1</FONT><FONT color=
=3D#000000=20
size=3D1> ] =3D </FONT><FONT color=3D#ff00ff size=3D1>0</FONT><FONT=
=20
color=3D#000000 size=3D1>;</P>
<P>PFC[ i-</FONT><FONT color=3D#ff00ff size=3D1>1</FONT><FONT color=
=3D#000000=20
size=3D1> ] =3D </FONT><FONT color=3D#ff00ff size=3D1>0</FONT><FONT=
=20
color=3D#000000 size=3D1>;</P>
<P>}</P>
<P>AFL.Var(</FONT><FONT color=3D#ff00ff size=3D1>"delta"</FONT><FON=
T=20
color=3D#000000 size=3D1>) =3D delta;</P>
<P>AFL.Var(</FONT><FONT color=3D#ff00ff size=3D1>"length"</FONT><FO=
NT=20
color=3D#000000 size=3D1>) =3D PnFValue.length;</P>
<P>AFL.Var(</FONT><FONT color=3D#ff00ff size=3D1>"PFO"</FONT><FONT=
=20
color=3D#000000 size=3D1>) =3D PFO;</P>
<P>AFL.Var(</FONT><FONT color=3D#ff00ff size=3D1>"PFC"</FONT><FONT=
=20
color=3D#000000 size=3D1>) =3D PFC;</P>
<P>%></P><B>
<P>O</B> =3D PFO;</P><B>
<P>C</B> =3D PFC;</P><B>
<P>H</B> =3D (<B>O</B>+<B>C</B>)/</FONT><FONT color=3D#ff00ff=20
size=3D1>2</FONT><FONT color=3D#000000 size=3D1>;</P><B>
<P>L</B> =3D (<B>O</B>+<B>C</B>)/</FONT><FONT color=3D#ff00ff=20
size=3D1>2</FONT><FONT color=3D#000000 size=3D1>;</P><B>
<P>GraphXSpace</B> =3D </FONT><FONT color=3D#ff00ff size=3D1>9</FON=
T><FONT=20
color=3D#000000 size=3D1>;</P><B>
<P>Graph0Style</B> =3D </FONT><FONT color=3D#ff00ff size=3D1>64</FO=
NT><FONT=20
color=3D#000000 size=3D1>;</P><B>
<P>Graph0Color</B> =3D</FONT><FONT color=3D#ff00ff size=3D1>1</FONT=
><FONT=20
color=3D#000000 size=3D1>;</P><B>
<P>Graph0</B> =3D <B>C</B>;</P><B>
<P>Filter</B>=3D<B>C</B>></FONT><FONT color=3D#ff00ff=20
size=3D1>0</FONT><FONT color=3D#000000 size=3D1>;</P></FONT><FONT=20
color=3D#0000ff size=3D1>
<P>AddColumn</FONT><FONT color=3D#000000 size=3D1>(PFO,</FONT><FONT=
=20
color=3D#ff00ff size=3D1>"PFO"</FONT><FONT color=3D#000000=20
size=3D1>);</P></FONT><FONT color=3D#0000ff size=3D1>
<P>AddColumn</FONT><FONT color=3D#000000 size=3D1>(PFC,</FONT><FONT=
=20
color=3D#ff00ff size=3D1>"PFC"</FONT><FONT color=3D#000000=20
size=3D1>);</P></FONT></FONT></DIV>
<DIV><BR><BR></DIV>
<P><FONT size=3D2>-----Original Message-----<BR>From: mirat_dave [<=
A=20
href=3D"mailto:mirat_dave@xxxx">mailto:mirat_dave@x...</A=
>]<BR>Sent:=20
Friday, July 19, 2002 10:00 AM<BR>To:=20
amibroker@xxxxxxxxxxxxxxx<BR>Subject: [amibroker] Re: Point & F=
igure=20
Chart in AFL<BR><BR><BR>Hello Richard and Dimitris,<BR><BR>Sorry to=
have=20
caused so much confusion.<BR><BR>Since most stocks since 2000 have =
been=20
trending down, you may get a<BR>only a few bars because the P&F=
=20
Chart ignores small up moves and only<BR>extends down bars when the=
=20
price moves more than the box size. Since<BR>2000, you may ve=
ry=20
well have only a few bars. Try loading more data<BR>for at le=
ast=20
one stock.<BR><BR>I used AmiQuote and Yahoo for the data. I h=
ave=20
data from January<BR>1994. The AmiBroker version on which I=20
created this file is 4.0.0 <BR>Apr 26 2002.<BR><BR>I do not kn=
ow if=20
the AmiBroker version is causing the difference. I<BR>saw tha=
t it=20
worked for Richard on MSFT (although I am not sure what<BR>the whol=
e=20
MSFT v. MSFT issue was - it seems to have resolved<BR>itself). =
;=20
Perhaps Richard also has more data loaded.<BR><BR>As you can see fr=
om=20
the script, it is very simple. If problems<BR>continue, I wou=
ld be=20
happy to go through it in detail to see if there<BR>is a coding=20
error.<BR><BR>I'm afraid I have no other explanation other than mor=
e=20
data. Let's<BR>try that first.<BR><BR>Mirat<BR><BR>PS I=
=20
would post .gifs of my charts but I do not know how to attach a<BR>=
file=20
to my reply. Although that would not help resolve the issue.=
=20
:-)<BR><BR><BR><BR><BR><BR>--- In amibroker@xxxx, "Richard Alford"=
=20
<richard.alford@xxxx> wrote:<BR>> I am just isolating=20
variables. If we have the same program and<BR>version (4.06.1=
Jun=20
19 build), the same indicator code (this I<BR>confirmed) and same d=
ata=20
we should get the same result. (I continue<BR>to believe in=20
deterministic computing - probably naive in light=20
of<BR>Microsoft!). The questionable variable, and a big one, =
is=20
the data<BR>source - I use qp2. Perhaps someone using yahoo c=
ould=20
compare to<BR>your results?<BR>><BR>><BR>> It does appear =
that=20
the "box size", the significant change that<BR>defines an X or O in=
my=20
understanding, should be normalized to the<BR>price of the instrume=
nt to=20
account for the difference in WCOME<BR>pricing vs. DJIA, for=20
example. I am referring to the code fragment:<BR>><BR>>=
//=20
Calculate PF Chart Box size and minimum Reverse values<BR>> // B=
ox =3D=20
((tot[i]/(i+1))^.5)/7.3374; <BR>><BR>>=
=20
Cheers,<BR>><BR>> Richard<BR>> ----- Original=
=20
Message -----<BR>> From: dtsokakis<BR>> &nbs=
p;=20
To: amibroker@xxxx<BR>> Sent: Wednesday, July 17, 20=
02=20
2:49 PM<BR>> Subject: [amibroker] Re: Point & Fi=
gure=20
Chart in AFL<BR>><BR>><BR>> =20
Richard,<BR>> YHOO via Amiquote.<BR>> =
Why=20
do you think it is a matter of data provider ?<BR>> =
=20
Dimitris Tsokakis<BR>><BR>> --- In amibroker@xxxx=
,=20
"Richard Alford"=20
<richard.alford@xxxx><BR>wrote:<BR>> > but =
the=20
point remains that you and I get different=20
results. <BR>what<BR>> is your data=20
source?<BR>> ><BR>> >=20
Richard<BR>> > ----- Original Message=
=20
-----<BR>> > From:=20
dtsokakis<BR>> > To:=20
amibroker@xxxx<BR>> > Sent: Wednesday=
,=20
July 17, 2002 1:47 PM<BR>> > Subject:=
=20
[amibroker] Re: Point & Figure Chart in AFL<BR>> =
=20
><BR>> ><BR>> > =
=20
Richard,<BR>> > ANY other function wo=
rks=20
just fine with my valuable Amibroker<BR>> =20
4.06.<BR>> > Just=20
fine.<BR>> > I can not see the reason=
for=20
this P&F script.<BR>> > Anyway, t=
he=20
author perhaps could expain.<BR>> > =20
Dimitris Tsokakis<BR>> ><BR>> =20
> --- In amibroker@xxxx, "Richard Alford"=20
<richard.alford@xxxx><BR>> =20
wrote:<BR>> > > DT, I agree it was=
not=20
easy to understand. The attached<BR>charts<BR>>  =
;=20
> showed the TWO results that were generated wheneve=
r I=20
entered<BR>the<BR>> > symbol MSFT - i=
t=20
appears to be a fluke and I cannot reproduce<BR>it<BR>> &nb=
sp;=20
any<BR>> > longer. Although the=
re is=20
not ticker name in the formula,<BR>there<BR>> =20
was<BR>> > strange behavior occurring=
for=20
MSFT and MSFT only at that<BR>time.<BR>> > &=
nbsp;=20
><BR>> > > The gist of my reply=
to=20
you was that using the SAME code as<BR>you<BR>> =20
> posted and using the code I copied from the files=
=20
sections, I<BR>> > generated the same=
=20
results - and not the results that you<BR>were<BR>> =
=20
> creating. That suggests that you have a prob=
lem=20
in your data<BR>> and/or<BR>> =20
> setup. The only reason for the two codes was=
to=20
guarantee<BR>that<BR>> there<BR>> =20
> wasn't a subtle error - there was=20
not.<BR>> > ><BR>> =
=20
> > Sorry for adding the confusion about the MSFT=
=20
fluke at the<BR>same<BR>> > =20
time.<BR>> > ><BR>> =
=20
> > Cheers,<BR>> > =
=20
><BR>> > >=20
Richard<BR>> > > -----=
=20
Original Message -----<BR>> > =20
> From: dtsokakis<BR>> > &nbs=
p;=20
> To: amibroker@xxxx<BR>> > &=
nbsp;=20
> Sent: Wednesday, July 17, 2002 12:47=20
AM<BR>> > > Subject:=20
[amibroker] Re: Point & Figure Chart in AFL<BR>> =
=20
> ><BR>> > =20
><BR>> > > =20
Richard,<BR>> > > It i=
s not=20
easy to understand this<BR>> > =20
> "the plot for MSFT changes when one changes the sy=
mbol=20
go<BR>> MSFT<BR>> > =20
from<BR>> > > MSFT???=
=20
"<BR>> > > I copied th=
e=20
formula from<BR>> > > =
<A=20
target=3D_blank=20
href=3D"http://groups.yahoo.com/group/amibroker/files/Point-Figure"=
>http://groups.yahoo.com/group/amibroker/files/Point-Figure</A><BR>>&nbs=
p; =20
> > pasted in my Ind. builder and get=
the=20
posted gifs.<BR>> > > =
No=20
ticker name is into the formula.<BR>> > &nbs=
p;=20
> What is "the two MSFT " ???<BR>> =20
> > Do you use the same code from the=
=20
above address??<BR>> > > &nbs=
p;=20
DT<BR>> > ><BR>> =20
> ><BR>> > =20
> --- In amibroker@xxxx, "Richard=20
Alford"<BR><richard.alford@xxxx><BR>> =20
> wrote:<BR>> > =20
> > Those are not the figures I generate using th=
e=20
code in<BR>> > the=20
"files<BR>> > > =20
section". (Why wasn't this put in the AFL library is=20
a<BR>> question<BR>> > =
=20
in<BR>> > > my=20
mind???)<BR>> > > =20
><BR>> > > > Jus=
t=20
noticed that the plot for MSFT changes when one<BR>> =
=20
changes<BR>> > the<BR>>  =
;=20
> > symbol go MSFT from MSFT??? =
Not=20
the case for AMZN or<BR>ORCL? <BR>> > &=
nbsp;=20
> ><BR>> > =20
> > I attached the two MSFT for comparison, one i=
s=20
"my"<BR>copy,<BR>> and<BR>> =20
> the<BR>> > =20
> other is a copy and paste of the code in your=20
note. The<BR>> > =20
difference<BR>> > > is=
the=20
quirk in MSFT, not an error in the code you=20
have<BR>used.<BR>> And<BR>> =20
> DT<BR>> > =20
> do you really like black on blue borders? =20
Personally, I<BR>can<BR>> > =20
never<BR>> > > read yo=
ur=20
chart titles.<BR>> > > =
=20
><BR>> > > >=20
Cheers,<BR>> > > =20
><BR>> > > >=20
Richard<BR>> > > =20
><BR>> > > =20
><BR>> > > =20
> ----- Original Message -----<BR>> =20
> > > From: Dimitris=20
Tsokakis<BR>> > > =20
> To: amibroker@xxxx<BR>> > &=
nbsp;=20
> > Sent: Tuesday, July 16, 2002 1:14=
=20
PM<BR>> > > =20
> Subject: [amibroker] Re: Point & Figure Chart =
in=20
AFL<BR>> > > =20
><BR>> > > =20
><BR>> > > =20
> Mirat,<BR>> > =20
> > Here is P&F charts for AMZN, =
MSFT=20
and ORCL.<BR>> > > =20
> Data since Jan 2000.<BR>> =20
> > > Is it the expect=
ed=20
picture ?<BR>> > > =20
> The code, copied from files section<BR>> &=
nbsp;=20
> > ><BR>> =20
> > > // PF Chart by M=
irat=20
Dave<BR>> > > =20
> // Copy and paste this as a custom=20
indicator.<BR>> > > =20
><BR>> > > =20
> EnableScript("jscript");<BR>> =20
> > > =20
<%<BR>> > > =20
><BR>> > > =20
> High =3D VBArray( AFL( "High" )=20
).toArray();<BR>> > > =
=20
> Low =3D VBArray( AFL( "Low" )=20
).toArray();<BR>> > > =
=20
><BR>> > > =20
> // Calculate running average stock price for use=20
in<BR>> > calculating<BR>> &n=
bsp;=20
> > the Box size.<BR>> =
=20
> > ><BR>> =20
> > > tot =3D new=20
Array();<BR>> > > =20
> tot[0] =3D (High[0] + Low[0])/2;<BR>> &nbs=
p;=20
> > > for( i=3D1; i &l=
t;=20
High.length; i++ )<BR>> > > &=
nbsp;=20
> {<BR>> > > &=
nbsp;=20
> tot[i] =3D tot[i-1] + ((High[i] +=20
Low[i])/2);<BR>> > > =20
> }<BR>> > > &=
nbsp;=20
> PFO =3D new Array();<BR>> > =
; =20
> > PFC =3D new Array();<BR>> =
; =20
> > ><BR>> =20
> > > // initialize fi=
rst=20
element<BR>> > > =20
><BR>> > > =20
> j =3D 0;<BR>> > =20
> > PFO[j] =3D High[0];<BR>> =
=20
> > > PFC[j] =3D=20
Low[0];<BR>> > > =20
> down =3D 1; // By default the first bar is a down=
=20
bar.<BR>> > > =20
><BR>> > > =20
> up =3D 0;<BR>> > =20
> > swap =3D 0;<BR>> =20
> > ><BR>> =20
> > > // perform the l=
oop=20
that produces PF Chart<BR>> > =20
> ><BR>> > =20
> > for( i =3D 1; i < High.length;=
i++=20
)<BR>> > > > &=
nbsp;=20
{<BR>> > > > &=
nbsp;=20
// Calculate PF Chart Box size and minimum=20
Reverse<BR>values<BR>> > > &n=
bsp;=20
><BR>> > > =20
> Box =3D ((tot[i]/(i+1))^.5)/7.3374;<BR>> &=
nbsp;=20
> > > Reverse =3D Box =
*=20
3;<BR>> > > =20
> if( Low[i] < PFC[j] - Box &&=20
down)<BR>> > > =20
> {<BR>> > > &=
nbsp;=20
> PFC[j] =3D Low[i];<BR>> > &=
nbsp;=20
> > }<BR>> > &=
nbsp;=20
> > else<BR>> =20
> > > {<BR>> &=
nbsp;=20
> > > if( High[i] >=
=3D=20
PFC[j] + Reverse && down)<BR>> > &nb=
sp;=20
> > {<BR>> > &=
nbsp;=20
> > j++;<BR>> =20
> > > swap =3D=20
1;<BR>> > > =20
> PFO[j] =3D Low[i];<BR>> > &=
nbsp;=20
> > PFC[j] =3D High[i];<BR>> =
=20
> > > }<BR>> &=
nbsp;=20
> > > }<BR>> &=
nbsp;=20
> > > if( High[i] >=
=20
PFC[j] + Box && up)<BR>> > =20
> > {<BR>> > &=
nbsp;=20
> > PFC[j] =3D High[i];<BR>> =
=20
> > > }<BR>> &=
nbsp;=20
> > > =20
else<BR>> > > =20
> {<BR>> > > &=
nbsp;=20
> if( Low[i] <=3D PFC[j] - Reverse &&=20
up)<BR>> > > =20
> {<BR>> > > &=
nbsp;=20
> j++;<BR>> > =20
> > PFC[j] =3D Low[i];<BR>> &=
nbsp;=20
> > > PFO[j] =3D=20
High[i];<BR>> > > =20
> swap =3D 1;<BR>> > =20
> > }<BR>> > &=
nbsp;=20
> > }<BR>> > &=
nbsp;=20
> > if( swap )<BR>> =20
> > > {<BR>> &=
nbsp;=20
> > > swap =3D=20
0;<BR>> > > =20
> if( up )<BR>> > =20
> > {<BR>> > &=
nbsp;=20
> > up =3D 0;<BR>> =20
> > > down =3D=20
1;<BR>> > > =20
> }<BR>> > > &=
nbsp;=20
> else<BR>> > =20
> > {<BR>> > &=
nbsp;=20
> > up =3D 1;<BR>> =20
> > > down =3D=20
0;<BR>> > > =20
> }<BR>> > > &=
nbsp;=20
> }<BR>> > > &=
nbsp;=20
> }<BR>> > > &=
nbsp;=20
><BR>> > > =20
> // Shift chart to the right to eliminate=20
trailing<BR>empty<BR>> data<BR>> =20
> > > // - PF charts a=
re=20
generally smaller/shorter then the<BR>> =20
full<BR>> > stock<BR>> =
=20
> > charts because they lack a time=20
scale.<BR>> > > =20
><BR>> > > =20
> delta =3D High.length - PFO.length;<BR>> &=
nbsp;=20
> > > for( i =3D High.=
length;=20
i > delta; i-- )<BR>> > =20
> > {<BR>> > &=
nbsp;=20
> > PFO[ i-1 ] =3D PFO[=20
i-delta-1];<BR>> > > =20
> PFC[ i-1 ] =3D PFC[ i-delta-1];<BR>>  =
;=20
> > > }<BR>> &=
nbsp;=20
> > > for( i =3D 0; i =
<=20
delta; i++)<BR>> > > =20
> {<BR>> > > &=
nbsp;=20
> PFO[ i-1 ] =3D 0;<BR>> > &n=
bsp;=20
> > PFC[ i-1 ] =3D 0;<BR>> &n=
bsp;=20
> > > }<BR>> &=
nbsp;=20
> > > AFL.Var("PFO") =
=3D=20
PFO;<BR>> > > =20
> AFL.Var("PFC") =3D PFC;<BR>> =20
> > > =20
%><BR>> > > =20
><BR>> > > =20
> O =3D PFO;<BR>> > =20
> > C =3D PFC;<BR>> =20
> > ><BR>> =20
> > > H =3D=20
(O+C)/2;<BR>> > > =20
> L =3D (O+C)/2;<BR>> >  =
;=20
> ><BR>> > =20
> > GraphXSpace =3D 9;<BR>> &=
nbsp;=20
> > > Graph0Style =3D=
=20
64;<BR>> > > =20
><BR>> > > =20
> Graph0Color =3D1;<BR>> > &n=
bsp;=20
> > Graph0 =3D C;<BR>> =
=20
> > ><BR>> =20
> > > Thanks in advanc=
e for=20
any reply.<BR>> > > =20
> Dimitris Tsokakis<BR>> > &n=
bsp;=20
> ><BR>> > =20
> > &nbs=
p;=20
Yahoo! Groups Sponsor<BR>> > =20
> ><BR>> > =20
> > &nbs=
p;=20
Click here to find your contact lenses!<BR>> =20
> > ><BR>> =20
> > > Your use of Yaho=
o!=20
Groups is subject to the Yahoo!<BR>Terms<BR>> =20
of<BR>> > > =20
Service.<BR>> > ><BR>> &nb=
sp;=20
> ><BR>> > =20
> Yahoo! Groups=
=20
Sponsor<BR>> > =20
> &nb=
sp; =20
ADVERTISEMENT<BR>> > =20
> &nb=
sp; <BR>> =20
> =20
> <BR>> =
=20
> ><BR>> > =20
> Your use of Yahoo! Groups is subject to the Yahoo!=
=20
Terms<BR>of<BR>> > =20
Service.<BR>> ><BR>> =20
><BR>> =20
> Yahoo! Groups=
=20
Sponsor<BR>> =20
> &nb=
sp; =20
ADVERTISEMENT<BR>> =20
> &nb=
sp; <BR>> =20
> <BR>> =
=20
><BR>> > Your use of Yahoo! Groups=
is=20
subject to the Yahoo! Terms of<BR>> =20
Service.<BR>><BR>><BR>>  =
; =20
Yahoo! Groups=20
Sponsor<BR>> &nbs=
p; =20
ADVERTISEMENT<BR>> &nbs=
p; <BR>>  =
; <BR>><BR>> =20
Your use of Yahoo! Groups is subject to the Yahoo! Terms=20
of<BR>Service.<BR><BR><BR>------------------------ Yahoo! Groups Sp=
onsor=20
---------------------~--><BR>Will You Find True Love?<BR>Will Yo=
u=20
Meet the One?<BR>Free Love Reading by phone!<BR><A target=3D_blank=
=20
href=3D"http://us.click.yahoo.com/O3jeVD/R_ZEAA/Ey.GAA/GHeqlB/TM">h=
ttp://us.click.yahoo.com/O3jeVD/R_ZEAA/Ey.GAA/GHeqlB/TM</A><BR>------------=
---------------------------------------------------------~-><BR><BR><BR>=
<BR>Your=20
use of Yahoo! Groups is subject to <A target=3D_blank=20
href=3D"http://docs.yahoo.com/info/terms/">http://docs.yahoo.com/in=
fo/terms/</A><BR><BR><BR></FONT></P></BLOCKQUOTE><BR><BR><TT>Your=20
use of Yahoo! Groups is subject to the <A=20
href=3D"http://docs.yahoo.com/info/terms/">Yahoo! Terms of Service</A=
>.</TT>=20
<BR></BLOCKQUOTE><BR><BR><TT>Your use of Yahoo! Groups is subject to =
the <A=20
href=3D"http://docs.yahoo.com/info/terms/">Yahoo! Terms of Service</A>.=
</TT>=20
<BR></BLOCKQUOTE><BR><BR><TT>Your=20
use of Yahoo! Groups is subject to the <A=20
href=3D"http://docs.yahoo.com/info/terms/">Yahoo! Terms of Service</A>.</=
TT>=20
<BR></BLOCKQUOTE></BODY></HTML>
------=_NextPart_001_00A1_01C22F48.11EC8820--
Attachment:
Description: ""
|