我的平仓策略是 最高价大于6跳,止盈,但是实际委托价格不对
If(MarketPosition == 1 And High>l0ngLastEntryPrice+M*MinPoint And BarsSinceLastEntry>=1)
{
Sell(lots,l0ngLastEntryPrice+M*MinPoint);
Commentary("多——止盈");
(因为含敏感词,把0换成了0)
628.56的多头建仓价格,+6跳=628.68
第二根BAR开盘价就大于止盈条件了,那应该委托价格是628.68(因为代码是这样写的)
但实际上是用第二根BAR的开盘价,委托的
另外一个问题是,图表上平仓的点,异常的问题(BAR没有到的价格)
过了一会,又标在了最低价,但实际上是开盘价成交的
我用的是策略交易
委托偏移开了吗,想挂单交易不要开偏移
交易助手 监控器也要慎重
而且你这个策略本身写的就有点问题。
如果新bar高开远远超出你的止盈价格或者止损价格,肯定是以开盘价就报单了,怎么可能计算为原来的止损止盈价格呢
1 如果你开了委托偏移,报单就不按信号价格走了,直接按报单时的盘口对手价加偏移处理
2 如果是盘中的bar,你的信号价格在k线范围之外,会按照你的信号价格标记信号。如果是历史bar,会按照k线价格范围修正你的信号位置。你这个明显就是盘中跑自动的时候标记上去,刷新一下按照历史bar执行就修正了。