[常见问题] 如何取消setstoploss
作者:MC 来源:cxh99.com 发布时间:2014年04月20日
- 咨询内容:
之前有人问过我,一个进场策略 对应N个出场 怎么判别?
用marketposition>0 或者marketposition<0判断 then 挂出 平仓 stop
这样最快也要等到进场后的第二根bar才发出指令
如果要加setstoploss,确保当前bar也能止损出场,
当前bar进场了,stoploss是会正常挂出来,如果没止损,而到了第二根bar之后,会出来两个平仓语句
如果同时被触到或者行情太快,MC会来不及删单的,单子就直接发出去了。
由于MC是一根bar计算一次程序,建议是 一个condition的情况下 只挂一个stop平仓单。
程序中 尽量,确保,不要同时挂出N张价格相近或相同的平仓单。
如何撤销setstoploss命令?就是给这个指令加一个condition限制。- if marketposition=0 then
- setstoploss(xxx);
- if marketposition>0 then
- sell next bar at aaa stop;
- if marketposition<0 then
- buytocover next bar at bbb stop;
复制代码这样,在进场之后,由于marketposition要等到下一根bar才能识别变化,
可以正常执行stoploss,而如果当前bar没有止损,
到了第二根bar,stoploss就会应marketposition<>0而被MC取消掉。
希望对大家有所帮助。