vn.py官网
开源量化社区
Member
avatar
加入于:
帖子: 50
声望: 0

description

description
成交与pos记录如上图,变量记录模块根本没记录成交,后面就一直重复发单

Member
avatar
加入于:
帖子: 3164
声望: 185

可以去对应策略引擎的process_trade_event函数下进行打印排查,看看pos的变化

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

xiaohe wrote:

可以去对应策略引擎的process_trade_event函数下进行打印排查,看看pos的变化
组合策略的process_trade_event下面没有pos

def process_trade_event(self, event: Event):
    """"""
    trade: TradeData = event.data

    # Filter duplicate trade push
    if trade.vt_tradeid in self.vt_tradeids:
        return
    self.vt_tradeids.add(trade.vt_tradeid)

    self.offset_converter.update_trade(trade)

    strategy = self.orderid_strategy_map.get(trade.vt_orderid, None)
    if not strategy:
        return

    self.call_strategy_func(strategy, strategy.update_trade, trade)
Member
avatar
加入于:
帖子: 3164
声望: 185

portfolio_strategy的pos是通过get_pos函数获取的,而get_pos函数获取的是StrategyTemplate里pos字典里的值。pos字典通过update_trade函数进行更新,可以在process_trade_event函数里调用strategy.update_trade之前和之后分别打印一下strategy.pos排查一下,也可以直接在update_trade函数里打印

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

沪公网安备 31011502017034号