筆者做的回歸測試使用了特定長度的移動視窗(Rolling window),在時間長度以上如有發現闊裂口存活了下來,則會發出訊號。而筆者的策略是假如發出利好訊號便全倉買入並一直持有,重複發出買入訊號不會再加注,直至發出沽出訊號便平倉。這算是長倉為主(Long only)策略的延伸,加入了策略性暫時退場的機制。根據以上規則編寫了交易算法,並用不同的參數去反覆回歸測試。筆者抽出其中一個表現較佳的設定,是使用38天的移動視窗和0.6%的最低裂口闊度,這種設定得出的夏普比率及總回報率均高於被動策略不少(見圖二)。
仔細分析持倉,交易算法在2018年6月份當恒指仍在30000點以上的時候,因為出現了超過一個月也未能回補的下跌裂口,因此交易算法在當時決定平倉,成功避開了2018年下半年的中期跌浪。目前恒指自從10月以來出現了幾個上升裂口,部份已經存活超過兩個月,因此交易算法在12月初已發出買入的訊號,目前正百分百持倉,可解讀成對後市看好。然而,一旦出現闊下跌裂口,如果在特定時期內未有回補,交易算法則會平倉,解讀成對後市看淡。
筆者用數據驗證後,對於坊間「上升裂口是利好」說法部份認同。筆者補充,當上升裂口出現後,首先要看它的闊度是否達標,然後要觀察一段時間,它能存活下來沒有回補,才可以算是一個利好訊號。
以裂口是否回補作為交易算法的訊號,似乎也是有利可圖,在調整了參數設定後的回測結果也能跑贏被動持有指數的組合,也成功避過中期跌浪。如果把裂口策略用於一籃子股票,若發現很多股票也同時出現裂口,或許是更有用的指標,可以更仔細地運用於制定交易策略。礙於篇幅關係,這些進一步的數據實驗留待日後才討論。筆者上述使用的交易算法源碼可在Github連結*找到,讀者可以測試不同的參數設定,可自行判斷裂口應該存活多久才有參考意義。
量子雪球
*Github: https://github.com/quantumsnowball/AppleDaily20200113
作者電郵:mailto:
[email protected]