VeighNa量化社区
你的开源社区量化交易平台
Member
avatar
加入于:
帖子: 9
声望: 1

tick 级别回测,这个值我下单后,值不会变,为了便于还原此bug,我再 on_tick里键入这个逻辑,结果下了好多单,基本上判断pos废了
if self.pos == 0:,
self.buy(tick.ask_price_1, 1)
elif self > 0:
self.sell(tick.bid_price_1, 1)

Member
avatar
加入于:
帖子: 420
声望: 179

从委托到接受、等待、部分成交、全部成交,需要一个过程,你以为象计算机指令一样C=A+B,这边执行,那边就可以得到C的结果吗?
在on_tick()中下单,每秒钟2次,怎么可能立即都有成交结果,没有成交结果,怎么self.pos会发生变化?当然会连续下单,“基本上判断pos废了”就是错误 的!

Member
avatar
加入于:
帖子: 103
声望: 7

hxxjava wrote:

从委托到接受、等待、部分成交、全部成交,需要一个过程,你以为象计算机指令一样C=A+B,这边执行,那边就可以得到C的结果吗?
在on_tick()中下单,每秒钟2次,怎么可能立即都有成交结果,没有成交结果,怎么self.pos会发生变化?当然会连续下单,“基本上判断pos废了”就是错误 的!
解决办法能分享一下吗?

Member
avatar
加入于:
帖子: 13
声望: 0

我不知道你的问题解决没有。你可以试着在发单语句的后面,加上:
time.sleep(2)
给系统工作和自我检查的时间

Member
avatar
加入于:
帖子: 1510
声望: 109

策略中不要sleep,会阻塞事件引擎运行,导致整个程序卡顿

© 2015-2022 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】