找起漲點用的腳本

By | 2019-04-02

被網友問到,很多技術指標的買進訊號,都是追高,想知道有沒有買在起漲點的策略? 我有寫過一個KD低檔黃金交叉且籌碼開始從發散轉向收集的腳本,這個腳本除了在大空頭市場不能拿來用之外,其餘時間表現都還不錯。

這個抄底策略的概念有三個

1.這盤不差

2.籌碼由發散轉向收集,且主力及法人的買超佔成交量的一定比例

3.KD在低檔黃金交叉

把它寫成腳本如下

settotalbar(30);
condition1=false;
value1=GetField("現股當沖張數","D");
value2=GetField("外資買賣超","D");
value3=GetField("投信買賣超","D");
value4=GetField("自營商買賣超","D");
value5=GetField("主力買賣超張數","D");
value6=GetField("融資增減張數","D");
value7=GetField("融券增減張數","D");
value8=volume-value1;//當日淨交易張數
value9=value2+value3+value4+value5-value6+value7;
//籌碼收集張數
if tselsindex(10,6)=1
//大盤的外資在十天內有六天以上買超
then begin
if value8<>0
then 
value10=value9/value8*100
//籌碼收集張數佔當日淨交易張數比重
else
value10=value10[1];
value11=average(value10,10);
if value11 crosses over 10
and value10>20
//籌碼收集張數佔當日淨交易張數比重超過兩成
then condition1=true;

input: Length_D(9, "日KD期間");
 
variable:rsv_d(0),kk_d(0),dd_d(0);
 
stochastic(Length_D, 3, 3, rsv_d, kk_d, dd_d);
 

condition2 = kk_d crosses above dd_d;// 日KD crosses over
 
condition3 = kk_d[1] <= 30; // 日K 低檔


ret = condition1 and condition2 and condition3 ;
end;

用這個腳本去回測所有股票,停損停利都設5%,過去六十天的回測報告如下

2019040201

可以挑到像下面這樣的股票

2019040202

如果回測過去三年,回測報告如下

2019040203

這個策略在多頭市場的表現是不錯的,它的罩門在大空頭市場,因為我設的停損是5%,所以在市道不好的時候,這個策略會一直在停損,所以這個策略只適合在盤還不錯的時候。