孫子兵法裡有一句:多算勝,少算不勝
在選股時,我把這句話引申為,多符合幾個獨立的選股條件,會比單一條件勝率高。
基於這樣的心思,我請了公司的高手,幫我把教科書裡,幾個拿來計算合理股價的方法,全部寫在腳本裡,然後把至少符合其中兩個標準,作為選股的基本要件,這裡我用的估值方法共有以下幾個:
殖利率
本益比
流動資產減負債佔總市值的比例
股價與歷年平均股利比值
自由現金流總市值比
input:m1("不符合"),m2("符合");
variable:s1(""),s2(""),s3(""),s4(""),s5("");
variable:count(0);
condition1=false;
condition2=false;
condition3=false;
condition4=false;
condition5=false;
count=0;
//用最近三個月營收推估的獲利殖利率高於一定水準
value1=GetField("營業利益","Q");//單位:百萬
value2=GetField("月營收","M");//單位:億
value3=GetField("營業利益率","Q");
value4=GETFIELD("月營收","M")+GETFIELD("月營收","M")[1]
+GETFIELD("月營收","M")[2];
//近三個月營收
value5=value4*value3/100;
//用最近一期營益率去估算的最近一季營業利益
value6=GetField("營業利益","Q")+GetField("營業利益","Q")[1]
+GetField("營業利益","Q")[2]+value5*100;
//前三季營業利益加上最近一季預估營業利益
value8=GetField("最新股本");//單位億
value9=value6/(value8*100)*10;
//估算出來的EPS
value10=value9/close*100;
//eps/股價*100: 預估殖利率
input:r1(5,"殖利率下限");
if value10>r1 and value3>0 and close>10
then begin
condition1=true ;
s1=m2;
count=count+1;
end else
s1=m1;
//本業推估本益比低於N
input:epsl(15,"預估本益比上限");
value11= GetField("營業利益","Q")+GetField("營業利益","Q")[1]
+GetField("營業利益","Q")[2]+GetField("營業利益","Q")[3];
value12= GetField("最新股本");//單位億;
value13= value11/(value12*10);//每股預估EPS
if close/value13<=epsl then begin
condition2=true ;
s2=m2;
count=count+1;
end else
s2=m1;
//流動資產減負債超過市值N成
input:ratio(80,"佔總市值百分比%");
if (GetField("流動資產","Q")-GetField("負債總額","Q"))/100
>GetField("總市值","D")*ratio/100
then begin condition3=true ;
s3=m2;
count=count+1;
end else
s3=m1;
//股價低於N年平均股利的N倍
input:N1(16,"股利的倍數");
value15=(GetField("股利合計","Y")
+GetField("股利合計","Y")[1]
+GetField("股利合計","Y")[2]
+GetField("股利合計","Y")[3]
+GetField("股利合計","Y")[4])/5;
if close<value15*N1 then begin
condition4=true ;
s4=m2;
count=count+1;
end else
s4=m1;
//高自由現金流總市值比
input:ratio1(10,"近四季自由現金流總合佔總市值最低比率單位:%");
if (GetField("來自營運之現金流量","Q")
+GetField("來自營運之現金流量","Q")[1]+
GetField("來自營運之現金流量","Q")[2]
+GetField("來自營運之現金流量","Q")[3]
-GetField("資本支出金額","Q")-GetField("資本支出金額","Q")[1]
-GetField("資本支出金額","Q")[2]-GetField("資本支出金額","Q")[3])
>GetField("總市值","D")*100*ratio1/100
then begin
condition5=true ;
s5=m2;
count=count+1;
end else
s5=m1;
if count>1
//符合至少兩個條件
then ret=1;
outputfield(1,count,0,"符合條件數");
outputfield(2,value9,1,"預估EPS");
outputfield(3,s1,0,"高預估殖利率股");
outputfield(4,s2,0,"本業推估本益比低");
outputfield(5,s3,0,"流動性淨資產接近市值");
outputfield(6,s4,0,"以歷年平均股利計算之高殖利率股");
outputfield(7,s5,0,"高自由現金流總市值比");
符合這些腳本的股票,我沒有馬上進場,我常說會漲的股票叫花花轎子人人抬,股價跌到合理估值算是花花轎子,接著我要找到人人抬的現象。
所以我另外設了四個籌碼面的條件
主力買超佔成交量超過2成
外資買超
投信買超
代操買超
各勢力買超張數不必多,但合起來要有明顯的籌碼被收集的現象,最後再加上一個成交量大於1000張的濾網,以上合起來才是我符合我花花轎子人人抬的選股思維。
我拿這個策略去回測,過去五年,停損停利都設為10%,一共出現254個交易機會,勝率達到69%,總報酬率超過大盤的兩倍,唯一缺點就是前年疫情時符合條件的股票交易機會太多,但都停損掉了,所以這個策略也是碰到系統性風險時就要停用的系統。
但除了那一段之外,這個選股策略在指數波動不大時,還是能挑出後來表現很好的股票
這是一個我有拿來每天自動執行的選股策略,也是每次上課時會拿出來跟大家分享的策略,主要是拿這個策略作例子,跟大家討論多算勝少算不勝的基本道理。
這次的大多頭行情讓大家開始關心股票投資,因著股價的上漲,出現了非常多的股神以及他們的神奇招式,類似的現象,我在1989年見過,1994年見過,1997年見過,2000年時也見過,但最後真正能笑到最後的,都是自己可以從這些招式中,真正打造出自己贏的方式的朋友,昨天剛好有券商來訪,問到XQ量化平台的目標客戶是什麼人? 我的回答是,我們主要是為那些願意自己做功課的投資人,提供一個自動化決策的平台,因為過去二十多年的股海生涯,我太知道,只有願意自己摸索,找出自己贏的方程式的朋友,才能一直與時俱進,把投資真的當成本業外的第二份收入。