MTF wrote:
对的
我是noui模式运行的,每次strategy_data.json文件里的pos都不更新,为啥?
郭易燔 wrote:
UI下ctastrategy中的日志好像也是不能写进文件的吧
NO_UI下的你能写进文件么?我也写不进去
郭易燔 wrote:
是使用的no_ui来运行的ctastrategy么
UI跑的
代码很简单:
if cross_over and ma_up and self.pos==0:
self.buy(bar.close_price, trade_volume)
elif cross_below and self.pos>0:
self.sell(bar.close_price, self.pos)
疑问:我代码里的逻辑,应该只有pos为0的时候才会开仓,然后全部平仓开启下一轮。但是为什么会出现连续的开仓单?我该怎么解决这个问题?
我在回测的时候,有些时候会出现self.pos不更新的情况,就是cover交易已经回调了on_trade,但是self.pos依然不更新,也是很恼火
MTF wrote:
检查下有没有通过on_trade收到成交回报吧,注意cover和buy一样,要委托价格超过市场能撮合价格才能成交哦
谢谢
回测模块中,short开仓正常,cover关仓执行成功却没有更新pos,为什么?cover调用后返回了['BACKTESTING.2']
xiaohe wrote:
初始化的时候trading为False,初始化完成trading才变为True
https://www.vnpy.com/docs/cn/cta_strategy.html
谢谢
周弗居 wrote:
正常情况都会更新的,最好把情况再说明清楚一些
知道为啥了,是因为策略的trading字段false导致的交易失败。貌似程序刚开始测试的时候trading是false,交易失败,但是后面trading就变成true,交易成功。请教下,这个trading字段是什么机制?
pos字段是CtaTemplate中定义的