試著用程式來描述型態之一 見底強勢回昇

By | 2017-11-14

老市場看圖看久了,累積了不少江湖智慧,給他一張圖,他能說出很多故事,但每天一檔一檔股票地找有故事的圖,挺累人,接下來這系列,我試著把一些老市場教過我的看圖技巧,轉換成交易語法,讓電腦來幫我們找出符合描述條件的圖。

首先,先跟大家介紹的是下面的這個抄底型態

 

見底型態一

這張圖歸納起來,描述的概念有以下幾點

1.股價一再破底,低點愈來愈低。

2.跌到最低點後出現急拉,且高點突破上一波低點,並且漲幅超過前一波反彈高點的一半

3.拉回跌破前一波低點後立即以長紅棒再次突破前一波低點,此時是進場訊號

4.股價如果持續上漲且突破前一波高點,即為確認訊號

根據上述的條件,我寫的腳本如下

input:period(25);
var:h1(0),h2(0),low1(0),low2(0),low3(0),hb1(0),hb2(0),lowb1(0)
,lowb2(0),lowb3(0);
low1=lowest(close,period);//最低點
h1=highest(close,period);//最高點
lowb1=lowestbar(close,period);//最低點所在的bar
hb1=highestbar(close,period);//最高點所在的bar
low2=swinglow(close,period,3,3,2);//第二低點
lowb2=swinglowbar(close,period,3,3,2);//第二低點所在的bar
low3=swinglow(close,period,3,3,3);//第三低點
lowb3=swinglowbar(close,period,3,3,3);//第三低點所在的bar
h2=swinghigh(close,period,3,3,2);//第二高點
hb2=swinghighbar(close,period,3,3,2);//第二高點所在的位置
value1=h1-low1;//計算最後一波下跌的長度
value2=h2-low1;//計算第一波回昇的長度
if lowb2=nthmaxlist(1,hb1,hb2,lowb1,lowb2,lowb3)
and hb1=nthmaxlist(2,hb1,hb2,lowb1,lowb2,lowb3)
and lowb1=nthmaxlist(3,hb1,hb2,lowb1,lowb2,lowb3)
and hb2=nthmaxlist(4,hb1,hb2,lowb1,lowb2,lowb3)
//設定各高低點的相對位置
and close[60]>value1*1.2
//波段大跌2成以上
and value2>value1*0.5
//回昇第一波要大於左頂到最低點的一半
and h2>low2
//回昇第一波的高點要大於左底
and close cross over low2
then ret=1;

寫出來的腳本,可以出像下面這樣的股票

樣圖

拿這個腳本去回測過去七年所有的股票,出場點設為進場後20天,結果一共出現了80次的交易訊號,但其中不到四成會賺錢,顯示這不是常出訊號的型態,也不是一個放諸四海皆準的策略,但如果拿高股利或高ROE的股票去回測,七年倒是出現七次交易訊號,其中有五次可以獲利出場。

這種抄底型的策略還是比較合適用在績優股,但只有七個樣本,顯然我的條件設的太嚴了一點,大家或許用這個腳本再去調整成對您更有意義的腳本