Administrator
2024-04-11 832d70d984316e43048a84ad61d0c8a12c319993
l2/huaxin/l2_huaxin_util.py
@@ -52,9 +52,16 @@
            "mainSeq": item[6], "subSeq": item[7]}
# 处理l2数据
# filter_not_limit_up : 过滤掉非涨停数据
def __format_l2_data(origin_datas, code, limit_up_price, filter_not_limit_up=True):
def __format_l2_data(origin_datas, code, limit_up_price, filter_not_limit_up=True, filter_limit_up_sell=False):
    """
    处理l2数据
    @param origin_datas:原始数据
    @param code:代码
    @param limit_up_price:涨停价
    @param filter_not_limit_up:是否过滤掉非涨停数据
    @param filter_limit_up_sell:是否过滤涨停卖
    @return:格式化过后的数据
    """
    datas = []
    dataIndexs = {}
    same_time_num = {}
@@ -82,6 +89,11 @@
        if filter_not_limit_up and int(item["limitPrice"]) != 1 and (
                int(operateType) == 0 or int(operateType) == 1) and num != 1:
            continue
        if filter_limit_up_sell and int(item["limitPrice"]) == 1 and int(operateType) == 2:
            # 过滤涨停卖
            continue
        key = "{}-{}-{}".format(code, item["mainSeq"], item["subSeq"])
        if key in dataIndexs:
            # 数据重复次数+1
@@ -93,7 +105,17 @@
    return datas
def get_format_l2_datas(code, origin_datas, limit_up_price, start_index):
def get_format_l2_datas(code, origin_datas, limit_up_price, start_index, filter_limit_up_sell=False):
    """
    华鑫L2数据格式化
    @param code:
    @param origin_datas:
    @param limit_up_price:涨停价
    @param start_index:
    @param filter_limit_up_sell:是否过滤涨停卖
    @return:
    """
    # 先转变数据格式
    datas = [__convert_order(x, float(limit_up_price)) for x in origin_datas]
    # 在9:25之前不过滤非涨停金额
@@ -102,7 +124,8 @@
    #     filter_not_limit_up = False
    # 不过滤非涨停金额
    filter_not_limit_up = False
    fdatas = __format_l2_data(datas, code, float(limit_up_price), filter_not_limit_up=filter_not_limit_up)
    fdatas = __format_l2_data(datas, code, float(limit_up_price), filter_not_limit_up=filter_not_limit_up,
                              filter_limit_up_sell=filter_limit_up_sell)
    for i in range(0, len(fdatas)):
        fdatas[i]["index"] = start_index + i
    return fdatas