29日9:00工业硅2511大幅低开,低开达到了买入条件,但是发现图表委托价是8850(按策略代码,是正确的),但是账号委托价是8885(错误),如第一图。看了单元格设置(第二图),也不会造成类似情况。请问可能会有啥原因造成此问题呢?谢谢解答。


报单价格的形成,在零基础课程或者其他帖子里介绍过的
没开委托偏移,用当前信号的信号价格报单
开了委托偏移,用对手盘价格加偏移点数报单
没开委托偏移,那必然是用信号价格报单,这就说明信号闪烁了
当然也有另外一种可能,设置搞错了,其实是开了委托映射的,盘口8845,偏移了8跳
最后还有一种可能性,软件有bug。
如果软件有bug,那么肯定是可以复现出来的,不能复现的就不能确认为bug。
请提供稳定复现问题的demo
我知道了。
我的交易代码里公式计算出来的交易价格是8885(已经达到超跌买入值,如下图程序段),但是由于开盘直接按8850开了并且持续下跌。此时呈现的结果是,账户委托价按照8885,TB图表显示买入价为8850,实际成交价8850。不懂这算不算软件Bug。
PS:如果我把Bprice增加Min来取值,账户委托价就会和TB图表买入价格一样了;但用了Min又怕出现其他偷价情况,影响回测结果。

就猜到是这个原因
实盘的时候,系统不重复发单,但实际发单的条件是一直满足的
一根K线一直满足if状态,里面的数据会一直更新,直到最后一个tick
最后K线上显示的数据当然是最后的数据了
这也是为什么回测要考虑是否会取未来数据的原因
就猜到是这个原因
实盘的时候,系统不重复发单,但实际发单的条件是一直满足的
一根K线一直满足if状态,里面的数据会一直更新,直到最后一个tick
最后K线上显示的数据当然是最后的数据了
这也是为什么回测要考虑是否会取未来数据的原因
那你应该固定住你的信号价格,不应该用在bar随tick跳动会变动的容器
“图表委托价是8850(按策略代码,是正确的)”
这个是怎么计算出来的呀