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

RE: [amibroker] Re: Tomasz, can this be done? please!



PureBytes Links

Trading Reference Links

Ray,

I would love to read the approach you mentioned. My e-mail is dlindber@xxxxxxxxxxxxx. 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.

 

Enjoy,

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);

PlotShapes(shapeDownArrow*Sell, colorRed,0, 0,  -5);

_SECTION_END();

 

---------------------------------- End Detrended Price Oscillator Code--------------------------

 


From: amibroker@xxxxxxxxxxxxxxx [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of ax_ray2222
Sent: Friday, June 22, 2007 3:53 PM
To: amibroker@xxxxxxxxxxxxxxx
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 this 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));

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" );

AddColumn(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@xxxxxxxxxps.com, "Don Lindberg" <dlindber@xxx> 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 symbols 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);
>!
> ; 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@xxxxxxxxxps.com [mailto:amibroker@yahoogroups.com] On Behalf
> Of ax_ray2222
> Sent: Thursday, June 21, 2007 9:59 PM
> To: amibroker@xxxxxxxxxps.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 industry 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);
> > // Interest 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 ! = $"+ ;Sales
> >
> > + "- 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> ps.com]
> On Behalf
> > Of ax_ray2222
> > Sent: Thursday, June 21, 2007 1:13 AM
> > To: amibroker@xxxxxxxxx <mailto:amibroker%40yahoogroups.com> ps.com
> > Subject: [amibroker] Re: Tomasz, can this be done? please!
> >
> >
> >
> > Brian, I understand your concerns, but I need some answers
> regarding
> > the program. I did sent a message with all my questions to AB
> support
> > and did not received any answer yet, so I try to find out in the
> help
> > group here, from the other users or from somebody who already know
> > the answer and is willing to help.
> >
> > I tried your suggestions and I made a formula with AddColumn for
> the
> > test items I needed in the window as follow, but I just get a black
> > screen (the background):
> >
> > _SECTION_BEGIN("Fundamentals Columns");
> > EPS=GetFnData("EPS");
> > Tgt=GetFnData("OneYearTargetPrice");
> > PM! =GetFnDa ta("ProfitMargin");
> > AddColumn(Close,"Close",1.2,IIf( Close>=15, (colorGreen ),
> > (colorOrange )));
> > AddTextColumn( FullName(), "Company
> > Name",1.0,colorBlack,colorYellow,170 );
> > AddColumn( ROC( Close, 10 ), "ROC(10)" );
> > AddColumn (RSI(10) ," RSI",1.2,IIf( RSI(10) >= 75, (colorGreen ),
> > (colorOrange )));
> > AddColumn (EPS," EPS",1.2,IIf( EPS >= 1, (colorGreen ),
> > (colorOrange )));
> > AddColumn (PM,"Profit Margin",1.2,IIf( PM >= 15, (colorGreen ),
> > (colorOrange )));
> > _SECTION_END();
> >
> > Where is my mistake? or what should I add? where can I find this
> > info?
> > Thank you for any help or advise you can give me...
> > I like AB so far but it has to deliver what I'm looking for
> otherwise
> > I'll have to look somewhere else.
> >
> > Ray
> >
> > --- In amibroker@xxxxxxxxx <mailto:amibroker%40yahoogroups.com>
> ps.com,
> > "brian_z321" <brian_z321@> wrote:
> > >
> > > Hello Ray,
> > >
> > > File > New > Blank Chart or Blank Pane OR just right click and
> > insert
> > > the formula ?
> > >
> > > Not telling you or others off, but to get the best out of the
> group.
> > >
> > > ThIS group is for discussion between users.
> > > It is not an AB support site.
> > >
> > > Tomasz does not join in discussion.
> > > His role is mainly to advise on the best way to use the key
> > features of
> > > AB or correct erroroneous comments made about AB's key features.
> > >
> > > He doesn't answer posts directed to him.
> > > He joins in when and wh! ere he s ees the need (he's a very busy
> > person).
> > >
> > > Brian.
> > >
> > >
> > > --- In amibroker@xxxxxxxxx <mailto:amibroker%40yahoogroups.com>
> ps.com,
> > "ax_ray2222" <ax_ray2222@> wrote:
> > > >
> > > > Hello Tomasz, 1.under chart window in AB, can we open another
> > > permanent
> > > > or removable window to display any chosen fields like: PE, EPS,
> > RS, 52
> > > > wk high, low, split date, ex-dividend date...etc. I mean when
> > you
> > > > chart a stock to see all the other needed data as well. can
> > this be
> > > > done? Thank you , Ray
> > > >
> > >
> >
>

__._,_.___

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

__,_._,___