三線滙聚炒股跑贏大市

三線滙聚炒股跑贏大市

【數碼金魚缸】上次談到黃金交叉及死亡交叉作為投資指引用處不大,收到不少回響,在此先行謝過各位。有友人復提到12月初時,恒指曾出現三線滙聚,即20天線、50天線與100天平均線同時交滙,這個更為罕見的現象,會否對後市更有指示性,不妨又以Python程式fact check一下。


三線滙聚,聽上來有點像天文現象「九星連珠」的味道。翻查坊間分析,多指是大市正處於待變格局,醞釀走勢突破。出現三線滙聚時,通常意味現行趨勢結束,若當時趨勢是向下,則可能是低撈時機,若趨勢是向上,則是沽售時機。

隨着三線背離,則是趨勢持續訊號,若是升市中則是吸納時機,若是跌市則是沽貨訊號。

遵從這條思路,我將上次的程式修改,加入3條平均線的互動,當中定義滙聚的意思,是三條平均線均在100點的範圍內,我發現坊間未有統一的定義,但很少會認為,應嚴格至三條線同一日完全交疊,三個移動平均數巧合到完全一樣,好像過去20年的數據都沒有出現過。

平均線背離趨勢加強訊號

按此定義,則過去20年恒指出現過三線滙聚的交易日有71個(圖一),距離最近是三條線相差16點,為2005年6月時,應該算相當近了。實際情況是平均線有時背離的情況相當誇張,如金融海嘯時,三線距離最多可以超逾5,000點(圖二)。

三線滙聚出現時,甚少是曇花一現,多數會連綿數天,甚至近10天,因此,若只計出現的次數,確實不是常見現象,往年一年內最多一至兩次,有時數年不見一次,近年尤其變得稀少,在12月初之前,符合這定義的竟然要數到7年前的2012年!

那如何去訂立一個三線滙聚的投資策略呢?若果認為這是一個趨勢走到待變格局的時機,則滙聚時若是上升趨勢的,則把滙聚視作沽貨訊號,若滙聚結束、背離出現時,若大市是向上/下的,則視之為入市/出貨訊號。

本文嘗試測試的是後者,即把滙聚結束視之為後市走勢動力加強的訊號。具體投資策略是當三條平均線相距少於100點時,而恒指當日收市企於最短期平均線(此例為20天線)之上,則翌日以收市價買入期指/恒指認購證/正向ETF,然後觀察往後一段時間內的回報(50個交易日),反之若恒指收低於20天線,則沽期指/買入認沽輪/買入反向ETF。

同時,為免程式作出過多決定,我設下30日的冷靜期窗口,即每次就滙聚作出決策後,無論投資期是多久,30天內即使再有滙聚,也不會再有新動作。

以50天投資期(約兩個月)為例,這策略共有13次投資時機,其中2次跑贏大市,3次跑輸,8次與大市同步,合共帶來19厘回報,跑輸大市的29厘回報,勞師動眾這麼多年,反而輸給長揸650天的回報,這個策略似乎失效?且慢。

可否透過修改調整投資期來改善回報,我於是把5至100天投資期輸入電腦,發現一個有趣現象,就是此投資策略只有在持有期為65至80個交易日才能跑贏大市。

我又嘗試將滙聚的定義收窄至50點,發現策略有明顯改善。持有期在15天以上的,大部份情況下都可以跑贏大市。以80天計,跑贏幅度達38個百分點,而且因為滙聚的定義收窄了,出入次數減少至8次,有一定值博率,其關鍵戰役是2011年5月的三線滙聚,程式作出空倉的決定,其後80天港股下跌18%,一來一回已經三成多(圖三)。

持有80日跑贏幅度高

綜觀而言,若持有期在一個月至半年,滙聚窗口在50點,這個策略較大機會跑贏大市,但三線滙聚不常出現,只能偶一為之,難言是長勝策略。

改用較短期平均線的平均線組合會否製造更多機會呢?我改用10、20及50天線組合,滙聚定義繼續用50點,這個組合的平均線滙聚出現次數明顯較多,過去幾年幾乎每年出現一次,最近一次為10月17日。若以80天投資期而言,投資機會由8次上升至12次,跑贏大市40厘,回報進一步改善,即使是短線策略都已追貼大市。

這策略僅適用於大市嗎?對正股會否有用?我把程式套用到滙控(005),以20、50、100天線的組合,滙聚窗口改為0.2元(約相當於股價的0.3%),結果是不忍卒睹,幾乎全線跑輸正股。觀察三線滙聚出現的時間,原來多集中在2014年及2016年,2000年至2013間只出現兩次,其分佈極度不平均可能解釋了策略失效的原因。

採短期平均線回報佳

若改為10、20、50天線的組合,回報竟180度改觀,滙聚的分佈變得更平均,不再側在某幾年,而80天持有期策略,更大幅跑贏正股65個百分點,實際上幾乎所有持有期均跑贏正股(圖四)。最近一次三線滙聚為7月中,為沽售訊號,其後80天滙控跌9%,故此若沽空或買認沽證,便反過來賺取9%回報。

要贏盡滙聚效應,選取平均線組合至關重要,而這可透過觀察滙聚出現的分佈來判斷,若太罕有或只集中某幾年,會太受該些日子的指數/正股影響,不是理想策略。同時,亦可透過調整滙聚窗口大小來改變滙聚的頻率。

程式現時是以首天滙聚時,指數/股價是高於或低於平均線來決定長短策略,但有時滙聚一連數天,是否應考慮更多日子才決定策略?又若當中指數在平均線邊緣忽上忽落,又如何定奪?這都是可以改進程式的地方。同樣,今次是測試滙聚結束後背離的投資策略,那趨向滙聚的策略又如何,我認為三線收窄、又未去到滙聚的判斷較為主觀,難以在滙聚前得知,難免中途轉為背離的可能,值得進一步探討。

順帶一提,撰寫程式中,發現用Plotly套件來繪圖相當好用,因可製作互動圖表,把局部放大,並且有標籤顯示遊標位置的數據,用來檢視長年期及多線複雜的圖表,相當方便,值得向大家推薦一下。有興趣索取程式碼的讀者,請電郵在下。

尼奧
作者電郵:mailto:[email protected]