Administrator
2023-08-09 e5f394c2dace517213e8ca92013f3947d6da79c9
bug修复
3个文件已修改
15 ■■■■ 已修改文件
constant.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
l2/cancel_buy_strategy.py 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
trade/trade_manager.py 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
constant.py
@@ -111,7 +111,7 @@
# L撤
L_CANCEL_MAX_WATCH_COUNT = 15
# 撤单比例
L_CANCEL_RATE = 0.6
L_CANCEL_RATE = 0.69
# 最小金额
L_CANCEL_MIN_MONEY = 98
l2/cancel_buy_strategy.py
@@ -1007,9 +1007,9 @@
            return False, None
        watch_indexes = set([int(i) for i in watch_indexes])
        # 计算监听的总条数
        total_count = 0
        total_num = 0
        for wi in watch_indexes:
            total_count += total_data[wi]["re"]
            total_num += total_data[wi]["re"]*int(total_data[wi]["val"]["num"])
        # 判断撤单中是否有监听中的索引
        need_compute = False
        for i in range(start_index, end_index + 1):
@@ -1024,15 +1024,15 @@
                    break
        if need_compute:
            # 计算撤单比例
            canceled_count = 0
            canceled_num = 0
            for wi in watch_indexes:
                left_count = l2_data_source_util.L2DataSourceUtils.get_limit_up_buy_no_canceled_count(code,
                                                                                                      wi,
                                                                                                      total_data,
                                                                                                      local_today_num_operate_map)
                canceled_count += (total_data[wi]["re"] - left_count)
            rate = round(canceled_count / total_count, 3)
            logger_l2_l_cancel.info(f"计算范围:{start_index}-{end_index},已撤单比例:{rate}")
                canceled_num += (total_data[wi]["re"] - left_count) * int(total_data[wi]["val"]["num"])
            rate = round(canceled_num / total_num, 3)
            logger_l2_l_cancel.info(f"{code}:计算范围:{start_index}-{end_index},已撤单比例:{rate}")
            if rate >= constant.L_CANCEL_RATE:
                return True, total_data[-1]
trade/trade_manager.py
@@ -615,6 +615,7 @@
            # 设置下单状态的代码为已委托
            if trade_state == TRADE_STATE_BUY_PLACE_ORDER:
                CodesTradeStateManager().set_trade_state(code, TRADE_STATE_BUY_DELEGATED)
    if constant.TRADE_WAY == constant.TRADE_WAY_JUEJIN:
    ing_codes = CodesTradeStateManager().get_codes_by_trade_state(TRADE_STATE_BUY_CANCEL_ING)
    if ing_codes is not None:
        for code in ing_codes: