| | |
| | | "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 = {} |
| | |
| | | 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 |
| | |
| | | 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之前不过滤非涨停金额 |
| | |
| | | # 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 |