Author Archives: 發財橘子

私房策略分享之獲利穩定公司落難時

之前有跟大家分享過,大跌後的股票,進場抄底勝率較大,我寫了一個60天內跌四成的腳本,拿所有普通股去回測過去五年,停損停利都設兩成,勝率剛好六成,但交易次數多達4176次,平均一年800次,一般人不會這樣交易。

這個腳本如下

input:n(40,"下跌的幅度");
input:period(60,"計算天數");
if close*(1+n/100)<close[period-1]
then ret=1;

這三十年來,我發現上市櫃公司,如果是好公司,就算短期踫到困難,股價大跌,只要給公司時間,往往可以恢復往日榮耀,所以我就寫了個腳本,去尋找那些獲利穩定的公司,找到後再用上個腳本去回測,我發現勝率可以拉到七成七。

我寫的選股腳本如下

value1=GetField("每股稅後淨利(元)","Y");
if trueall(value1>=2,5)//過去五年每年都賺超過兩元
and highest(value1,5)<lowest(value1,5)*1.5//獲利的高低差距在忍受範圍
then ret=1;
outputfield(1,highest(value1,5),1,"最高EPS");
outputfield(2,lowest(value1,5),1,"最低EPS");

用這個腳本最近一期挑出來的股票有100檔,前40檔如附圖

2018052201

我用這個選股法每年選出的股票,去跑上面大跌四成的腳本,結果過去五年一共出現53次進場的機會,其中有41次都可以獲利20%停利出場,只有12次是虧錢出場,虧錢的交易記錄如下

2018052202

我們可以發現,這些失敗的交易主要是出現在2015股票市場大崩盤的時候,另外這些失敗交易的標的,股本大多相對較小,跌起來往往會超跌。

所以我會先用這個方式濾出股票,再仔細檢查這檔股票有沒有止跌的跡像,或是法人介入的情況,然後再進場。

以上是我這幾年用起來比較有心得的策略之一,出的標的不多,但值得每檔好好追蹤。

 

 

 

上漲下跌家數在期指波段交易上的應用

這兩天有網友問我上漲下跌家數如果要拿來做期指選擇權交易時,用幾天期的參數比較合適? 類似這樣的問題,我總會建議大家,回測看看,我常說回測是檢驗策略的唯一道路。 今天我就以上漲下跌家數為策略的核心,舉一個例子來說明我的心路歷程。

一開始我跟大家一樣,會看上漲下跌家數來研判大盤短期方向,後來我就寫了一個指標,這個指標的概念如下

1.先算出每天上漲家數佔所有上漲家數與下跌家數總和的比例

2.把這個比例取五天及20天平均

3.用五天平均去減20天平均

然後把這樣的概念寫成一個畫指標的腳本

input:days1(5,"短天期");
input:days2(20,"長天期");
value1=GetField("上漲家數");
value2=GetField("下跌家數");
value3=value1+value2;
if value3 = 0 then value4 = 0 else value4=value1/value3*100;
value5=average(value4,days1);
value6=average(value4,days2);
value7=value5-value6;
plot1(value7,"上漲下跌家數差指標");

這個腳本畫出來的線與加權指數對照圖如下

2018051701

然後透過觀察這個指標與加權指數的對照圖,我發現當這個指標從零以上轉正時,往往是大盤短線空翻多的時候,所以我就把這指標改成以下的交易策略

input:days1(5,"短天期");
input:days2(20,"長天期");
value1=GetField("上漲家數");
value2=GetField("下跌家數");
value3=value1+value2;
if value3 = 0 then value4 = 0 else value4=value1/value3*100;
value5=average(value4,days1);
value6=average(value4,days2);
value7=value5-value6;

if value7 cross over 0 
then ret=1;

我拿這個腳本去回測過去十二年的加權指數,持有天期只一天,回測報告如下

2018051704

我發現過去十二年裡這樣的概念確實有七成的勝率,但因為持有一天,所以平均報酬率很低,所以就算獲利出場的機率很高,但總報酬率也有限,所以我就把持有天數從一天改成三天,結果平均報酬率變成0.42%,總報酬變成65%,但勝率也降到62.8%。

後來我把持有期間再改成10天,回測報告如下圖

2018051705

勝率又站回七成以上,回測期間改成最近三年,勝率也在七成以上。

用這個例子是要跟大家說明,很多時候,可以實戰的交易策略,往往是經過不斷的改變參數及進出場條件後,慢慢找出來的。

大家不要太拘泥於專家或高手們提出的作法或參數,多測多檢討,祝大家都能找到最適合自己交易風格的策略。

 

 

 

大盤檢查表中的期權相關指標

在研判大盤未來多空方向時,除了股市相關統計數據之外,匯市及期貨市場的數據也饒富意義,其中期指相關的統計數據,有幾個也頗具參考意義,今天就來跟大家分享這類的指標。

其中我個人最愛用的是前十大交易人未平倉淨部位,這個指標可以了解期指市場主要作手的多空態度,在長期觀察這個指標後,我歸納了幾個心得

1.當這數據由正轉負時,在多頭市場是修正結束的訊號,在空頭市場則是下跌走勢的開始。

請參考下圖

042701

當多頭行情持續一陣子之後,獲利了結的賣壓出現,隨著指數的下滑,淨口數會出現短暫的由正轉負,但隨著獲利了結賣壓的被滿足,當指數開展另一波多頭走勢時,這個數字很快的又由負轉正

042702

這種情況的共同特徵是空頭部位會急遽的減少。

但如果空頭部位沒有急遽減少,反而穩定的在增加,特別是指數都跌下來了還繼續在追空,那往往代表的是一個空頭市場的開始或持續

042703

2015年四月下旬開始的空頭走勢,可以看到空頭部位是一路的往上走,就算指數連跌了七天還是一樣在增加,接著淨口數是負的持續了好長一陣子。

042704

如上圖,2014年的修正行情也是出現空單未平倉一路上昇,最後多頭全面棄守

現在這圖長這樣

042705

接下來的觀察重點應該是空單部位會不會持續穩定的往上走,如果是的話,那作多就得更戒慎了

期權指標除了這個之外,另外還有基差,恐慌指數及外資未平倉,也都有其參考意義,可以搭配著看。

大盤檢查表之國際資金流動篇

在大盤檢查表裡,第一個大標籤裡,包括指標利率,全球債市,油價及主要原物料價格,都是用來監控全球資金的流動方向,當初的設計概念主要是follow 美林證券投資鐘的思維,今天就以當前財經情勢為例,跟大家分享為何要時時留意這些數據的變化。

首先,先跟大家簡單說明一下投資鐘的理路。

投資鐘

我們在研究過往全球資金的投資動向時,發現在不同的景氣循環階段,市場資金會湧向不同的投資標的,當景氣剛復甦而通膨壓力不大時,資金主要會流向股票市場,當景氣很好且物價上揚時, 資金會流向原物料及相關的股票,一旦景氣衰退且物價居高不下,出現停滯性通膨時,保留現金是最佳策略,等到景氣衰退且各國央行又開始準備降息時,債券就成了投資首選。

所以在大盤檢查表裡,一方面我們透過觀察油價,廢價及銅價,鋁價等跟物價息息相關的原物料價格,去觀察通貨膨脹的壓力,二方面我們透過觀察債券殖利率的波動,來了解市場對央行貨幣政策的可能走向,當殖利率在上漲的過程裡,代表債券價格是在走空頭市場,這時候資金當然會持續停駐在股票市場,但一旦債券殖利率到達一個高點(例如十年期債券殖利率超過3%),開始吸引原來配置在股票上的資金,開始往債券移動,那麼股票市場就不再是大多頭行情。

以這一波為例,油價從去年的60元以下一路漲到現在的73元,對物價的壓力當然很大

油價

從下面這張圖,我們就可以充份感受到,美國正處於經濟成長且物價上揚的階段

經濟與物價

這個階段市場的投資重心會從股市移向原物料,甚至一旦景氣無以為繼時,債市就會由空翻多,投資者更會棄股投債。

這就是為何市場對美國十年期公債殖利率突破三%這麼敏感的原因。

也是我們為何要在大盤檢查表裡放這些相關數據的原因

那麼接下來在股票市場上該如何應對呢?

全球資金的流動如果會往原物料及債市挪動,代表全球指數權值股的賣壓會變大,這時候反而會是小型股當道的時候,因為我們利率水準還是很低,所以資金會想辦法找標的繼續搞和,過往外資領軍時,小型股乏人問津,現在外資站在賣方了,小型股就會希望趁機獲得大家的青睞,這種情況會一直玩到大家發現景氣真的變差了,什麼公司的獲利都會衰退,那時候大家就都會靜待股價修正結束,或是發現物價壓力不大,景氣持續,那麼正規軍又重新捲土重來。

從這陣子TSE與OTC指數的表現,就可以發現,資金開始往小型股走。

tseotc

以上跟大家說明為何會在大盤檢查表中讓大家留意美國短期利率,美國各天期公債殖利率及各種原物料價格的變化,目的是為了讓我們掌握目前景氣循環是處於什麼位置,我們才好據以調整持股的比例及選股的方向。

從資本支出挑要作功課的標的

關於操作,要贏錢的方法之一就是比別人早知道接下來會發生什麼事,散戶經常在看報發現某家公司業績大好之後再進場,但業績大好是果,資本支出才是因,我們可以試著從資本支出的非常規投入,來判斷一家公司的業績從何時開始,會有比較異於常態的成長。今天就是來跟家討論如何找出那些最近一季資本支出有明顯成長的公司。

先看選股腳本

input:period(20,"計算N季");
input:lm(10,"比均值增加的幅度");
input:cm(100,"單季資本支出金額下限");
value1=GetField("資本支出金額","Q");//單位: 百萬
value2=GetField("資本支出營收比","Q");//單位:%
value3=average(value1,period);
value4=average(value2,period);

if value1>cm//資本支出超過一定金額
and value1>value3*(1+lm/100)
and value2>value4*(1+lm/100)
then ret=1;

這個選股腳本篩選出來的股票,單季資本支出超過一億,且金額及佔營收比例都超過以往二十季的平均值一成以上,符合條件的股票如下

2018032001

最近有不少家公司透過增資等方式籌資來擴大資本支出,上市櫃公司的大老板,特別是那些過去表現不錯的公司,會比過去積極的投入資本,通常是因為看到了什麼我們沒有看到的,這種公司,就值得我們好好做功課,看看老板賭的這一把,能不能梭哈。

大盤抄底策略

有朋友在問上漲下跌角度的問題,讓我不禁想起先前有跟大家分享的角度算法,我用這個方法來抓大盤短線反彈的時機點,感覺有一定的參考價值。

首先,如果要計算指數上漲下跌的角度,寫法如下

input: period(20,"計算區間");
value1=rateofchange(close,period);
//計算區間漲跌幅
value2=arctangent(value1/period*100);
plot1(value2);

畫成圖形就像下面這張圖

2018031902

從圖上發現,當下跌角度超過60度之後,就有加速趕底,反彈在即的味道,所以可以把它改寫成抄底策略如下

input: period(20,"計算區間");
value1=rateofchange(close,period);
//計算區間漲跌幅
value2=arctangent(value1/period*100);
if value2 crosses over -60
then ret=1;

我用這個策略去跑2010 年以來的加權指數,發現勝率已經接近三戰兩勝

2018031901

這個策略用在ETF的操作上,也有不錯的效果。

如何縮小範圍,找出有機會拉出較大漲幅的個股

推荐朋友們看”散戶的50道難題”這本書,這本書把我們一般投資人會面對的困難與挑戰都列了出來,也提出對應的解決之道。

散戶的五十道難題

看完書之後,我想狗尾續貂一下,針對每道難題,提出我的解題方法,今天先跟大家報告第一道難題,也是大家最想解的一題: 如何縮小範圍,找出有機會拉出較大漲幅的個股。

我每年都會找出當年度漲幅最大的前50檔股票,然後研究他們的共同特性。

普遍的共同特色是: 低價,股本不大,產業具獨特地位,月營收創近幾年來高點,最後一項也是書上有寫的,那就是在上漲後,開始有法人著墨。

例如最近很紅的兩檔股票

2018022603 2018022604

在起漲前都符合低股本,低價,過去EPS曾超過三元及營收創新高等四大條件。

基於上述的觀察,我寫了一個選股的腳本,這個腳本一共有三個條件

1.最本小於50億元

2.收盤價小於80 元

3.過去幾年有一年EPS超過三元

前兩個條件在XS上用現成的選股條件可以加進去,第三項我寫了一個腳本如下

value1=GetField("每股稅後淨利(元)","Y");
if trueany(value1>=3,8)
then ret=1;

加上第三個選股條件的原因是,我發現這些股票如果過往曾經有過不錯的獲利能力,比較容易再重返榮耀。

用這三個條件一共挑出了511檔股票。

接下來我設了三個條件,只要有其中一個符合,就視為潛力股候選人,開始針對個股用力作功課,這三個條件分別是

1.近十日法本比前五十名

2.最近一個月營收創近幾年新高

3.最近一個月營收創近幾年同期新高

上面這個選股條件,對應的腳本分別如下

法本比前五十名,以下是法本比的函數

value1=GetField("最新股本");//單位: 億元
value2=GetField("法人買賣超張數","D");//單位:張數
input:period(numericsimple);
value3=summation(value2,period);
if value1<>0
then value4=value3/(value1*10000)*100;
ret=value4;

最近一個月營收創近幾年新高

input:N(37, "期別"); 
value1=GetField("月營收", "M");
value2=GetField("月營收月增率","M");
value3=GetField("月營收年增率","M");
value4=GetFieldDate("月營收","M");
if value1=Highest(value1,N)
//月營收創37期新高
and trueall(value2>0,2)
//月營收月增率近兩個月都>0
and trueall(value3>0,2)
//月營收年增率近兩個月都>0
then ret=1; 
outputfield(1,value4,0,"最新月份");

最近一個月營收創近幾年同期新高

array: numarray[5](0);
variable:x(0);
for x=1 to 5
numarray[x]=GetField("月營收","M")[(x-1)*12];
if trueall(numarray[1]=highestarray(numarray[1],5),2) then
ret=1;

合計的選股條件如下圖

2018022601

 

以上是我每天尋找長線潛力股的自動化流程,我的條件有些寬鬆,所以挑出來的股票較多,各位可以再加上其他篩選條件來過濾。

用這個腳本去回測,持有20天,停損是5%,回測報告如下

2018091905

顯示用這樣的標準挑出來的股票,如果把它變成一個投資組合,確實是可以打敗指數。

 

 

外資買超佔股本比排行

有一種選股的邏輯是,專挑那些近期外資買超佔股本高的股票,最好是股價才剛要發動的那種,今天我試著把這樣的決策流程自動化,讓電腦每天自動幫我們跑出這樣的股票來。

首先,我先把外資近N日買超佔股本比例寫成一個函數: 外本比

我寫的腳本如下

value1=GetField("最新股本");//單位: 億元
value2=GetField("外資買賣超","D");//單位:張數
input:period(numericsimple);
value3=summation(value2,period);
if value1<>0
then value4=value3/(value1*10000)*100;
ret=value4;

再來就用這個腳本來自訂排行榜,先新增一個選股策略,然後在右上方點選”自訂排行條件”這個按鈕,就會跳出如下的對話框

2018022301

選擇外本比當排行的函數,日期則選道瓊大跌之後迄今的天數,因為外資在大崩盤後還用力買,不是公司派的假外資就是外資有看到什麼我們沒有看到的。

這樣篩選出來的股票如下

2018022302

我們可以一檔一檔來檢視

2018022303

在檢視中我們可以發現,最好是挑那些外資還繼續在買的,所以除了外本比排行靠前之外,要再加上近一日外資仍持續買超,所以我就再加上一個條件如下

2018022304

這樣挑出來的股票就只剩下面幾檔2018022305我把這個選股策略取名為”外本比高且外資續買”,把它設為每日自動執行,這樣我每天只要用報價組合選取”每日自動選股清單”這一項,就可以看到最新符合條件的股票了,以下是我設的PAGE

2018022306

這樣就可以每天把符合外本比高且外資續買條件的股票拿來一一檢視一遍。

 

 

 

尋找可能由虧轉盈的公司

由虧轉盈的公司,特別是股價還沒有預先反映的,往往是比較能逆市上漲的。我試著用最近的月營收來找出那些本業可能轉虧為盈的公司。

我寫的腳本如下

// 計算最新一期月營收的日期(mm=月份)
//
variable: mm(0);
mm = datevalue(getfielddate("月營收","M"),"M");

// 預估最新一季的季營收(單位=億)
//
if mm=1 or mm=4 or mm=7 or mm=10
then value1=GetField("月營收","M") * 3;
if mm=2 or mm=5 or mm=8 or mm=11
then value1=GetField("月營收","M") * 2 + GetField("月營收","M")[1];
if mm=3 or mm=6 or mm=9 or mm=12
then value1=GetField("月營收","M")+GetField("月營收","M")[1]+GetField("月營收","M")[2];

// 預估獲利(單位=百萬) = 季營收 * 毛利率 - 營業費用
//
value2 = value1 * GetField("營業毛利率","Q") - GetField("營業費用","Q");

if GetField("營業利益","Q")<0
and value2>0 then ret=1;

outputfield(1,value2 / 100,2,"預估單季本業獲利(億)");
outputfield(2,GetField("營業利益","Q"),0,"最近一季營業利益");

這個腳本的概念是,用月營收去估算季營收,再根據估算出來的季營收,去乘上一季的毛利率作為營業毛利,再減去上一季營業費用,作為預估的營業淨利。

然後找出上一季營業利益是負的,但用月營收估計出來的這一季營業利益會由負轉正的股票。

這裡要跟大家說明的有幾點

1.營收成長通常毛利率有機會成長,假設毛利率沒有成長是比較保守的估算方法。

2.這裡估算出來的是營業利益,但業外的部份很難估。

3.如果近期一直在虧錢股價通常會很慘,這時轉虧為盈的作用力才會大,如果之前市場都已預先反映了,就算挑出來的股票也沒啥參考作用

4.會算出轉虧為盈,一定是月營收有明顯好轉,回頭再去研究月營收好轉背是否為長期因素,是選股後要再進一步進行的功課。

5.月營收是每月十日公佈,所以這個腳本每月十一日跑一次,再來研究選出來的標的。

轉虧為盈的低價股一直是每年漲幅排行榜的常客,也是比較不會受大盤影響的股票,祝福大家都找到最強的轉機股。

從千張大戶數增減看大戶有否落跑!

美股大跌,大家開始問說多頭是不是要結束了? 昨天正好踫到一個前輩,他說他第一天去某券商上班時,董事會成員熱烈歡迎他,稱讚他知道什麼時候是多頭,什麼時候是空頭,未來可以成為他們該券商的多空明燈。 他說他跟董事們說,他真的不知道什麼時候會變多頭? 什麼時候是空頭? 但他知道在多頭時該做什麼? 在空頭時該做什麼?

前輩的話很有哲理,我回家後立馬整理一下千張大戶的變動方向,我的邏輯是,大盤乃至美股多頭方向非我能掌握,但個股大戶是加碼還是落跑這是我能留意的。

先前寫過兩個腳本來每週一挑出那些千張大戶變少及變多的股票

 

變少的腳本

value1=GetField("大戶持股人數","W",param:=1000);
value2=GetField("散戶持股人數","W");
if value1<value1[1]
and value2>value2[1]
then ret=1;
outputfield(1,value1,0,"本週大戶人數");
outputfield(2,value1[1],0,"上週大戶人數");
outputfield(3,value1-value1[1],0,"大戶減少數");
outputfield(4,value2,0,"本週散戶人數");
outputfield(5,value2[1],0,"上週散戶人數");

跑出來的名單

2018020502

 

變多的腳本

value1=GetField("大戶持股人數","W",param:=1000);
value2=GetField("散戶持股人數","W");
if value1>value1[1]
and value2<value2[1]
then ret=1;
outputfield(1,value1,0,"本週大戶人數");
outputfield(2,value1[1],0,"上週大戶人數");
outputfield(3,value1-value1[1],0,"大戶增加數");
outputfield(4,value2,0,"本週散戶人數");
outputfield(5,value2[1],0,"上週散戶人數");

跑出來的名單

2018020501

從大戶在個股的活動情況,來判斷及決定多頭時做什麼? 空頭時做什麼?