Ray,
I think the easiest way to see how ATC
works is to look at this simple AFL. The code goes through all your stocks, and
adds O H L C V for each stock to a composite of the Sector ID and the Industry
ID. You then end up with a Symbol that represents each Sector, and each
Industry. In order for this to work correctly you must have data where each
stock is identified by Sector and Industry. My Quotes Plus does this for me
automatically , but if you are using Yahoo as your data source you will have to
set this up yourself. There are some databases and instructions in the Files
section of User Group. I did this a long time ago, and found it to be no
fun at all. To me this is one of the strongest reasons for subscribing to
a Data Service. All of the good one code Sector and Industry information, and keep it up to date. But that’s
my opinion. Anyway here is the code. Look at it, try it out and see if it
makes sense. I also run the ATC code against all of my watch-lists, so I can
see a running image of how a certain group is doing. I have put that code at
the bottom for you as well. Just be aware you must change the Watch-list
numbers and names to match your setup. When you run these ATC’s
all of the Composites will be put into Group 253. You then go through and
assign them to a watch-list of your choice. You will notice that Sectors
and Industries are also at the bottom of My Watch list Code. I run this once a
day and update all of the Composites at the same time.
Good Luck and Enjoy,
Don
---------------------------------- Begin
Sector Industry ATC Code ----------------------------------------------
_SECTION_BEGIN("Sector
and Industry Composites");
sym = "~Industry - " + IndustryID(1);
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
sym = "~Sector - " + SectorID(1);
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
Buy=Sell=Short=Cover=0;
Filter=1;
_SECTION_END();
---------------------------------- End
Sector Industry ATC Code ----------------------------------------------
---------------------------------- Begin All
Watch List ATC Code ----------------------------------------------
if(InWatchList(1))
{
sym="~Best Choices";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(4))
{
sym="~IBD 100";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(5))
{
sym="~IBD A+";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(7))
{
sym="~Auto Up Trend Buy ";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(8))
{
sym="~CAN SLIM Select";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(9))
{
sym="~IBD Top Rated";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(10))
{
sym="~QP3 Leaders";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(11))
{
sym="~HGS 100";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(14))
{
sym="~China Stocks";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(17))
{
sym="~Automatic Best Under $10";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(23))
{
sym="~Yields Over 100%";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(26))
{
sym="~Automatic High Volume";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(27))
{
sym="~10 Year Stable Stocks";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(28))
{
sym="~Stocks Under $5";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(29))
{
sym="~WIT Stable Stocks";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(30))
{
sym="~Gold Stocks";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(31))
{
sym="~My S&P 500";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(32))
{
sym="~My Dow Jones Industrials";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(33))
{
sym="~My Russell 2000";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(36))
{
sym="~Graham IV";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(37))
{
sym="~10 Yr Stocks Yield Over 50%";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
if(InWatchList(38))
{
sym="~All Stocks Yield Over 50%";
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
}
_SECTION_BEGIN("Sector
and Industry Composites");
sym = "~Industry - " + IndustryID(1);
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
sym = "~Sector - " + SectorID(1);
AddToComposite( L, sym,"L",7);
AddToComposite( O, sym,"O",7);
AddToComposite( H, sym,"H",7);
AddToComposite( C, sym,"C",7);
AddToComposite( V, sym, "V",7);
Buy=Sell=Short=Cover=0;
Filter=1;
_SECTION_END();
From: amibroker@xxxxxxxxxxxxxxx [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of ax_ray2222
Sent: Tuesday, June 26, 2007 6:31
PM
To: amibroker@xxxxxxxxxxxxxxx
Subject: [amibroker] Re: Tomasz,
can this be done? please!
Sorry Don, my bad, yes it is the ATC composite ....I try to figure
out how it will create composites with the stocks you want added in
it? the AB explanation is not good enough for me to follow it...
did you got the email from my yahoo dot com address?
Thanks, Ray
--- In amibroker@xxxxxxxxxps.com,
"Don Lindberg" <dlindber@xx.> wrote:
>
> Ray,
>
> I'm confused. What formula are you referring to that I sent you
regarding
> Industry Groups. I suspect you are referring to ATC Composites, but
I am not
> certain. Refresh my memory, and I will try to give you an answer
to your
> questions.
>
>
>
> Don
>
>
>
> _____
>
> From: amibroker@xxxxxxxxxps.com
[mailto:amibroker@xxxxxxxxxps.com]
On Behalf
> Of ax_ray2222
> Sent: Monday, June 25, 2007 10:05 PM
> To: amibroker@xxxxxxxxxps.com
> Subject: [amibroker] Re: Tomasz, can this be done? please!
>
>
>
> Hello Don,
>
>
>
> regarding the industry group, I have a question. You sent me how to
create
> the group with the formula in AB but I don't grasp exactly how you
create it
> and what name that industry will have, and how after that can you
sort
> through it?
>
>
>
> I'd like to be able to have the PE and PS of the industry to can
scan and
> sort and after that to go to the components and look at them.
>
> Not sure how difficult this will be to achieve in AB.
>
>
>
> I sent and email on
> --- In amibroker@xxxxxxxxxps.com,
"Don Lindberg" <dlindber@> wrote:
> >
> > Ray,
> >
> > I learn something new every day. I did not know that we could not
send
> > e-mail addresses. You can reach me at sbcglobal.net. Let me know
yours as
> > well, as I have some things to share off board.
> >
> >
> >
> > Don
> >
> >
> >
> > _____
> >
> > From: amibroker@xxxxxxxxxps.com
[mailto:amibroker@xxxxxxxxxps.com]
On
> Behalf
> > Of ax_ray2222
> > Sent: Saturday, June 23, 2007 12:12 AM
> > To: amibroker@xxxxxxxxxps.com
> > Subject: [amibroker] Re: Tomasz, can this be done? please!
> >
> >
> >
> > Don, can you type the email like xxx at yahoo dot comm otherwise
it
> > will not display here,
> > Ray
> >
> > --- In amibroker@xxxxxxxxx <mailto:amibroker%40yahoogroups.com>
ps.com,
> "Don
> > Lindberg" dlindber@ wrote:
> > >
> > > Ray,
> > >
> > > I would love to read the approach you mentioned. My e-mail is
> > > dlindber@ As for the formulas for Vector Vests RT and RS they
> > > are proprietary and I have not been able to get anything that
gives
> > me a
> > > clue as to how they are figured. I did duplicate their
Detrended
> > Price
> > > Oscillator which they use in their more advance program for a
Trend
> > > Indicator chart. Their thinking is as long as the DTO is above
0
> > you are in
> > > a safe Buy or Hold position. If it goes below they say Sell. I
have
> > found
> > > that you need to give aq few days to confirm that it is going
to
> > stay below
> > > 0. Here is the code for that. The parameters allow you to
adjust
> > period
> > > and WMA. VV default is 20 for period and 30 for WMA, but you
can
> > play around
> > > with it.
> > >
> > >
> > >
> >! ; > E njoy,
> > >
> > > Don Lindberg
> > >
> > >
> > >
> > > ---------------------------Begin Detrended Price
Oscillator Code
> > > -----------------------------
> > >
> > >
> > >
> > >
> > >
> > > _SECTION_BEGIN("DPO");
> > >
> > > function DetrendedPriceOsc( Periods )
> > >
> > > {
> > >
> > > return C - Ref( WMA( C, Periods ), -( 1 + Periods/2 ) );
> > >
> > > }
> > >
> > > dynamic_color = IIf(DetrendedPriceOsc( Param("Periods",
20, 1,
> > 100 )) > 0,
> > > colorGreen, colorDarkRed );
> > >
> > > Plot( DetrendedPriceOsc( Param("Periods", 20, 1,
100 ) ),"Detrended
> > Price
> > > Oscillator"+" ("+ Param("Periods",
20, 1, 100 )
+" )",dynamic_color,
> > > styleHistogram|styleThick);
> > >
> > > _SECTION_END();
> > >
> > >
> > >
> > > _SECTION_BEGIN("WMA");
> > >
> > > P = ParamField("Price field",-1);
> > >
> > > PERIODS = Param("PERIODS", 30, 1, 200, 1, 10 );
> > >
> > > Plot( WMA( P, PERIODS ), _DEFAULT_NAME(), ParamColor(
"Color",
> > colorCycle
> > > ), ParamStyle("Style") );
> > >
> > > _SECTION_END();
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > _SECTION_BEGIN("PlotArrows");
> > >
> > > Buy=Cross(DetrendedPriceOsc(Periods),0) AND
Cross(Close,WMA( P,
> > PERIODS )
> > > );
> > >
> > > Sell=Cross(0,DetrendedPriceOsc(Periods)) AND
Cross(WMA( P,
PERIODS
> > > ),Close);
> > >
> > >
> > >
> > > PlotShapes(shapeUpArrow*Buy, colorDarkGreen,0, 0, -5);
> > >
> > > PlotSha! pes(shap eDownArrow*Sell, colorRed,0, 0, -5);
> > >
> > > _SECTION_END();
> > >
> > >
> > >
> > > ---------------------------------- End Detrended
Price
Oscillator
> > > Code--------------------------
> > >
> > >
> > >
> > > _____
> > >
> > > From: amibroker@xxxxxxxxx <mailto:amibroker%40yahoogroups.com>
ps.com
> > [mailto:amibroker@yahoogrou <mailto:amibroker%40yahoogroups.com>
ps.com]
> > On Behalf
> > > Of ax_ray2222
> > > Sent: Friday, June 22, 2007 3:53 PM
> > > To: amibroker@xxxxxxxxx <mailto:amibroker%40yahoogroups.com>
ps.com
> > > Subject: [amibroker] Re: Tomasz, can this be done? please!
> > >
> > >
> > >
> > > Don, seems that our approach is very common, and I have an
> > interesting
> > > reading from a guy which uses same aproach , with a twist
> > >
> > > very succesful in the markets, which i try to emulate with AB.
It
> > is based
> > > on fundamentals and for entry is using some charting techniques.
> > >
> > > If you would like to read it I can send it to your email
address,
> > with your
> > > permission and we can discuss it further.
> > >
> > >
> > >
> > > I would like to compare and find the formula used in VV to
> > calculate RT for
> > > Industries and stocks. Do you know it or can you find out?
> > >
> > > I would like to emulate that in AB, to have only one program
for
> > all the
> > > research...I do have at the moment TC2007 and we can compare
some
> > with that
> > > as well.
> > >
> > >
> > >
> > > I will post here a FundamentalTitle indicator (with Graham
formula
> > in it)
> > > you sent me and I modified it to suit my visual needs. I place
t! his
> & gt; > indicator on the chart price. You can add all the data you
like
> > from QP as
> > > QRS...etc which I don't have at the moment .
> > >
> > > You have to add the ticker ^TYX in AmiQuotes ( AAA Bond Yield
data)
> > for all
> > > the Intrinsic Values to be calculated or you can replace it
with
> > your manual
> > > entry choice IY. I left at the end also handy to be copied the
> > indicator as
> > > Exploration for columns
> > >
> > > Hope this helps
> > >
> > >
> > >
> > > Talk to you soon, Ray
> > >
> > >
> > >
> > > .......................................FundamentalTitle
> > > Indicator...................................................
> > >
> > >
> > >
> > > IY=Foreign("^TYX", "Close"); //
Interest Yield percent on 10 yr
AAA
> > > Corporate Bond
> > >
> > > x=GetFnData( "EPSEstCurrentYear" );
> > >
> > > y=(2*(Close/GetFnData( "EPSEstCurrentYear"
))/GetFnData
> > ( "PEGRatio" ));
> > >
> > > z=(8.5+(y*4.4/IY));
> > >
> > > Graham = x*z;
> > >
> > > Disc=(Graham/Close-1)*100;
> > >
> > > YTgt=GetFnData("OneYearTargetPrice");
> > >
> > > YDisc=(GetFnData("OneYearTargetPrice")/Close-1)*100;
// in %
> > >
> > > BV=GetFnData("BookValuePerShare");
> > >
> > > EPS=GetFnData("EPS");
> > >
> > > PE= Close / EPS;
> > >
> > > PB=C/BV;
> > >
> > > //PBc=IIf(PB<2,colorGreen,colorRed);
> > >
> > > FwdEPS=GetFnData( "EPSEstNextYear" );
> > >
> > > FwdPE= Close / FwdEPS;
> > >
> > > EY=(100*(1/PE));
> > >
> > > Value=(100*(EPS/IY));
> > >
> &! gt; > PM=GetFnData("ProfitMargin");
> > >
> > > ROE=GetFnData("ReturnonEquity");
> > >
> > > QRG=GetFnData("QtrlyRevenueGrowth");
> > >
> > > QEG=GetFnData("QtrlyEarningsGrowth");
> > >
> > > Title = StrFormat(Name())+" "
> > >
> > > + Date()+" - "+"C="+ NumToStr( C, 1.2 )+
" - O="+Open+"
H="+High+"
> > L="+Low
> > > +" - ^TYX = "+ NumToStr(IY,1.2) + EncodeColor(
colorYellow )
> > >
> > > + " VV Value = $"+ NumToStr(Value,1.2)+"
Y!1Yr Target Price= $"+
> > > NumToStr(YTgt,1.2)+" Graham IntValue =
$"+NumToStr(Graham,1.2)
+"
> > IntValue
> > > Discount = "+NumToStr(Disc,1.0)
> > >
> > > +"% BV = $" + NumToStr(BV,1.2)+" PB = "
+ NumToStr(PB,1.2)
+ "\n PE
> > =
> > > "+NumToStr(PE,1.2)+ " Earnings Yield =
"+NumToStr(EY,1.2)+"%"
+ "
> > EPS=
> > > $"+NumToStr(EPS,1.2)
> > >
> > > + " Profit Margin = "+ NumToStr(PM,1.2) + "%
ROE = "+NumToStr
> > (ROE,1.2) +"%
> > > Qtr Rev Growth = "+NumToStr(QRG,1.2)+"% Qtr
Earnings Growth =
> > > "+NumToStr(QEG,1.2)+"%"
> > >
> > > ;
> > >
> > > SetChartOptions( 0,chartWrapTitle);
> > >
> > >
> > >
> > > /*+"% - QP3 Relative Strength Ranking = "+ QRS
> > >
> > > +" - QP3 EPS Ranking = " + QEPSR + " -
Institutional Holding
> > = "+QInst+" %"
> > > + " - Sales = $"+Sales*/
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > /*AddColumn( Close, "Close", 1.2, IIf( ROC(C, 1 ) >
0,
colorGreen,
> > colorRed
> > > ) );
> > >
> > > AddColumn( 25*GetFnData( "EPSEstCurrentYear" ) ,
"DD Est.
Value" );
> > >
> > >! ; AddCol umn(Graham, "Graham Value");
> > >
> > > AddColumn(Disc, "%Disc");
> > >
> > > AddColumn(GetFnData("OneYearTargetPrice"),
"Y! 1Yr Target");
> > >
> > > AddColumn((GetFnData("OneYearTargetPrice")/Close-1)*100,
"Y!
> > > %Disc",1.2,colorDefault,ColorHSB( 128, 128, 255 ));
> > >
> > > AddColumn( GetFnData( "EPSEstNextYear" ),
"EPSEstNextYear" );
> > >
> > > AddColumn( Close / GetFnData( "EPS" ) , "Current
P/E ratio" );
> > >
> > > AddColumn( Close / GetFnData( "EPSEstNextYear" ) ,
"Est. Next
Year
> > P/E
> > > ratio" );
> > >
> > > AddColumn( GetFnData("BookValuePerShare"),
"BookValuePerShare");
> > >
> > > SetSortColumns(-8);
> > >
> > > Filter = Status("lastbarinrange"); */
> > >
> > > ...........................................................End
of
> > code for
> > > Indicator
> >
> ....................................................................
> > ........
> > > ........
> > >
> > >
> > >
> > > --- In amibroker@xxxxxxxxx <mailto:amibroker%40yahoogroups.com>
ps.com,
> > "Don Lindberg" <dlindber@> wrote:
> > > >
> > > > Ray,
> > > >
> > > > I use Vector Vest primarily for top down analysis. I look
at
the
> > top
> > > > Sectors, then the top Industries in those Sectors, and then
> > finally the
> > > top
> > > > Stocks in those Industries. I am not planning to renew it
though
> > as I
> > > don't
> > > > get sufficient value for the cost. I use Quotes Plus as my
data
> > provider,
> > > as
> > > > they have a fair amount of Fundamental info similar to IBD,
which
> > I also
> > > > follow. As ! far as s ymbols for Sectors and Industries the
only data
> > > provider
> > > > that does that is Worden's Tel Chart. I have created Sector
and
> > Industry
> > > > Composites in AmiBroker and thus have my own symbols for
them. I
> > have
> > > > attached the code below for you to look at. This works well
for
> > me as
> > > > Quotes Plus codes the Sector and Industry ID's for me. You
can
> > set up
> > > Yahoo
> > > > Data to do the same, but it is a Pain.
> > > >
> > > >
> > > >
> > > > You mentioned Graham's Intrinsic Value formula. I did a
search in
> > > AmiBroker,
> > > > and could not find it. Could you share that with me? I
would
> > really
> > > > appreciate it. Anything else I can share with you just let
me
> > know.
> > > >
> > > >
> > > >
> > > > Thanks and Enjoy,
> > > >
> > > > Don Lindberg
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > ------------------------ Begin Sector &
Industry Composite
Code
> > > > ------------------------------------
> > > >
> > > > _SECTION_BEGIN("Sector and Industry
Composites");
> > > >
> > > > sym = "~Industry - " + IndustryID(1);
> > > >
> > > > AddToComposite( L, sym,"L",7);
> > > >
> > > > AddToComposite( O, sym,"O",7);
> > > >
> > > > AddToComposite( H, sym,"H",7);
> > > >
> > > > AddToComposite( C, sym,"C",7);
> > > >
> > > > AddToComposite( V, sym, "V",7);
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > sym = "~Sector - " + SectorID(1);
> > > >
> > > > AddToComposite( L, sym,"L",7);
> > &g! t; >!
> > > > ; AddToComposite( O, sym,"O",7);
> > > >
> > > > AddToComposite( H, sym,"H",7);
> > > >
> > > > AddToComposite( C, sym,"C",7);
> > > >
> > > > AddToComposite( V, sym, "V",7);
> > > >
> > > > Buy=Sell=Short=Cover=0;
> > > >
> > > > Filter=1;
> > > >
> > > > _SECTION_END();
> > > >
> > > >
> > > >
> > > > ------------------------------------------
End Sector &
Industry
> > Composite
> > > > Code
> > > >
> > > >
> > > >
> > > > _____
> > > >
> > > > From: amibroker@xxxxxxxxx <mailto:amibroker%
40yahoogroups.com> ps.com
> > [mailto:amibroker@yahoogrou <mailto:amibroker%40yahoogroups.com>
ps.com]
> On
> > > Behalf
> > > > Of ax_ray2222
> > > > Sent: Thursday, June 21, 2007 9:59 PM
> > > > To: amibroker@xxxxxxxxx <mailto:amibroker%40yahoogroups.com>
ps.com
> > > > Subject: [amibroker] Re: Tomasz, can this be done? please!
> > > >
> > > >
> > > >
> > > > Don, thank yo for the code, that is exactly what I was
looking
> > for...
> > > > I don't use QP or VV at the moment, just data from Yahoo
and
> > Graham's
> > > > Intrinsic Value formula ...
> > > > Do you use Vector Vest in any way? like RT for industries
and
> > then
> > > > check the coresponding stocks...or just AB? I was looking
at
AB
> > as
> > > > one stop package, to don't have to use QP or VV....but I
still
> > have
> > > > questions regarding their Industries and Sectors, seems
that
they
> > > > aren't any symbols for them.....any idea in this regard? I
think
> > even
> > > > Yahoo does not have ! any indu stry symbols or sectors....
> > > >
> > > > Maybe you can give me your inputs here....
> > > > Thanks again, Ray
> > > >
> > > > --- In amibroker@xxxxxxxxx <mailto:amibroker%
40yahoogroups.com>
> > ps.com,
> > > "Don
> > > > Lindberg" dlindber@ wrote:
> > > > >
> > > > > Ray,
> > > > >
> > > > > I think I understand what you want, and the code below
will
do
> > it.
> > > > The key
> > > > > section is the title, as that area is what put your info on
> > screen.
> > > > I use
> > > > > Quotes Plus for my data feed, so some of this code
will
show
> > > > [Empty] on your
> > > > > machine, but now that you! see HOW its done, you can
adapt
for
> > your
> > > > > preferences.
> > > > >
> > > > >
> > > > >
> > > > > Don Lindberg
> > > > >
> > > > >
> > > > >
> > > > > ---------------------------------Code
Starts Here
> > > > > ------------------------------------
> > > > >
> > > > >
> > > > >
> > > > > Filter=Close>0;
> > > > >
> > > > > Buy=1;
> > > > >
> > > > > QRS = GetExtraData("QRS");
> > > > >
> > > > > QInst=GetExtraData("InstHolds");
> > > > >
> > > > > EPS=GetFnData("EPS");
> > > > >
> > > > > BV=GetExtraData("BookValuePerShare");
> > > > >
> > > > > QEPSR = GetExtraData("EPSRank");
> > > > >
> > > > > IY=Param("Intrest Yield on 10 yr AAA Corporate
> > > > Bond",5.77,1.00,20.00,0.1);
> > > > > // I! nterest Yield percent on 10 yr AAA Corporate
Bond
> > > > >
> > > > > QEPS=GetExtraData("EPS");
> > > > >
> > > > > Sales=GetExtraData("Sales");
> > > > >
> > > > > PM=GetFnData("ProfitMargin");
> > > > >
> > > > > ROE=GetFnData("ReturnonEquity");
> > > > >
> > > > > QRG=GetFnData("QtrlyRevenueGrowth");
> > > > >
> > > > > QEG=GetFnData("QtrlyEarningsGrowth");
> > > > >
> > > > > OYT = GetFnData("OneYearTargetPrice");
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > PEratio=Close/EPS;
> > > > >
> > > > > EY=(100*(1/PEratio));
> > > > >
> > > > > Value=(100*(EPS/IY));
> > > > >
> > > > >
> > > > >
> > > > > AddColumn(Close,"Close",1.2);
> > > > >
> > > > > AddColumn(IY,"Interest Yield AAA Corporate
Bond",1.2);
> > > > >
> > > > > AddColumn(EPS,"EPS",1.4);
> > > > >
> > > > > AddColumn(BV,"Book Value ps",1.4);
> > > > >
> > > > > AddColumn(Sales,"Sales",1.4);
> > > > >
> > > > >! AddColu mn(PEratio,"P/E Ratio",1.2);
> > > > >
> > > > > AddColumn(EY,"Earnings Yield %",1.2);
> > > > >
> > > > > AddColumn(Value,"Quick Value
Estimate",1.2);
> > > > >
> > > > > AddColumn(PM,"Profit Margin",1.4);
> > > > >
> > > > > AddColumn(ROE,"Return on Equity",1.4);
> > > > >
> > > > > AddColumn(QRG,"Quarterly Revenue Growth!
",1.4);
> > > > >
> > > > > AddColumn(QEG,"Quarterly Earnings
Growth",1.4);
> > > > >
> > > > > AddColumn(OYT,"One Year Target
Price",1.4);
> > > > >
> > > > >
> > > > >
> > > > > //Plot(Value,"Quick Value
> > > > Estimate",colorViolet,styleLine|styleThick);
> > > > >
> > > > > //Plot(PEratio,"P/E Ratio",colorGreen,styleLine|styleThick);
> > > > >
> > > > > //Plot(EY,"Earnings Yield %",colorRed,styleLine|styleThick);
> > > > >
> > > > > //Plot
> > (EPS,"EPS",colorViolet,styleLine|styleThick|styleOwnScale);
> > > > >
> > > > > //Plot
> > (Sales,"Sales",colorBlue,styleLine|styleThick|styleOwnScale);
> > > > >
> > > > > //Plot(IY,"Interest Yield AAA Corporate
> > > > > Bond",colorBlack,styleLine|styleThick);//|styleOwnScale);
> > > > >
> > > > >
> > > > >
> > > > > Title = "Quick Value Information by D Lindberg
"
> > > > >
> > > > > + Date()+" - "+Name() + " - Open =
"+Open+" High = "+High+"
Low
> > > > = "+Low+"
> > > > > Close = "+Close
> > > > >
> > > > > + " - Vector Vest Quick Value Estimate = "+
Value + " -
Book
> > Value
> > > > Per Share
> > > > > = $" + BV + " - PE Ratio =
"+PEratio+" - Earnings Yield
= "+EY
> > > > >
> > > > > +"% - QP3 Relative Strength Ranking = "+ QRS
> > > > >
> > > > > +" - QP3 EPS Ranking = " + QEPSR + " -
Institutional
Holding
> > > > = "+QInst+" %"
> > > > > + " - EPS= $"+EPS + " - Sales ! =
$"+ ;Sa! les
> & gt; > > >
> > > > > + "- Profit Margin = "+ PM + "% -
Return on Equity = "+ROE
+"% -
> >
> > > > Quarterly
> > > > > Revenue Growth = "+QRG+"% - Quarterly
Earnings Growth
= "+QEG
> > > > >
> > > > > +"% - One Year Target Price= $"+OYT+" -
AAA Cotporate Bond
Rate
> > > > = "+ IY
> > > > >
> > > > > ;
> > > > >
> > > > > SetChartOptions( 0,chartWrapTitle);
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > -------------------------------------------------
Code Ends
Here
> > > > > ----------------------------------------
> > > > >
> > > > > _____
> > > > >
> > > > > From: amibroker@xxxxxxxxx <mailto:amibroker%
40yahoogroups.com>
> > ps.com
> > > > [mailto:amibroker@yahoogrou <mailto:amibroker%
40yahoogroups.com>