基金投資等於是投資指數,指數由於是由多個商品所組合,其趨勢的轉變,比較如航空母艦轉向,需要較大的迴轉半徑,且趨勢一旦確立,往往可以順勢而行一段時日,所以我們就可以把統計上線性迴歸的概念應用在基金投資上,找出線性迴歸出現轉向且轉向的角度夠大的基金。
基於這樣的思維,所撰寫的腳本如下
//持有四十天後出場 input:Length(20); //"計算期間" //setoutputname1("趨勢訊號"); LinearReg(close, Length, 0, value1, value2, value3, value4); //做收盤價20天線性回歸 {value1:斜率,value4:預期值} value5=rsquare(close,value4,20);//算收盤價與線性回歸值的R平方 condition1=false; condition2=false; if value1>0 and value1[1]<0 then condition1=true; if value5>0.2 then condition2=true; if condition1 and condition2 then ret=1;
在腳本中,找出線性迴歸斜率由負轉正且R平方高過0.2的商品,R平方代表是價格跟線性迴歸線的貼合程度,R平方超過0.2代表價格的波動基本上是屬於線性的。
這個腳本可以挑出如下圖這樣的基金
用這個腳本去回測,由於這是屬於波段的操作策略,所以出場時間設在40 天以後,回測報告如下
在多頭市場,這個策略有著蠻高的勝率,但由於出現這個訊號時通常代表指數已由空翻多一陣子,所以比較是屬於確認多頭走勢的落後指標。