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

请教各位大佬,我的策略之前实盘运行都是比较正常的,最近感觉频繁出错,主要是信号实际已经成交了,但是没有正确调用on_trade函数,因为我在on_trade函数中写了发送邮件的部分,但是经常出现实际已经成交了,邮件没有发送成功,这个问题比较头疼。

我在on_trade函数开头部分先让输出到TXT文件记录下信息看看,结果发现早上第一个信号已经成交了,这里居然没有输出任何信息,也没有发出邮件,请问这是什么原因呢?

def on_trade(self, trade: TradeData):
    """
    Callback of new trade data update.
    """
    # 记录
    outtxt = open('D:\ctest.txt', 'a')
    outtxt.write('调用on_trade: ' + ' \n')  

    msg = f"新的成交信号: 时间{trade.datetime}, 方向{trade.direction}, 开平{trade.offset}, 价格{trade.price}"
    self.send_email(msg)
    ……



比较久没有更新过代码了,去年这个都是正常运行的,今年感觉经常出问题~还请大佬们多多指教,感谢感谢!

Member
avatar
加入于:
帖子: 5005
声望: 301

可以自己在对应引擎的process_trade_event函数下打印排查看看

Member
加入于:
帖子: 7
声望: 0

xiaohe wrote:

可以自己在对应引擎的process_trade_event函数下打印排查看看

今天试了下在process_trade_event函数下打印结果,发现什么都没有打印出来,还是和之前一样的问题,今天的第一个信号成交了,但是没有输出没有发邮件,不知为啥,请问还有什么方式可以排查吗?

Member
avatar
加入于:
帖子: 5005
声望: 301

如果process_trade_event函数压根收不到那么需要到接口打印一下是不是被过滤了,比如通过其他客户端下单之类的情况

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

沪公网安备 31011502017034号

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