技術分析用在中小型股是不是比較有用?

By | 2024-01-24

昨天在FB上看到有網友在吵:技術指標到底是對大型股還是小型股比較有用?

我想用一個選股策略來跟大家一起探討這個話題。

 

首先,我先介紹一個XQ系統內建的技術指標函數叫Techscore。

它的腳本如下:

1SetBarMode(2);
2
3// 利用多種指標, 計算多空分數
4//
5variable: count(0);
6
7// 每次計算都要reset
8count = 0;
9
10//------------------ Arron指標 -------------------//
11variable: arron_up(0),arron_down(0),arron_oscillator(0);//arron oscillator
12arron_up=(25-nthhighestbar(1,high,25))/25*100;
13arron_down=(25-nthlowestbar(1,low,25))/25*100;
14arron_oscillator=arron_up-arron_down;
15if arron_up > arron_down and arron_up > 70 and arron_oscillator > 50
16then count=count+1;
17
18//------------------ 隨機漫步指標 ---------------//
19variable: RWIH(0),RWIL(0);
20value1 = standarddev(close,10,1);
21value2 = average(truerange,10);
22if value1 <> 0 and value2 <> 0 then
23begin
24RWIH=(high-low[9])/value2*value1;
25RWIL=(high[9]-low)/value2*value1;
26end;
27
28if RWIH > RWIL
29then count=count+1;
30
31//------------------ 順勢指標 -------------------//
32variable:bp1(0),abp1(0);
33if truerange <> 0 then 
34bp1=(close-close[1])/truerange*100;//順勢指標
35
36abp1=average(bp1,10);
37if abp1 > 0
38then count=count+1;
39
40//---------- CMO錢德動量擺動指標 ----------------//
41variable:SU(0),SD(0),CMO1(0), SUSUM(0), SDSUM(0);
42
43if close >= close[1] then 
44SU=CLOSE-CLOSE[1]+SU[1]
45else
46SU=SU[1];
47
48if close < close[1] then 
49SD=CLOSE[1]-CLOSE+SD[1]
50else
51SD=SD[1];
52
53SUSUM = summation(SU,9);
54SDSUM = summation(sd,9);
55if (SUSUM+SDSUM) <> 0 then 
56cmo1=(SUSUM-SDSUM)/(SUSUM+SDSUM)*100;
57
58if linearregslope(cmo1,5) > 0
59then count=count+1;
60
61//------------------ RSI指標 -------------------//
62variable: rsiShort(0), rsiLong(0);
63rsiShort=rsi(close,5);
64rsiLong=rsi(close,10);
65if rsiShort > rsiLong and rsiShort < 90
66then count=count+1;
67
68//----------------- MACD指標 -------------------//
69variable: Dif_val(0), MACD_val(0), Osc_val(0); 
70MACD(Close, 12, 26, 9, Dif_val, MACD_val, Osc_val); 
71if osc_val > 0
72then count=count+1;
73
74//----------------- MTM指標 -------------------//
75if mtm(10) > 0
76then count=count+1;
77
78//----------------- KD指標 --------------------//
79variable:rsv1(0),k1(0),d1(0);
80stochastic(9,3,3,rsv1,k1,d1);
81if k1 > d1 and k1 < 80
82then count=count+1;
83
84//----------------- DMI指標 -------------------//
85variable:pdi_value(0),ndi_value(0),adx_value(0);
86DirectionMovement(14,pdi_value,ndi_value,adx_value);
87if pdi_value > ndi_value 
88then count=count+1;
89
90//----------------- AR指標 -------------------//
91variable: arValue(0);
92arValue = ar(26);
93if linearregslope(arValue,5) > 0
94then count=count+1;
95
96//----------------- ACC指標 -----------------//
97if acc(10) > 0
98then count=count+1;
99
100//----------------- TRIX指標 ----------------//
101if trix(close,9) > trix(close,15)
102then count=count+1;
103
104//----------------- SAR指標 ----------------//
105if close > SAR(0.02, 0.02, 0.2)
106then count=count+1;
107
108//----------------- 均線指標 ----------------//
109if average(close,5) > average(close,12)
110then count=count+1;
111
112// Return value
113//
114TechScore = count;

 

這個Techscore函數是去計算現在有多少個常用技術指標是屬於多頭,有多少個還在空頭,這裡網羅了大家比較常用的像KD,MACD,DMI等14個指標。

這函數回傳的數字就是這14個指標裡,有多少個符合多頭的定義。

接下來我們就可以來設計技術指標出現買進訊號的定義。

我的定義如下:

1value1=techscore;
2value2=average(value1,10);
3if value2 crosses over 5
4then ret=1;

就是把Techscore作10日的移動平均,然後這數字突破5才算多頭。

接下來就是設濾網:

一、週漲幅要低於10%

二、近一日代操資金買超要佔成交量一成

我當初設計這個選股策略時,用的是低價中型股。

條件如下:

1. 股本大於10億

2. 股本小於60億

3. 收盤價小於60元

下圖是這些條件的回測報告:

這是一個有穩定勝率且MDD控制的很好,長期打敗大盤的選股策略,如果再加上更適切的條件,表現會更好。

但如果我把條件改成股本要大於60億,回測的結果也不差。

但各個數據就是比中型股都略遜一籌。

我個人的觀察是,的確技術分析如果參與者夠多,市場價格由供需雙方一起決定,比較不會被特定力量給扭曲,所以我濾掉了股本10億以下的公司。

但大股本的公司,散戶多,MDD比較難控制。

所以我在用技術指標寫策略時,比較傾向應用在中型股。

一點心得,供參考。

===

● XQ【盤後量化選股模組】($1,000) 完整介紹 ➤https://xqcom.pse.is/5jzws7

● 首次訂閱享7天鑑賞期,首次購買輸入官方優惠碼「@XQ8899」,可折抵模組費用$100!

● 量化交易超值方案!購買就送:【量化積木+台股進階】(總價值$800)