Administrator
2024-06-27 f08cb61eb22a7c006c84fe57a2e857e2b23b061c
l2/huaxin/huaxin_delegate_postion_manager.py
@@ -55,7 +55,7 @@
                # 判断影子订单位置
                if val["num"] != huaxin_client_constant.SHADOW_ORDER_VOLUME // 100:
                    continue
                if abs(shadow_price - float(val["price"])) >= 0.01:
                if abs(shadow_price - float(val["price"])) >= 0.001:
                    continue
                if not L2DataUtil.is_buy_cancel(val):
                    continue
@@ -106,7 +106,7 @@
        # 判断影子订单位置
        if val["num"] != huaxin_client_constant.SHADOW_ORDER_VOLUME // 100:
            continue
        if abs(shadow_price - float(val["price"])) >= 0.01:
        if abs(shadow_price - float(val["price"])) >= 0.001:
            continue
        if d["index"] <= exec_data["index"]:
            continue
@@ -138,7 +138,7 @@
            d = total_datas[i]
            if d["val"]["num"] != volume // 100:
                continue
            if abs(float(price) - float(d["val"]["price"])) >= 0.01:
            if abs(float(price) - float(d["val"]["price"])) >= 0.001:
                continue
            # 必须是买入
            if not L2DataUtil.is_limit_up_price_buy(d["val"]):
@@ -150,7 +150,7 @@
                d = total_datas[i]
                if d["val"]["num"] != volume // 100:
                    continue
                if abs(float(price) - float(d["val"]["price"])) >= 0.01:
                if abs(float(price) - float(d["val"]["price"])) >= 0.001:
                    continue
                # 必须是买入
                if not L2DataUtil.is_limit_up_price_buy(d["val"]):
@@ -161,7 +161,6 @@
        if not real_place_index:
            real_place_index_info = shadow_place_order_index, RELIABILITY_TYPE_VIRTUAL
        else:
            # TODO 需要矫正是否撤单
            real_place_index_info = real_place_index, RELIABILITY_TYPE_REAL
    elif tool.trade_time_sub(datas[-1]['val']['time'], exec_data['val']['time']) >= estimate_time_space and time.time() - order_time >5:
        # 下单超过2s且绝对时间超过5S以上才会估算真实下单位置
@@ -171,7 +170,7 @@
    if real_place_index_info:
        # 获取到了下单位置
        async_log_util.info(hx_logger_trade_debug, f"真实下单位置:{code}-{real_place_index_info}")
        async_log_util.info(logger_real_place_order_position, f"真实下单位置:{code}-{real_place_index_info}")
        async_log_util.info(logger_real_place_order_position, f"真实下单位置:{code}-{real_place_index_info}-{shadow_place_order_index}")
        if code in _place_order_info_dict:
            _place_order_info_dict.pop(code)
        __place_order_position[code] = real_place_index_info[0]
@@ -246,7 +245,7 @@
                                continue
                            if val["num"] != huaxin_client_constant.SHADOW_ORDER_VOLUME // 100:
                                continue
                            if abs(shadow_price - float(val["price"])) >= 0.01:
                            if abs(shadow_price - float(val["price"])) >= 0.001:
                                continue
                            shadow_order_indexes.append(i)
                        async_log_util.info(logger_debug, f"下单位矫正# {code}获取到影子单索引:{shadow_order_indexes}")