飛狐金魔方大交易師使用教程(3)-日內交易通道突破策略之開盤區間突破 [飛狐金魔方]
日內交易常用的一類策略是開盤區間突破,它與前例的通道突破策略相似,其基本公式是:
//-------金魔方智能交易公式--------------
//例3_1 開盤區間突破策略
//用于分鐘線周期
{策略:
1.當日開盤價加減指定價差形成區間
2.突破區間高點做多,跌破區間低點做空
3.當天僅做多1次,做空1次
4.日內交易,收盤前清倉
}
input:
Rng(10), //區間范圍
EndTime(1400); //下午14:00以后不開倉
RngH: OpenD(0) + Rng;
RngL: OpenD(0) - Rng;
if Time < EndTime*100 then begin
if EntriesToday(Date,MP_LONG)<1 then
Buy('', 2, RngH, -1, OT_STOP);
if ExitsToday(Date,MP_SHORT)<1 then
SellShort('', 2, RngL, -1, OT_STOP);
end;
SetExitOnClose;
{
注解:
1.OpenD(0)返回當日開盤價,這套函數在日內交易時方便常用;
2.EntriesToday(Date,MP_LONG)取得當天多頭開倉次數,MP_LONG 是值為1的宏;
3.ExitsToday (Date,MP_SHORT)取得當天空頭平倉次數,MP_SHORT 是值為-1的宏;
4.SetExitOnClose用于在收市時清倉,歷史測評時以收盤價作為平倉價,自動交易時在收市前若干秒平倉,可在【策略設置】中設置,默認在收市前60秒清倉。
}
如圖所示,該策略以當日開盤價加減由Rng參數指定的范圍,形成一個區間,當價格突破區間時進場交易,收盤時清倉不過夜。
上例的區間范圍Rng是個常數,不能適應市場變動,所以Rng通常用各種算法得到,例如,著名的Dual Thrust系統曾長期在交易系統排行榜名列三甲,其原始公式應用于日線周期,不太能如實反映日內波動,我們把它改造為應用于分鐘周期的策略:
//-------金魔方智能交易公式--------------
//例3_2 Dual Thrust日內策略
//用于1分鐘-15分鐘周期
{策略:
1.根據前幾日的波動范圍動態調整開盤區間
2.突破區間高點做多,跌破區間低點做空
3.可選是否持倉過夜
}
input:
K1(0.5),K2(0.5),Mday(1),Nday(1),
ExitOnClose(1);
variable:
BarsPerDay(48), BuyRange(1000), SellRange(1000);
if BarPos = 1 then begin //只需計算1次
switch DataPeriod begin //滬深300股指期貨日周期數
case 1: BarsPerDay:=270; //1分鐘周期數/每日
case 2: BarsPerDay:=54; //5分鐘周期數/每日
case 3: BarsPerDay:=18; //15分鐘周期數/每日
end
end
Bars:= Mday*BarsPerDay;
MHH := HHV(H,Bars)[1];
MHC := HHV(C,Bars)[1];
MLL := LLV(L,Bars)[1];
MLC := LLV(C,Bars)[1];
Bars:= Nday*BarsPerDay;
NHH := HHV(H,Bars)[1];
NHC := HHV(C,Bars)[1];
NLL := LLV(L,Bars)[1];
NLC := LLV(C,Bars)[1];
if Date <> Date[1] then begin //新交易日開始,計算區間范圍
BuyRange := Max(MHH - MLC, MHC - MLL);
SellRange := Max(NHH - NLC, NHC - NLL);
end
RngH: OpenD(0) + K1*BuyRange;
RngL: OpenD(0) - K2*SellRange;
if SessionLastBar = 0 then begin
Buy('', DEFAULT, RngH, -1, OT_STOP,OB_NEXTBAR);
SellShort('', DEFAULT, RngL, -1, OT_STOP,OB_NEXTBAR);
end
if ExitOnClose then SetExitOnClose;
{
注解:
1.用不同的參數分別設置買賣區間的幅度
2.BarsPerDay為1天的K線數量,只需在第1根K線時計算1次
用switch語句根據周期類型賦值,公式中是股指期貨的每日周期數量
3.HHV(H,Bars)[1]表示取用前一周期的指標值
可以把之前的:=改為:進行調試
4.SessionLastBar函數用于判斷是否是當日最后一個周期
5.外部參數ExitOnClose控制是否做日內交易或持倉過夜
}
可見,在同一時間段,本例的區間與上例相比較是動態變化的,各位可以修改公式參數看看運行結果。
在實際交易中,分批開平倉是常用的技巧,金魔方如何實現呢?
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 511411198 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容