策略:Dynamic Break Out II改进版
作者:George Pruitt(1996)
类型:短线系统(短周期)、趋势系统(长周期)
原理:布林带+市场波动率自适应
编译:猫在思考
介绍:Http://Www.Hs633.Com/Forum.Php?Mod=Viewthread&Tid=42281
版本:1.2
日期:2015.6.15
}
//百分比止损
// Setstoplosspercent:=-25; //亏损-25%时止损
//BOLL
Upper:=Round(Ref(Ma(C,M)+N*Std(C,M),1));//布林上轨
Lower:=Round(Ref(Ma(C,M)-N*Std(C,M),1));//布林下轨
//自适应模块
Todayv:=Ref(Std(C,D),1);
Yesterdayv:=Ref(Std(C,D),2);
Deltav:=(Todayv-Yesterdayv)/Todayv;
Backdays:=M; //预设回溯值
Backdays:=(1+Deltav)*Backdays;
Backdays:=Intpart(Backdays); //取整
Backdays:=Min(Backdays,60); //确认回溯值不大于60
Backdays:=Max(Backdays,20); //确认回溯值不小于20
上轨:Ref(Hhv(H,Backdays),1),Colorred,Linedot; //X周期最高价
下轨:Ref(Llv(L,Backdays),1),Colorgreen,Linedot; //X周期最低价
中轨:Ref(Round(Ma(C,Backdays)),1),ColorYellow; //X周期收盘移动平均
//突破上轨做多,突破下轨开空
{多头开仓:跳空高开时}
If Marketposition<1
And O>=上轨
And 上轨>=Upper
Then Buy('', Default, 0, 2, Ot_market, Ob_thisbar); //跳空高开时,开仓时机为开盘价(开仓价取开盘价)
{多头开仓:盘中价格突破时}
If Marketposition<1
And H>=上轨 And O<上轨
And 上轨>=Upper
Then Buy('', Default, 上轨, 2, Ot_market, Ob_thisbar); //盘中价格突破上轨时开仓(开仓价即上轨值)
{空头开仓:跳空低开时}
If Marketposition>-1
And O<=下轨
And 下轨<=Lower
Then Sellshort('', Default, 0, 2, Ot_market, Ob_thisbar); //跳空低开时,开仓时机为开盘价(开仓价取开盘价)
{空头开仓:盘中价格突破时}
If Marketposition>-1
And L<=下轨 And O>下轨
And 下轨<=Lower
Then Sellshort('', Default, 下轨, 2, Ot_market, Ob_thisbar);
//价格运行至中轨时出场(需将参数P即"中轨平仓"设为1)
{多头平仓:跳空低开时}
If Marketposition=1
And P=1
And O<=中轨
And Barsentry>0
Then Sell('', Default, 0, 2, Ot_market, Ob_thisbar); //跳空低开时,平仓时机为开盘价(开盘即平仓)
{多头平仓:盘中价格突破时}
If Marketposition=1
And P=1
And L<=中轨 And O>中轨
And Barsentry>0
Then Sell('', Default, 中轨, 2, Ot_market, Ob_thisbar); //盘中价格突破中轨时平仓(平仓价即中轨值)
{空头平仓:跳空高开时}
If Marketposition=-1
And P=1
And O>=中轨
And Barsentry>0
Then Buytocover('', Default, O, 2, Ot_market, Ob_thisbar); //跳空高开时,平仓时机为开盘价(开盘即平仓)
{空头平仓:盘中价格突破时}
If Marketposition=-1
And P=1
And H>=中轨 And O<中轨
And Barsentry>0
Then Buytocover('', Default, 中轨, 2, Ot_market, Ob_thisbar); //盘中价格突破中轨时平仓(平仓价即中轨值)
//止损处理
Zs:=Floor(Abs(Entryprice*Setstoplosspercent/Bigpointvalue/100),Mindiff);
Setstopcontract;
Setstoploss(Zs*Bigpointvalue);
4555555555555555555555555555555555555
Then Buy('', Default, 0, 2, Ot_market, Ob_thisbar); 这里各个参数都是代表什么,default是??
Then Sell('', Default, 中轨, 2, Ot_market, Ob_thisbar); //盘中价格突破中轨时平仓(平仓价即中轨值),这里也解释下参数中轨是指c>中轨吗?
Setstopcontract;
Setstoploss(Zs*Bigpointvalue); //最后这两个函数我们么有,说明下作用
其他部分金字塔里面都直接可用的,就修改上面这几处地方就可以了
这个公式是金语言(kingtrader),变量好像没有初始化,没有返回值。
default默认值, 买入数量的默认值,Setstopcontract;设置与单口持仓,使内建平仓出场函数
Setstoploss(Zs*Bigpointvalue); ,设置止损平仓