Author Archives: 發財橘子

雲端策略中心精進版之32~低PB股的逆襲

“低價股如果股價創了近一個月新高且離底部不遠,往往有短線作多的空間”,這段話是以操作低價股創造了不錯蹟效的一位法人跟我說過的話。

他的邏輯是,股價低於15元的股票,基本上就是股票市場上的魯蛇,這種股票通常不會有啥表現,但如果股價可以站上一個月來新高點且距離一個月來的低點不遠,技術面通常線型不會太差,基本面則可能有些不一樣,如果跟長期的高點股價還有點距離的話,那麼短線作多的勝率應該就不低。

要符合上述條件的股票,應該要有以下的特徵

1.股價低於15元。

2.今日最高價創20日以來新高

3.今日收盤價距離20日以來的低點不到7%

4.股價距離40日以來的高點還至少有一成以上的空間

我根據上述的特徵寫的腳本如下:

if GetSymbolField("tse.tw","收盤價")
 > average(GetSymbolField("tse.tw","收盤價"),10)
then begin
 
 if close<15
 and H = highest(H,20)
 and close<lowest(low,20)*1.07
 and highest(h,40)>close*1.1
 then 
 ret=1;
 
end;

回測設定  我是用所有的股票下去跑三年,停損點設5%,停利點設7%

091318

回測報告如下:

2016102701

從回測報告來看,這些低PB的低價股,一旦站上一個月來的高點,還真的是一個短線可以作多的訊號。

然後我發現,這個策略不旦可以作短,其實作波段也很好用,以下是我把出場點改成進場後二十天

2016102702

 

雖然勝率略降了一點,但總報酬率高出許多,且連續虧損也比短線操作要小,顯示這個策略會抓到那些長線回升的低價股。

這個策略的語法很簡單,但勝率卻出奇的高,算是市場經驗轉化成交易策略的一個成功的例子。

 

 

雲端策略中心精進版之30~跌破糾結均線

糾結均線代表的是短中長期持股者的成本都接近一致,一旦突破,賣壓很輕,同樣的道理,一旦跌破,代表短中長期的持股者大家都同時被套牢,這種情況會造成,股價一旦反彈,馬上就會面臨極大的賣壓,所以跌破糾結均線,是可信度極高的波段空頭策略,特別是對那些長期不大賺錢的大型股,更是如此。

跌破糾結均線的腳本,跟突破糾結均線的腳本差不多

if GetSymbolField("tse.tw","收盤價")
<average(GetSymbolField("tse.tw","收盤價"),10)
then begin

input: shortlength(5); setinputname(1,"短期均線期數");
input: midlength(10); setinputname(2,"中期均線期數");
input: Longlength(20); setinputname(3,"長期均線期數");
input: Percent(5); setinputname(4,"均線糾結區間%");
input: XLen(20); setinputname(5,"均線糾結期數");

input: Volpercent(25); setinputname(6,"放量幅度%");//帶量突破的量是超過最長期的均量多少%
variable: shortaverage(0);
variable: midaverage(0);
variable: Longaverage(0);
variable: AvgHLp(0),AvgH(0),AvgL(0);

shortaverage = average(close,shortlength);
midaverage = average(close,midlength);
Longaverage = average(close,Longlength);
 
 
AvgH = maxlist(shortaverage,midaverage,Longaverage);
AvgL = minlist(shortaverage,midaverage,Longaverage);

if AvgL > 0 then AvgHLp = 100*AvgH/AvgL -100;

condition1 = trueAll(AvgHLp < Percent,XLen);
condition2 = V > average(V[1],XLen)*(1+Volpercent/100) ;
condition3 = average(Volume[1], 5) >= 2000;
condition4 = C < AvgL *(0.98) and L < lowest(L[1],XLen);

ret = condition1 and condition2 and condition3 and condition4;
end;

不過在回測設定時,我用的是不大賺錢的大型股,出場是進場後二十天後

091314

回測報告如下

091313

我們可以看得出來,這是一個勝率超過六成的波段作空策略

 

 

 

雲端策略中心精進版之29~突破糾結均線

突破糾結均線一般被視為一個重要的買進訊號,因為這代表不管短中長期的持股者,都處於剛剛賺錢的狀態,所以解套的賣壓很輕,獲利了結的賣壓也不大,只要買盤持續,後市向上的機率比較高,為了印證這樣的市場印象,我寫了一個對應的腳本,但不是所有的股票,突破糾結均線後作多都是一個績效良好的交易策略,實證上發現,唯有高ROE的股票,如果出現糾結均線突破時,才有有較高的勝率。

對於糾結均線突破,我寫的腳本如下

if GetSymbolField("tse.tw","收盤價")
>average(GetSymbolField("tse.tw","收盤價"),10)
then begin


input: shortlength(5); setinputname(1,"短期均線期數");
input: midlength(10); setinputname(2,"中期均線期數");
input: Longlength(20); setinputname(3,"長期均線期數");
input: Percent(5); setinputname(4,"均線糾結區間%");
input: XLen(10); setinputname(5,"均線糾結期數");

input: Volpercent(25); setinputname(6,"放量幅度%");//帶量突破的量是超過最長期的均量多少%
variable: shortaverage(0);
variable: midaverage(0);
variable: Longaverage(0);
variable: AvgHLp(0),AvgH(0),AvgL(0);

shortaverage = average(close,shortlength);
midaverage = average(close,midlength);
Longaverage = average(close,Longlength);
 
AvgH = maxlist(shortaverage,midaverage,Longaverage);
AvgL = minlist(shortaverage,midaverage,Longaverage);

if AvgL > 0 then AvgHLp = 100*AvgH/AvgL -100;

condition1 = trueAll(AvgHLp < Percent,XLen);
condition2 = V > average(V[1],XLen)*(1+Volpercent/100) ;
condition3 = C > AvgH *(1.02) and H > highest(H[1],XLen);
condition4 = average(volume[1], 5) >= 1000; 

ret = condition1 and condition2 and condition3 and condition4;

end;


回測設定  我用的是高ROE的股票,停損停利都設10%

102402

回測報告如下

102401

 

勝率很高,虧錢的時段都是在大空頭市場中,所以如果在多頭市場高ROE的股票出現這種情況, 還真的是一個不錯的買進訊號。

 

我試著用所有的股票去跑,用有量的中小型股去跑,勝率都不如高ROE的股票高,顯示這個交易策略對績優股比較有用。

 

 

雲端策略中心精進版之28~平台整理後跌破

這陣子介紹了不少從繼續型態發展出來的策略,當中的多頭策略,可以協助我們找到那些在長期多頭走勢中休息後準備再出發的股票,當中的空頭策略,則常能讓我們對手中持股要留要砍,下定決心。

在這諸多繼續型態當中,平台整理是一個很常發生的型態,平台整理之後,可能往上,但也可能往下,在一段跌勢之後,一旦跌破整理區,股價繼績下跌的機率很高。

跟平盤整理後突破一樣,平盤整理後跌破有四個要件

1.整理型態前30天跌幅超過1成。

2.整理期間最高點與最低點之間差不到7%

3.整理期間最高點與第四高點間差不到2%

4.整理期間最低點與第四低點間差不到2%

把這四點畫成圖形,就像下面這張圖

102403

我寫的腳本如下

if GetSymbolField("tse.tw","收盤價")
<average(GetSymbolField("tse.tw","收盤價"),10)
then begin

input:Period(15, "平台區間");
input:ratio(7, "整理幅度(%)");
input:ratio1(2,"各高點(低點)間的差異幅度");
var:h1(0),h2(0),L1(0),L2(0);
h1=nthhighest(1,high[1],period);
h2=nthhighest(4,high[1],period);
l1=nthlowest(1,low[1],period);
l2=nthlowest(4,low[1],period);

if (h1-l1)/l1<=ratio/100
and (h1-h2)/h2<=ratio1/100
and (l2-l1)/l1<=ratio1/100
and close cross below l1
and close[period+30]>l1*1.1
then ret=1;
end;

回測設定我用的是不大賺錢的中大型股,出場設定是十天。

102402

回測報告如下

102301

回測報告顯示,在172次的交易機會裡,有111次獲利出場,61次虧損,勝率蠻高的。

而它的連續虧損情況,相較於連續獲利情況,小了很多,顯示這是一個賺的時候大賺,賠的時候小賠的策略

 

 

雲端策略中心精進版之27~平台整理後突破

先前介紹了多次到頂而破等等從繼續型態所衍生出來的交易策略,那如果沒有出現一底高過一底,也沒有出現高點連續很接近的情況,而是屬於不規則的橫向整理,該怎麼面對呢?

我試著寫了一個腳本來模擬各種情況,我發現當不規則的整理型態,如果符合以下的特徵,會是不錯的短多策略

1.整理型態前30天漲幅超過1成。

2.整理期間最高點與最低點之間差不到7%

3.整理期間最高點與第四高點間差不到2%

4.整理期間最低點與第四低點間差不到2%

如果符合以上四點,一旦股價突破區間最高點,繼續向上的機率頗高。

我把這樣的整理型態畫成一張圖如下

102103

對應的腳本如下

 if GetSymbolField("tse.tw","收盤價")
>average(GetSymbolField("tse.tw","收盤價"),10)
then begin
 
input:Period(15, "平台區間");
input:ratio(7, "整理幅度(%)");
input:ratio1(2,"各高點(低點)間的差異幅度");
var:h1(0),h2(0),L1(0),L2(0);
h1=nthhighest(1,high[1],period);
h2=nthhighest(4,high[1],period);
l1=nthlowest(1,low[1],period);
l2=nthlowest(4,low[1],period);

if (h1-l1)/l1<=ratio/100
and (h1-h2)/h2<=ratio1/100
and (l2-l1)/l1<=ratio1/100
and close cross over h1
and close[period+30]*1.1<h1
and volume> average(volume,period)
then ret=1;
end;

回測設定我用的是有量的中小型股,停損停利我都設成10%

102102

以下是回測報告

102101

 

從回測報告上來看,過去三年一共有198個交易的機會,其中113個可以獲利出場,勝率是57%,從淨值的變化圖來看,這個策略在空頭市場比較容易出現連續虧損的情況,比較適合大多頭市場。

 

雲端策略中心精進版之26~多次到底跌破

若是多次到頂而破是一個不錯的短多策略,那麼多次到底跌破理論上應該也會是一個不錯的短空交易策略,就像下圖一樣,這種型態代表的是一個強力支撐區的被跌破,我從過去三年的數據中發現,如果在頂部區探了四次底之後,第五次正式跌破後短空,勝率會超過六成。

2016101801

這個短空策 略的腳本寫法跟多次到頂而破很像

input:HitTimes(4); setinputname(1,"設定觸底次數");
input:RangeRatio(1); setinputname(2,"設定底部區範圍寬度%");
input:Length(20); setinputname(3,"計算期數");

 if GetSymbolField("tse.tw","收盤價")
<average(GetSymbolField("tse.tw","收盤價"),10)
then begin
variable: theLow(0); 

//找到過去期間的最低點
theLow = lowest(low[1],Length); 

variable: LowUpperBound(0); 

// 設為瓶頸區間上界
LowUpperBound = theLow *(100+RangeRatio)/100; 

variable: TouchRangeTimes(0);
//期間中進入瓶頸區間的低點次數,每根K棒要歸0
TouchRangeTimes = CountIF(Low[1] < LowUpperBound, Length);
 
Condition1 = TouchRangeTimes >= HitTimes;
Condition2 = close < theLow;
Condition3 = Average(Volume, 5) >= 1000;

Ret = Condition1 And Condition2 And Condition3;
end;
 

因為是作空,所以我執行的股票是有不大賺錢的大型股,停損停利都是設5%

2016101802

回測報告如下:

2016101803

 

過去三年有818次的交易機會,其中513次是賺錢出場,從多次到頂而突破跟多次到頂而跌破兩個交易策略來看,這種多頭空頭最後防線被棄守後,獲勝方乘勝追擊的機率是很高的。

雲端策略中心精進版之25~多次到頂而破

多次到頂而破,也是繼續型態的一種,它的概念在於股價突破了一個多次上攻都被打回來的鐵板區(請見下方附圖),我們可以假設原本這裡是多頭多次進攻都無功而返的空頭重要防線,正常的情況下,一鼓作氣,再而衰,三而竭,如果反而能夠一舉攻破,代表有新生的買盤介入,或是代表原本的賣壓縮手或被消化殆盡。 這樣的情況如果出現,往往是一趟波段多頭行情的開始。

2016101501

 

 

以下的腳本,就是在描述上圖的情況

input:HitTimes(4,"設定觸頂次數");
input:RangeRatio(1,"設定頭部區範圍寬度%");
input:Length(40,"計算期數");

if GetSymbolField("tse.tw","收盤價")
>average(GetSymbolField("tse.tw","收盤價"),10)
then begin
variable: theHigh(0); 

//找到過去其間的最高點
theHigh = Highest(High[1],Length); 
value1=highestbar(high[1],length);

variable: HighLowerBound(0); 

// 設為瓶頸區間上界
HighLowerBound = theHigh *(100-RangeRatio)/100; 

variable: TouchRangeTimes(0); 

//回算在此區間中 進去瓶頸區的次數 
TouchRangeTimes = CountIF(High[1] > HighLowerBound, Length-value1);
 
Condition1 = TouchRangeTimes >= HitTimes;
Condition2 = close > theHigh;
condition3=close[length]*1.1<thehigh;


Ret = Condition1 and Condition2 and condition3 ;
end;

回測設定我用的是有量的中小型股,停利停損都設為5%

2016101602

回測報告如下:

2016101603

 

從回測報告上可以看得出,過去三年,這樣的交易機會高達2001次,勝率高達六成以上,顯示這是一個很值得作參考的交易策略

 

雲端策略中心精進版之24~突破繼續型態

前面說過,我很鍾愛突破繼續型態的買進策略,但由於繼續型態是一段上漲後的整理,其整理的型態各自不同,如果要一個一個的寫對應策略,跑起來還蠻浪費資源的,我發現,在各種繼續型態中,如果每次回檔的底部愈墊愈高,反彈的高點之間變化不大時,一旦突破繼續型態時,作多的勝率頗高。

各位請看下圖

%e7%b9%bc%e7%ba%8c%e5%9e%8b%e6%85%8b

這種一底高過一底的繼續型態,如果高點連線的角度不大,就很值得期待,對應的腳本如下

   //有量的中小型股,停損停利俱為7%

if GetSymbolField("tse.tw","收盤價","D")
>average(GetSymbolField("tse.tw","收盤價","D"),10)
then begin
//大盤多頭格局

variable:Kprice(0),BP(C);
input: Length(5);
variable: HLine(0); 
HLine = linearregangle(H[1]/BP,5);
//昨日高價與今日收盤價比值之五日線性回歸
variable: LLine(0); 
LLine = linearregangle(L[1]/BP,5);
//昨日低價與今日收盤價比值之五日線性回歸


if absvalue(Hline) < 0.1 
//上切線角度小
and LLine > 0.2
//下切線是往上昇
 then Kprice = highest(h,Length);
 //關鍵價=區間最高價

if c crosses above Kprice
// 收盤價突破關鍵價
 then ret=1;
 end;

這種屬於短線的交易策略,回測設定我用的是有量的中小型股,停損停利都設為7%

2016101402

回測報告如下:

2016101401

這是一個在多頭市場時勝率超過六成的交易策略,再一次印證繼續型態是短線交易者的好朋友

 

雲端策略中心精進版之23~週轉率高點買進

 

今天要介紹的策略,我稱之為廟會交易法,我把上市櫃市場中的好公司視為散佈在台灣鄉野間一家又一家的廟,平常有著晨昏定省的香火,但到了廟會要開始前,香火就會異常的鼎盛,看到這種情況,就知道熱鬧的景象即將來到,這就像營運表現一向穩定的上市櫃公司,當開始出現較大的每筆單量時,就代表平常沒有出現的香客,已經開始出現,一場熱鬧的廟會即將開始。

以下是我的廟會交易法腳本

// 回測三年
// 選股法:存股標的
// 同時進場次數 1,最大持有時間 10期, 交易費用:0.2%, 作多。
//
if getsymbolfield("tse.tw","收盤價")
>average(getsymbolfield("tse.tw","收盤價"),10)
//大盤多頭
then begin

value1=GetField("成交金額");
value2=GetField("總成交次數","D");
if value2>0
then value3=value1/value2;
//成交金額/總成交次數

if value3=highest(value3,200)
//創兩百天來最高點
and close>close[1]*1.025
//較前一日中長紅
and close[2]<close[12]*1.05
//先前漲幅不大
and volume>2000
//成交量超過2000張
then ret=1;
end;

回測設定時,我用存股標的這樣的選股條件來篩選好股票(選股條件在最下方),設為十天後出場

091209

回測報告如下

2016101301

 

從回測報告上我們發現,81檔符合選股條件的好股票,在過去三年一共出現67次的交易訊號,其中有44次是賺錢的,勝率高達65%,最大連續虧損是26%,顯示好股票一旦出現這種每筆平均交易金額創200日新高的現象時,的確有很大的機率,是一個波段作多的好機會。

最後我附上我己設的”定存股”選股條件

091210

要符合這個交易策略,前題是這些廟在廟會來的時候,要有很多人願意來上香,所以廟裡的菩薩要有一定的號召力,上述的選股條件,就是在篩選那些有一定號召力的公司。

 

 

雲端策略中心精進版之22~平台三角形收斂突破

繼績型態一直是我覺得很值得深入探討的型態,因為繼續型態一旦突破,會循著原來的方向繼續前進,多空方向很突易抓,今天要跟大家介紹的是,繼續型態中的三角形突破

我用以下的圖形來跟大家說明這個交易策略在尋找的標的,需要符合什麼樣的標準

%e5%b9%b3%e5%8f%b0%e4%b8%89%e8%a7%92%e5%9e%8b

為了找到像圖中所顯示的這種型態,我寫的腳本如下:

input:i(40);

if GetSymbolField("tse.tw","收盤價")
 > average(GetSymbolField("tse.tw","收盤價"),10)
then begin
//大盤屬於多頭格局

value1=lowestbar(low[1],i);//區間最低價那根bar
value2=lowest(low[1],i);//區間最低價
value3=highestbar(high[1],i);//區間最高價那個bar
value4=highest(high[1],i);//區間最高價
value6=nthhighest(1,high[1],value3-1);
//從最高價之後的第一高價
value7=nthhighest(2,high[1],value3-1);
//從最高價之後的第二高價
value8=nthhighest(3,high[1],value3-1);
//從最高價之後的第三高價

value12=nthhighestbar(1,high[1],value3-1);
value13=nthhighestbar(2,high[1],value3-1);
value14=nthhighestbar(3,high[1],value3-1);

if value1-value3 >= 10//區間上漲超過10天
and value4 >= value2*1.2//漲幅超過兩成
and maxlist(value6,value7,value8) <= minlist(value6,value7,value8) * 1.02
//整理時三個高點相差不會超過2%
and close crosses over maxlist(value6,value7,value8)
and absvalue(value12-value13) > 1
and absvalue(value13-value14) > 1
and volume>=average(volume,10) * 1.2

 then
 ret=1;
 
end;

回測設定上我用的是有量的中小型股,這些股票需要符合兩個條件

1.近一百日成交量平均大於一千張

2.股本小於四十億元。

因為是繼續型態的突破,理論上前一波都漲兩成了,這一波應該可以漲一成以上,所以我停利設為10%,停損設為8%。

091218

下圖是回測報告

091217

從回測報告來看,這種類型的繼續型態突破,勝率不錯,三年的總交易次數有180多個,平均一年60次,交易的機會不會太少,但也不至於多到疲於奔命。

這種交易的另一個好處是停損很好設,只要跌回突破點以下就可以砍了。