外盤量異常突出的買進策略

By | 2016-06-24

昨天有網友希望我寫外盤量相關的交易策略,我這個標準差魔人第一時間想到的就是用bbnad,試寫了一下,效果還可以,敬呈批閱。

我的思考邏輯是

1.拿外盤量這個欄位來計算(因為用getfield語法,這欄位只support日線以上,所以用日線)

2.計算外盤量佔總量的比重

3.因為一天的暴量有可能是一日行情,所以外盤量比重取三日移動平均

4.拿外盤量比重三日平均算bband

5.如果bbandwidth從底部翻揚,代表從平凡要轉向絢爛

6.如果外般量比重三日平均突破bband上限,代表這個轉向是往多頭轉

根據上述的邏輯,我寫了以下的指標,

var:bv(0),bva(0);
if volume<>0 then 
bv=GetField("外盤量")/volume*100;
bva=average(bv,3);

input:length(20);
variable:up1(0),down1(0),mid1(0),bbandwidth(0);
up1 = bollingerband(bva, Length, 1);
down1 = bollingerband(bva, Length, -1 );
mid1 = (up1 + down1) / 2;
bbandwidth = 100 * (up1 - down1) / mid1;
plot1(up1);
plot2(down1);
plot3(bva);
plot4(bbandwidth);

我用郭董最近講的很豪邁的2317鴻海來作例子

062305

各位可以發現,在郭董說話的前一陣子,外盤買進佔成交量的比重就出現我上面說到的多頭訊號

1.bbandwidth 向上翻揚

2.外盤量三日均線突破bband上限

我就把這個指標改寫成交易策略如下:

var:bv(0),bva(0);
if volume<>0 then 
bv=GetField("外盤量")/volume*100;
bva=average(bv,3);

input:length(20);
variable:up1(0),down1(0),mid1(0),bbandwidth(0);
up1 = bollingerband(bva, Length, 1);
down1 = bollingerband(bva, Length, -1 );
mid1 = (up1 + down1) / 2;
bbandwidth = 100 * (up1 - down1) / mid1;
if bbandwidth cross over 20
and bva cross over up1
then ret=1;

拿這策略拿有量的中小型股去回測半年,一年,兩年及三年,回測報告分別如下:

062301 062302 062303 062304

 

當然這個策略還可以有進一步優化的空間,但初步的結果,應該算是一個可以拿來好好運用的方法。