如何实现分情况平仓? [文华财经]
- 咨询内容:
策略如下,信号执行方式是出信号立即执行,不复核。
原策略在建仓后最多允许加仓3次,然后一次性平仓。
A为多头建仓条件
A1为多头加仓条件
A2为多头清仓条件
B为空头建仓条件
B1为空头加仓条件
B2为空头清仓条件BKVOL=0 AND SKVOL=0 AND A AND NOT(ISLASTSK OR ISLASTBK),BK((MONEY*0.005)/(ATR*300));
BKVOL>0 AND A1 AND ISLASTBK,BK((MONEY*0.005)/(ATR*300));
BKVOL>0 AND A1 AND ISLASTBK,BK((MONEY*0.005)/(ATR*300));
BKVOL>0 AND A1 AND ISLASTBK,BK((MONEY*0.005)/(ATR*300));
A2 AND ISLASTBK,SP(BKVOL);
BKVOL=0 AND SKVOL=0 AND B AND NOT(ISLASTSK OR ISLASTBK),SK((MONEY*0.005)/(ATR*300));
SKVOL>0 AND B1 AND ISLASTSK,SK((MONEY*0.005)/(ATR*300));
SKVOL>0 AND B1 AND ISLASTSK,SK((MONEY*0.005)/(ATR*300));
SKVOL>0 AND B1 AND ISLASTSK,SK((MONEY*0.005)/(ATR*300));
B2 AND ISLASTSK,BP(SKVOL);我想修改一下,达到以下效果:
以多头为例,如果无加仓行为,满足A2时,执行平仓。
如果出现加仓行为,则满足A3时,执行平仓。
也就是说,针对策略是否有加仓行为,执行不同的平仓条件。
- 文华技术人员:
您的模型采用的是资金比例 所以暂无法判断是否有加仓行为
如果您使用的是固定手数 那么是可以判断的 比如您每次下单一手 那么如果当前的BKVOL=2那么就必然可以判断发生过加仓 可是您用的是资金比例 那么就不好判断了 您考虑下吧。
- 文华客服:
信号执行方式是出信号就执行,不复核。
假定A为开多的条件,BK信号至少要距上个SP信号两根K线,如下写正确吗?
barssp+1>=2 and A,bk;
- 网友回复:
barssp>2 and A,bk;
BARSSP>2即可实现 无需+1
仅供参考!
- 网友回复:
N1:=BARSLAST(DATE<>REF(DATE,1))+1;
TODAYO:=REF(O,N1-1);
TR:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR:=MA(TR,N),NODRAW;
MA5:=MA(C,5),NODRAW;
MA20:=MA(C,20),NODRAW;A:=C>TODAYO AND MA5>MA20 AND BARSSP>2;//多头建仓
A1:=C-BKPRICE>2*ATR;//多头加仓
A2:=BKHIGH-C>1*ATR;//多头清仓
B:=C<TODAYO AND MA5<MA20 AND BARSBP>2;//空头建仓
B1:=SKPRICE-C>2*ATR;//空头加仓
B2:=C-SKLOW>1*ATR;//空头清仓CLOSEMINUTE>=10 AND BKVOL=0 AND SKVOL=0 AND A AND NOT(ISLASTSK OR ISLASTBK),BK((MONEY*0.005)/(ATR*300));
CLOSEMINUTE>=10 AND BKVOL>0 AND A1 AND ISLASTBK,BK((MONEY*0.005)/(ATR*300));
CLOSEMINUTE>=10 AND BKVOL>0 AND A1 AND ISLASTBK,BK((MONEY*0.005)/(ATR*300));
CLOSEMINUTE>=10 AND BKVOL>0 AND A1 AND ISLASTBK,BK((MONEY*0.005)/(ATR*300));
A2 AND ISLASTBK,SP(BKVOL);
CLOSEMINUTE>=10 AND BKVOL=0 AND SKVOL=0 AND B AND NOT(ISLASTSK OR ISLASTBK),SK((MONEY*0.005)/(ATR*300));
CLOSEMINUTE>=10 AND SKVOL>0 AND B1 AND ISLASTSK,SK((MONEY*0.005)/(ATR*300));
CLOSEMINUTE>=10 AND SKVOL>0 AND B1 AND ISLASTSK,SK((MONEY*0.005)/(ATR*300));
CLOSEMINUTE>=10 AND SKVOL>0 AND B1 AND ISLASTSK,SK((MONEY*0.005)/(ATR*300));
B2 AND ISLASTSK,BP(SKVOL);CLOSEMINUTE<=5,CLOSEOUT;
IF,10min周期,信号执行方式是出信号立即执行,不复核。回测无信号。去掉BARSSP>2和BARSBP>2这个条件,就变正常了。
BARSSP>2和BARSBP>2的意思是:开仓k线至少距离上次平仓k线2个周期。不知道这么写是否正确?
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 1145508240 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容