是不是盤好的時候買什麼都一樣?我寫了一個腳本如下,就是當大盤週線在月線之上時,個股不需要其他條件就直接進場。
if average(GetSymbolField("tse.tw","收盤價"),5)> average(GetSymbolField("tse.tw","收盤價"),20) then ret=1;
首先我拿這腳本來跑所有股票
看這回測報告就知道,就算大盤很好,亂槍打鳥還是會輸的很慘。
接下來我用同樣的腳本跑權值股及中型100成份股,底下是回測報告
原本認為權值股及中型100會比較貼近大盤,實際上去跑回測反而輸的更慘
權值股不見得能順著大盤上漲,那麼我就不跑大型股,換作來跑股本10億以下的小型股,一共有719檔,底下是回測報告。
勝率只有36.51%,總報酬雖然很好,但那是總交易次數推出來的,基本上算是隨波逐流。
最後還是用我最常用的有量的中小型股下去跑(五日均量超過1000張,股本小於40億),下面是回測報告。
這個勝率41%,然後淨值上下波動的幅度沒有前幾種大,意思是盤如果不錯,這些股票是能漲的,但如果盤不好,這些股票還是會跌的很慘,可是我們漲的時候停利用10%,跌的時候停損用5%,也就是贏一次就可以抵掉輸了兩次,也因此三年下來才會出現5366%的總報酬率,但3年7706次的總交易次數還是太多,一年平均進場2500多次,一個月平均進場200次,一天進場10次,實在是太多了。
但從上面的實測,我們可以確定一點:” 有量的中小型股,是在大盤上漲時,最有機會展現一段多頭行情股票群體”
因此,我的思考的方向改成,”在大盤表現不錯的時候,透過一些方法,在這個群體中,找出真正轉強的股票”,試著濾掉那些無謂的交易次數。
例如以下的這個腳本
condition1 = GetField("投信持股")[1]<=1000 and getField("投信買賣超")[1]=0; if H>H[1] and TrueAll(condition1[1],60) and GetField("投信買賣超")[1]*C>1000 and average(GetSymbolField("tse.tw","收盤價"),5)> average(GetSymbolField("tse.tw","收盤價"),20) then ret=1;
這個腳本就是在大盤好的時候,去尋找投信才剛剛介入的有量中小型股,
它的回測報告如下
我們會發現,過去三年,才出現42次的觸發交易,淨值也不會像波浪一樣,呈現太大幅度的上下震盪,而是基本穩定往上走。
這樣的方法就是透過一個有效的策略,過濾雜訊,找出真正值得交易的訊號。