2017年7月27日

【MultiCharts】Opening Range Breakout(ORB)策略介紹(附程式碼)

說起當沖交易策略,Opening Range Breakout(ORB)的知名度大概是數一數二的,該策略最早由Toby Crabel在他的「Day Trading with Short Term Price Patterns and Opening Range Breakout」一書中提出,但真正說要發揚光大,業界聞人Larry Williams靠ORB策略一年內從一萬變百萬的操作神蹟,才讓ORB聲名大噪。作為一個教科書等級的當沖策略,即便經歷盛衰風霜,一定也有值得我們學習與探討的地方,本文將介紹並探討這個經典策略。

ORB定義

如果你上網搜尋Opening Range Breakout(ORB)相關資料,會發現有兩種ORB定義,一種是以開盤第一根K棒(建議30分K)的高低點來定義所謂的Opening Range,與一個稱為冠軍操作法(據說來自日本)的做法雷同,這一類操作很簡單,先等一根K收完,之後突破第一根K高點就做多,跌破第一根K低點就做空;另一種Opening Range Breakout(ORB),也就是本文要探討的,是以當天開盤價加減一個波動度來作為多空參考點,至於這個波動度前後經過許多改良有不同版本,例如Larry Williams是以一定比率的日線級TrueRange來代入計算。

ORB類型一:開盤第一根30分K的高低點作為多空參考點。(請自行研究)
ORB類型二:當天開盤價加減一個波動幅度作為多空參考點。(本文探討)

程式碼

ORB的概念很簡單,我們直接先看程式碼,前面說過ORB幾經改良有多個版本,主要差異在於波動度的取用,以下程式碼提供三個版本讓使用者選:
==========================
Input: Multiplier(0.3),CalculationTypes("1 = Larry Williams; 2 = Sheldon Knight; 3 = Tony Crabel"),CalculationType(1),N(3);
Variables: RangeValue(0),dayOpen(0),ORB_B(0),ORB_S(0);

If t=Sess1firstbartime then begin
dayOpen = Open;
If CalculationType=1 then begin
RangeValue = TrueRange of Data2; // Larry Williams
end;
If CalculationType=2 then begin
RangeValue=Highest(High of data2,N)-Lowest(Low of data2,N); // Sheldon Knight
end;
If CalculationType=3 then begin
RangeValue=average(minlist(Open of data2-low of data2,High of data2-Open of data2),N); // Tony Crabel
end;
end;
ORB_B= dayOpen+(Multiplier*RangeValue);
ORB_S= dayOpen-(Multiplier*RangeValue);
plot1(ORB_B);
plot2(ORB_S);
==========================

首先,套用在MC的圖Data1建議可放1分鐘線,Data2則放日線,三種版本ORB取用波動度方式其實大同小異,我們選擇Larry Williams版(參數CalculationType設1),畫出來的圖如下(建議指標樣式選擇點狀圖):
至於交易策略或語法很簡單,就是突破上面的翻多線就進場做多,跌破下方的翻空線就進空單,再加上停損停利以及收盤前出場的機制就可以寫成一個當沖策略,語法這邊就不再多贅述,請讀者自行嘗試。

昨日黃花

ORB很清楚就是一個動能(Momentum)策略,根據Larry Williams的講法,當指數跳高或跳低開出後,又能往該方向推動一段距離,代表當日的盤勢由大型法人主導,這類大型法人一但進場,都還會有後市動能。作為一個順勢當沖策略,最愛動能充沛的長紅或長黑日K,最怕上下影線,也跟多數當沖策略一樣,ORB策略在台指近幾年績效走下坡,如果Google關鍵字”Opening Range Breakout”,你還會看到一篇名為「3 Reasons Not To Trade Range Breakouts」(investopedia.com)的文章,文中分析假突破太多、大行情太少是導致ORB失敗的原因,另外也有一說是自2003後美國市場全面走向近24小時電子化交易,導致開盤價的重要性大降,間接摧毀了ORB的交易邏輯基礎。

筆者回想大約在2008~2009年認識一組ORB專家,知道他們在2009年前用該策略賺了不少錢,後來台指盤性變黏,這個策略最終也被友人束之高閣,另外,曾有一段期間,冠軍交易法也是期貨公司的熱賣投顧商品,最終不敵虧損一樣消聲匿跡,令人唏噓,也再度證明市場恆變,有幸找到聖盃也是有賞味期限的。

何用之有

既然ORB是一個被認證的失敗策略,學之何用?我想,成功之道,來自於失敗的經驗,除了我們可以認識這個經典策略並學會它的邏輯外,設法去改良它也是個方向。

改良一:就是第一次突破先不進場,待行情折返又再攻時再做追價。

改良二:識別假突破,逆向操作。此篇有具體作法。

改良三:可以嘗試其他商品,例如在Futures雜誌的一篇有關Opening Range Breakout分析裡面有提到,ORB在APPLE股票的操作上績效很好。

結論

事實上,成功的當沖策略本來的不易開發,雖然ORB策略雄風不再,但既然是經典,我們就不得不認識它,也是一個開始學習開發當沖策略的好起點。


歡迎加入LINE@
加入好友
(點擊上方圖示)

1 則留言:

  1. 第一次突破先不進場,待行情折返又再攻時再做追價~程式怎麼寫?可告知嗎?感激不盡

    回覆刪除

歡迎留言討論!