模拟交易价格是按照策略,,但是信号不对

我的止盈止损,是按照固定跳数来的在模拟里面,开仓价格是605.18,信号里也是这个价格,,这个没有问题第二根bar开盘后有触碰到我的止损了,在模拟里,是进行平仓了,理论价格是605.18-0.02=605.16,偏移一跳,委托价是605.14,在模拟里,都是正确的。问题出在,信号里的价格不对,信号里是按照我的止盈价格平仓的605.18+0.3=605.48但实际上是先止损了,不会到止盈价格的。这个是我的止盈止损的代码 If(MarketPosition == 1 And High>l0ngLastEntryPrice+M*MinPoint And BarsSinceLastEntry>=1) { Sell(lots,Max(open,l0ngLastEntryPrice+M*MinPoint)); Commentary("多——止盈"); } If(MarketPosition == 1 And Low<l0ngLastEntryPrice-N*MinPoint And BarsSinceLastEntry>=1) { Sell(lots,Min(open,l0ngLastEntryPrice-N*MinPoint)); Commentary("多——止损");

代码按顺序执行,止盈在前自然先止盈,但是实际情况是先止损所以代码止损都在止盈前

这个很难看出来哪里不对。如果你是信号价格和委托价格不一致的问题,有可能是以下几个原因一 信号闪烁了,计算出来的信号价格存在变动二 你开了委托偏移,偷价了

回复:大哥,我重新描述了一下,您再看看,,模拟上是在止损价格平仓的,,但是信号是在止盈价格平仓的。实际上到不了止盈的价格

回复:你的意思是,模拟盘委托单价格是对的,但是信号的止盈价格不对是吗?那就是代码问题

回复:我的多单平仓代码在帖子里,,我仔细检查,没有发现问题。。模拟盘是先到止损就止损了信号是到了止损没有止,,在后面止盈了