2011-05-27

坊間大絕開盤八法的程式化策略剖析


開盤前,市場上各大主力可能會因為國際股市跟情勢而對當日盤勢有所規劃,
所以有的人認為,剛開盤的前幾根K棒會隱藏當日走勢的重大資訊。
因此剛開盤時的多空力道,可能會決定市場的走勢,
其實這也是經過歷史資料所統計出來的結果,
不過隨著時間消逝,開盤八法還有它的可用性嗎?
我們就來探討一下。



K棒的形式有3種,黑K、紅K跟十字K棒。
如果不考慮跳空狀況,
通常來說黑K表示空方力道較強,
紅K表示多方力道較強,
十字K表示多空力道互抵。
所以我們常用紅K跟黑K來表示多空力道,
方便我們判斷盤勢的多空。

之前偶然在網路上看到有人在討論開盤八法,
想必大家應該都不陌生,
他是利用開盤後前3根K棒的多空來決定今天做多或做空。
3根K棒總共有2×2×2=8種組合,
所以稱作開盤八法。

這邊引用一下網路上開盤八法的總結:
(1). 漲漲漲
當日趨勢:上升走勢,通常會以高點中長紅作收,次營業仍有短線高點可期(如連續長紅後追蹤可能為反轉頂點)。
應對:拉回之低點可作買。多空:多。
(2). 漲漲跌
當日趨勢:震盪趨堅,底部漸墊高,不一定是最高點作收,通常會帶上影線。
應對:短線可介入當日之強勢股,可利用第二波高點作賣。多空:多。
(3). 漲跌跌
當日趨勢:下跌趨勢,有進行拉高出貨可能,次營業日通常尚有低點可期。
應對:可利用下跌第三波低點短線作買但以反彈視之。多空:空。
(4). 跌跌跌
當日趨勢:下跌走勢,通常會以低點中長黑作收,次營業日或有反彈之機會,但形成失敗可能性高,反彈時仍宜賣或減量(如連續長黑後追蹤可能為反轉低點)。
應對:盤中追蹤個股成交量之變化。多空:空。
(5). 跌跌漲
當日趨勢:低檔有支撐,通常會帶長下影線,次營業日通常尚有高點。
應對:第三、五波之低點乃良好短線買點。多空:多。
(6). 跌漲漲
當日趨勢:拉回有支撐買盤,而買盤有追價意願,探底後仍將震盪趨堅,底部墊高會帶下影線作收,次營業日通常尚有高點可期。
應對:拉回第二波低點可作買。多空:多。
(7). 漲跌漲
當日趨勢:通常出現在盤整盤,屬盤堅走勢,原則上觀望。
應對:可設定價位,區間來回操作。多空:╳
(8). 跌漲跌
當日趨勢:通常出現在盤整盤,屬盤跌走勢,原則上觀望。
應對:可設定價位,區間來回操作。多空:╳
基本上開盤八法是用在股票市場,
不過當我看到這個方法的時候,
忽然靈機一動,如果用在期貨市場會怎樣?
為了簡單的來驗證開盤八法,
因此對開盤八法做些簡單的修正,如下:

(1). 漲漲漲-多空:多。
(2). 漲漲跌-多空:多。
(3). 漲跌跌-多空:空。
(4). 跌跌跌-多空:空。
(5). 跌跌漲-多空:多。
(6). 跌漲漲-多空:多。
(7). 漲跌漲-多空:╳。
(8). 跌漲跌-多空:╳。

作程式交易最重要的是要有想法,
然後才可以把想法給程式化,以便於作歷史回測。

回測時間,SHOW TIME!


其實我的想法很簡單,當發生第一種情況,
程式就作多,現在就寫個程式來驗證一下。
簡單的程式碼如下:
input :stoploss(60);
var : buyflag(false),count(0);

if date <> date[1] then begin
buyflag=false;
count=0;
end;

count=count+1;
if count=3 then begin
if c>o and c[1]>o[1] and c[2]>o[2] then buyflag=true;
end;
if 0900 <= Time and Time <= 1300 then begin if MarketPosition = 0 and buyflag=true then begin buy next bar at high+1 stop; end; end; if marketposition >0 then exitlong at entryprice-stoploss stop ;
if time>1339 then begin
exitlong this bar on close;
end;
setexitonclose;
然後我們得到下面的報表(成本設定為1000,回測3000天)

我們可以發現,這個策略在3000天的回測中,
是可以賺錢的,勝率也不算低,
雖然DD大了一點,不過因為這程式過於簡略,
這樣的表現看起來還可以接受。

看到每年的績效,11年來有7年是賺錢的,
看來這個基本想法,似乎是有點效用的。

再來我們看到他的績效走勢圖,
一個好的績效走勢圖,
我們期望它是一條45度的斜直線,
這樣才表示我們的程式是穩定累積財富的。

最後我們來看看每個月的損益圖,

發現有1個月的虧損超過6萬,
似乎不太能接受這麼大的虧損。
而且我們發現最近4個月都在賠錢,
所以這程式還有很多修改空間。
不過因為這只有作多,所以績效不太好是正常的。

其實這篇文章的目的是想要來檢驗一下開盤八法的實用性,
所以我們先拿了第一個八法來作驗證,
藉此我們也發現到,
只是一個單純的想法,
也能這樣寫出一個程式,
而且還可以賺錢。
透過這篇文章,筆者想告訴大家,
作程式交易要有創造力跟想像力,
你才可以不斷的開發出新程式。

沒有留言:

張貼留言