以多头为例:
ma20:ma(c,20);//20日均价
dtzs:(ENTERPRICE-c)/ENTERPRICE>=0.04;//多头止损
dtsell:cross(ma20,c);//平仓条件
止损:sell(dtzs and holding>0,holding,market);
平仓:sell(dtsell and holding>0,holding,market);
dtbuy:cross(c,ma20) and l<ma20;//开仓条件
DRAWICON(dtbuy,h,1);
dtjc:(c-ENTERPRICE)/ENTERPRICE>=0.01;//多头加仓条件
加仓:buy(dtjc and holding>0 and holding<=5 and not(TYPEBAR(1,2)=0),1,market);//多头加仓
开仓:buy(dtbuy and holding=0 and not(TYPEBAR(1,2)=0),1,market);
谢谢老师,但我要一根K线多信号,老师编的一根K线只有一个信号
你上面不是说平多和开多 不能在一个K嘛。
如果要开仓 加仓能在一个K。
前后顺序调整下即可。
开仓:buy(dtbuy and holding=0 and not(TYPEBAR(1,2)=0),1,market);
加仓:buy(dtjc and holding>0 and holding<=5 and not(TYPEBAR(1,2)=0),1,market);//多头加仓
我没有说平多开多不能在一根K线上,只是开多的条件是在开多前当根K线上没有平多信号,但开多了以后,当根K线是可以出多头加仓和平多信号的
意思是不能当前K 先平了又开,但是可以先开了又触发平是吗?
那就再调整下位置:
ma20:ma(c,20);//20日均价
dtbuy:cross(c,ma20) and l<ma20;//开仓条件
DRAWICON(dtbuy,h,1);
dtjc:(c-ENTERPRICE)/ENTERPRICE>=0.01;//多头加仓条件
加仓:buy(dtjc and holding>0 and holding<=5 ,1,market);//多头加仓
开仓:buy(dtbuy and holding=0 ,1,market);
dtzs:(ENTERPRICE-c)/ENTERPRICE>=0.04;//多头止损
dtsell:cross(ma20,c);//平仓条件
止损:sell(dtzs and holding>0,holding,market);
平仓:sell(dtsell and holding>0,holding,market);