I wrote this strategy hoping to start some discussion on value trading vs. day trading and also to give a different option to people with little time available.
I adapted a buy-and-hold strategy based on the price index 6 months with an long-only-entry. When the close of the day crosses above 144% to the price registered 6 months ago we go long and we hold the stock for 1 year (apron 254 bars).
As I said it’s an adaptation made for automatic trading!! With Italian stocks the results are very good but might be MUCH better if you used Price to book (P/B) and Earning yields (EY) to confirm the entry. Running this strategy manually with the use of P/B and EY12 months, and using a portfolio, returned an average of 55% a year in the last 10 years (Only one year I didn’t beat the market).
Blue sky!!!
// General parameters
DEFPARAM CumulateOrders = False
thr=44 // entry threshold
ref=close[130]*(1+thr/100) // price entry level
ex=254 // number of bars in the trade
// conditions to enter long
c1 = (close CROSSES OVER ref)
IF c1 THEN
BUY 20000 CASH AT MARKET
ENDIF
barontrade=barindex-tradeindex
// exit long position
IF barontrade=ex THEN
SELL AT MARKET
ENDIF
You must be logged in to post a comment.
Hi gabri, I was not asking you to run any backtest but a PRT screener on any market to find 20/30 stocks currently with the best (best according to your strategy) PI 6m index, and then to share some thoughts about which one to pick up, based on their P/B, EY or whatever. Simply following the thread of the post. But personal strategies are just that, personal, aren't they?, so I won't insist :- ) Thanks for your time.
Hello Miguel, The reason why I switched from trading to investing because I didn't like to play casino anymore :) You are right, EY is pretty much the inverse of P/E ratio and for many P/E is not a valid reference number but used properly raises awareness on what is going on. I suggest you to read the work of Shiller (a nobel price) and his use of a 10-year-PE to predict markets. I do not use only P/B and EY but I personally check all the balance sheet of a company and, if good, I try to buy at a low PE or PB. Unfortunately I cannot run any backtest because I cannot make a code to find cheap and good companies on PRT and also because you need to backtest a portfolio. Every single stock will lose at some point. Using this system will allow the portfolio to win.
Hello gabri , well, with the results you mention, even with half those results, it does seem a very promising strategy. I totally agree on the fact that fundamentals can make or break strategies in the long run. In my opinion, using only TA or Price Action concepts is, to some extent, like playing casino: you can win, but is very hard to beat the market clearly and consistently. You say you use the P/B and EY metrics. No problem with the first but I have some doubts about the second, just, if I'm not wrong, the inverse of the overused P/E ratio, which in my mind doesn't seem to be the finest of the tools when we think of forecasting the future price evolution of a stock. Looking forward to know your opinion/experience about it. As a guide on how your strategy works, could you run a screening for us interested, preferibly on an US market (Italy would be OK too, if you prefer so), and then explain which stock/stocks you would choose and why? When you have the time and just the once, don't worry! Thanks for now.
Ok, thanks. That is what I thought. Pretty weird and such a shame a powerfull tool as PRT can not use few fundamental analysis statistics.
Hi Garbri, Thanks for your share. This is a very interesting strategy. Does anybody know an indicator using P/B ratio to get sharpest results ?
Benissimo, grazie, molto gentile e disponibile! Lo provo subito. Io avevo scritto questo codice (ma programmo poco e male...), per l'indicatore:
// Price Index 6 months indicator
thr=44 // entry threshold
ref=close[130]*(1+thr/100) // price entry level
// conditions to verify entry long
c1 = (close CROSSES OVER ref)
IF c1 THEN
cross = 1
ENDIF
return cross as "CROSS"
Il tuo codice va benissimo, continua cosi'!! dovresti solo aggiungere una linea per fare in modo che cross non rimanga sempre uguale a uno:
c1 = (close CROSSES OVER ref) IF c1 THEN cross = 1 else cross=0 ENDIF return cross as “CROSS”
in questo modo ti da dei picchi quando avviene il cross over (e solo quel giorno). Oppure puoi fare cosi':
Luxrun,
no problem per l'inglese. Ti posso fornire due soluzioni. La prima disegna la linea del 44% e quella del prezzo:
a=close[130] linea1=(1+44/100)*a return linea1 style (dottedline,1) as "44%",close coloured (205,0,0) as "Close"
La seconda ti disegna il ritorno degli ultimi 6 mesi e quando passa il 44% ti segnala la zona positiva:
a=100*(close-close[130])/close[130] return a,44
Nulla di particolare! Scusa il mio inglese tradotto da google. Dicevo solo che sto provando a costruire l'indicatore che mi mostra a video quando scatta il segnale long, nei sei mesi che il trading system, prende in considerazione. Non serve a molto, ma forse aiuta visivamente. Grazie Luxrun
Luxrun,
I wrote the previous answer in a rush. Try this code:
thr=44 // entry threshold ref=close[130]*(1+thr/100) // price entry level cond1=(close > ref) pi6m=100*(close-close[130])/close[130] SCREENER [cond1] (pi6m AS "Price index")
Now you will see the stocks that meet the requirement and they will be ordered based on their gains. Sorry for the wrong code of before.
G
Luxrum,
I would personally just make it like this:
thr=44 // entry threshold ref=close[130]*(1+thr/100) // price entry level cond1=(close > ref) SCREENER [cond1] (ref AS "Price index")
so you can see ONLY the stocks that meet the condition and they will be ordered by the amount of gain in the last 6 months. You want to pick the top 20-30 stocks in the list so the amount of gain is important. Like I already mentioned 44 is not a fixed umber. If you'd rather use a yearly return you can lower the threshold to 30-ish. The setting are very personal.
G
Hi Gabri,
I realized screener with the specifications of your trading system. Do you give me feedback on its reliability? This is the code:
// Price Index 6 months
thr=44 // entry threshold
ref=close[130]*(1+thr/100) // price entry level
cond1=(close CROSSES OVER ref)
SCREENER[cond1] (Variation AS "% Var barra prec")
Ah okay. You can make automated trading with stocks as well :-) ?
I dident know that
Kenneth,
I buy stocks, hence a part of a business. For stocks there are not overnight fees. You find overnight fees for CFD and derivatives. On top of that I go LONG only. With my bank I pay approx 3.5 Euros everytime I buy and the same amount when I sell. It's totally worth for me.
G
Nicolas,
144% was just an adaptation to make the automatic trading. Any number between 140% and 150% is fine. You should take the 20-40 stocks with the highest 6 months Price Index and search their fundamentals to pick the right one. Drawdown are not really a factor when you buy and hold value stocks.
This was actually a real trade I made but I bought only in September 2004 since P/B was 1.4 (expensive but not too bad for the market of that moment) and the other fundamentals were promising. What I wanted to prove is that there are bizilions of trend indicators on the various trading platforms but the real big wave worth surfing is the one started by the institutional investors and they buy GOOD companies for CHEAP. Price index (for momentum) and fundamentals are the only data they use.
Having a portfolio made with stocks selected with fundamentals leads to really high performances (they almost always beat the market), even better the one of this single stock.
G
I have never been wondering about long trades or made any due to overnight costs, butdo you think it still can.be affordable for such long trades as months/years?
Miguel, I will give you some stocks. I would buy (I probably will) Serneke group AB. I will wait for the following to have a good PI 6m: gelek group, awilco drilling, arteria sa.