Book Appointment Now

ORB區間突破交易策略範例
這一篇介紹一個經典的順勢交易策略
ORB(Opening Range Breakout,開盤區間突破),適用於期貨、股票與外匯市場,特別強調開盤後某段時間內的價格區間突破行為,通常使用在當沖交易。
交易邏輯如下
- 定義開盤區間:
- 通常是開盤後的一段時間,例如 9:00 ~ 9:30。
- 取這段時間的 最高價(High)與最低價(Low) 作為區間。
- 突破開盤區間進場:
- 當價格突破該區間上緣 → 做多(Buy)。
- 當價格跌破該區間下緣 → 做空(Sell short)。
使用 Multicharts 語法套用在台指期 範例如下:
//宣告變數
input:Stoploss(100);
vars: xlow(0),xhigh(0);
if d[0]<>d[1] then begin
xhigh=0;
xlow=0;;
end;
//記錄開盤區間
if time>=0845 and time<=0915 then begin
xlow=lowD(0);
xhigh=highD(0);
end;
//進場
if time >=0915 and time<1330 and marketposition=0 hen begin
buy next bar at xhigh stop;
sellshort next bar at xlow stop;
end;
// 停損
if marketposition =1 then sell next bar at entryprice-StopLoss stop;
if marketposition =-1 then buytocover next bar at entryprice+StopLoss stop;
// 當日結束平倉
if time>=1330 then begin
sell next bar at market;
buytocover next bar at market;
end;
setexitonclose;
另外一種 ORB策略,也是開盤後一段時間區間突破,取前一天最高價和最低價振幅一定比例,用今天的開盤價當做基準價,突破基準價加上振幅的一定比例買進多單,跌破基準價減去振幅的一定比例買進空單,當天收盤平倉。據說當沖交易冠軍 Larry Williams 曾經使用ORB策略創造出相當驚人的績效
直接用程式碼說明
value1 = HighD(1)-LowD(1);
UP = openD(0) + value1 * N; (N是可以自行調整的參數)
DN = openD(0) – value1 * N;
if time>=0900 and time <=1200 then begin
buy next bar at UP stop ;
sellshort next bar at DN stop ;
end;
if marketposition =1 then sell next bar at entryprice – StopLoss stop; (stoploss 是可自行調整的自訂參數)
if marketposition =-1 then buytocover next bar at entryprice + StopLoss stop;
有二個關鍵因子,一個是基準價,另一個是波動度。
可以用當天開盤價或是昨天高低平均價當做基準,用昨日振幅一定百分比或是平均真實區間當作波動度
突破關鍵價格高點買進,跌破關鍵價格低點就賣出,停損設一定的點數

到底這個策略的績效表現如何? 利用Multicharts 回測系統可以得到驗證,有興趣的同學再自行研究~~