止损问题和开仓附加布林线问题 (文华财经WH8赢智V8.2)

投资者咨询:止损问题和开仓附加布林线问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-22 16:42
 
CROSSUP(MA1,MA2) &&J>D ,BPK;
CROSSDOWN(MA1,MA2) &&J<D ,SPK;


C<=BKPRICE-40*MINPRICE,SP;//止损40点
C>=SKPRICE+40*MINPRICE,BP;//止损40点

C>=BKPRICE+40*MINPRICE,SP;//止盈40点
C<=SKPRICE-40*MINPRICE,BP;//止盈40点

止损市价第一时间平仓,KDJ+布林线限制开仓

第一个问题:40点止损,回测模型的时候,怎么样让价格破40点,即刻按照涨停或者跌停的市价第一时间去止损单子,而不是等在收盘以后再确认,显然很多时候都是超过40点的,甚至80点再止损,那样,设止损就失去了意义。

第二个问题:开仓条件,新增加限制条件,做多,布林线下轨向上或者走平,做空,布林线上轨向上或者走平。
技术人员回复
日期:2018-5-22 16:54

 回复问题一:

 

回测时需要满足条件立即执行,模型中使用指令价函数CHECKSIG

 

具体的用法参考对应的函数说明了解一下

 

回复问题二模型整体修改参考:

 

MID:MA(CLOSE,26);
TMP2:=STD(CLOSE,26);
TOP:MID+2*TMP2;
BOTTOM:MID-2*TMP2;

CROSSUP(MA1,MA2) &&J>D && BOTTOM>=REF(BOTTOM,1) ,BPK;
CROSSDOWN(MA1,MA2) &&J<D &&TOP<=REF(TOP,1),SPK;

C<=BKPRICE-40*MINPRICE,SP;//止损40点
C>=SKPRICE+40*MINPRICE,BP;//止损40点

C>=BKPRICE+40*MINPRICE,SP;//止盈40点
C<=SKPRICE-40*MINPRICE,BP;//止盈40点

CHECKSIG(BPK,'A',0,'C',0,0);
CHECKSIG(SPK,'A',0,'C',0,0);
CHECKSIG(BP,'A',0,'C',0,0);
CHECKSIG(SP,'A',0,'C',0,0);
AUTOFILTER;

 

 

 

 

投资者咨询:止损问题和开仓附加布林线问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-22 16:42
 第二个问题:开仓条件,新增加限制条件:
做多,布林线下轨向上或者走平;
做空,布林线上轨向下或者走平。

刚写错了做空的条件
投资者咨询:止损问题和开仓附加布林线问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-22 16:42
 
第二个问题:开仓条件,新增加限制条件:
做多,布林线下轨向上或者走平;
做空,布林线上轨向下或者走平。

限制开仓条件的布林线,上下轨的方向,向上还是向下,还是走平,判断依据不是当根K线,而是交易信号产生之前的2根K线,因为当根K线很多时候与交易方向相反,会导致很多单子无法开仓。
技术人员回复
日期:2018-5-22 18:40
 开仓条件这么试试

CROSSUP(MA1,MA2) &&J>D && EVERY(BOTTOM>=REF(BOTTOM,1),3) ,BPK;
CROSSDOWN(MA1,MA2) &&J<D &&EVERY(TOP<=REF(TOP,1),3),SPK;
投资者咨询:止损问题和开仓附加布林线问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-22 16:42
 老师,试了一下,以上下轨判断,不规则,也不稳定,如果换成布林线中轨,也就是布林线中轨,是比较稳定的判断。
我们先这样定义:布林线中轨走平,定为黄色;布林线向上,定为红色;布林线向下,定为绿色


但是,为了避免产生交易信号的当根K线涨跌影响布林线中轨颜色,也就是影响中轨方向的意思,只能以产生信号之前前一根K线,布林线中轨的颜色,
做多,就是走平或者向上
做空,就是走平或者向下
技术人员回复
日期:2018-5-22 20:42
这么试试

 
CROSSUP(MA1,MA2) &&J>D && REF(MID>=REF(MID,1),1) ,BPK;
CROSSDOWN(MA1,MA2) &&J<D &&REF(MID<=REF(MID,1),1),SPK;
投资者咨询:止损问题和开仓附加布林线问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-22 16:42
  DRAWTEXT(CROSSUP(MA1,MA2),MA2,'多'),COLORRED,FONTSIZE72;
DRAWTEXT(CROSSDOWN(MA1,MA2),MA2,'空'),COLORGREEN,FONTSIZE72;

CROSSUP(MA1,MA2) &&Q1>0 && MA1>MA5,BPK;
CROSSDOWN(MA1,MA2) &&Q1<0 && MA1<MA5,SPK;

老师,是这样的,很多情况,MA1上穿MA2,显示多,但是有时候,当根K线并不同时满足条件开仓,而下一根,就满足条件开仓条件,那如何编?不仅仅是当根K线满足条件开仓,还有后面的一根K线,满足条件也开仓?因为后面的一根K线满足条件,却不开仓,会放弃很多交易机会。

另外,还有当根K线后面的2根K线内,满足条件也开仓,怎么编?(这个主要是我想测试到底判断几根K线合适)
技术人员回复
日期:2018-5-23 8:07

判断2个开仓条件在2周期范围内心都存在过开仓:

 

EXIST(CROSSUP(MA1,MA2),2) && EXIST(Q1>0,2) && EXIST(MA1>MA5,2),BPK;
EXIST(CROSSDOWN(MA1,MA2),2) && EXIST(Q1<0,2) && EXIST(MA1<MA5,2),SPK;  //红色周期参数可调整

投资者咨询:止损问题和开仓附加布林线问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-5-22 16:42
 如果MA5=250日均线

DRAWTEXT(CROSSUP(MA1,MA2),MA2,'多'),COLORRED,FONTSIZE72;
DRAWTEXT(CROSSDOWN(MA1,MA2),MA2,'空'),COLORGREEN,FONTSIZE72;

那么如果100日均线向上的时候,意味着当前处于多头方向,那么上面的显示交叉“空“,属于逆向信号,让它消失,避免干扰判断
那么如果100日均线向下的时候,意味着当前处于空头方向,那么上面的显示交叉“多“,属于逆向信号,让它消失,避免干扰判断

CROSSUP(MA1,MA2) &&Q1>0 && MA1>MA5,BPK;
CROSSDOWN(MA1,MA2) &&Q1<0 && MA1<MA5,SPK;