Administrator
2023-10-30 fb47d36048e94b9a506d5c153e3dd19a01e37df1
utils/data_export_util.py
@@ -24,7 +24,8 @@
    # 获取L2处理位置信息
    process_indexs = log_export.get_l2_process_position(code, date)
    trade_indexs = log_export.get_l2_trade_position(code, date)
    fdatas = export_l2_data(code, datas, process_indexs, trade_indexs)
    real_position_indexes = log_export.get_real_place_order_positions(code, date)
    fdatas = export_l2_data(code, datas, process_indexs, trade_indexs, real_position_indexes)
    __save_l2_datas(code, fdatas)
@@ -34,11 +35,12 @@
    datas = local_today_datas[code]
    process_indexs = log_export.get_l2_process_position(code, date)
    trade_indexs = log_export.get_l2_trade_position(code, date)
    fdatas = export_l2_data(code, datas, process_indexs, trade_indexs)
    real_position_indexes = log_export.get_real_place_order_positions(code, date)
    fdatas = export_l2_data(code, datas, process_indexs, trade_indexs, real_position_indexes)
    return fdatas
def export_l2_data(code, datas, process_indexs, trade_indexs):
def export_l2_data(code, datas, process_indexs, trade_indexs, real_position_indexes):
    def find_process_index(index):
        for i in range(0, len(process_indexs)):
            if process_indexs[i][0] <= index <= process_indexs[i][1]:
@@ -70,6 +72,10 @@
    for data in datas:
        index += 1
        trade_info = find_trade_index(data["index"])
        if not trade_info:
            # 获取真实下单位置
            if data["index"] in real_position_indexes:
                trade_info = [3]
        style_int = None
        if find_process_index(data["index"]) % 2 == 0:
            style_int = 0
@@ -161,7 +167,7 @@
                cancel_order_info = trade_info[2]
        format_data.append(cancel_order_info)
        format_data.append(data["val"].get("orderNo"))
        fdatas.append((style_int, format_data))
        fdatas.append((style_int, trade_info, format_data))
    return fdatas
@@ -179,21 +185,31 @@
    ws.write(0, 6, '类型')
    ws.write(0, 7, '重复数量')
    ws.write(0, 8, '撤单时间')
    ws.write(0, 9, '订单号')
    ws.write(0, 9, '备注')
    ws.write(0, 10, '订单号')
    index = 0
    font = xlwt.Font()
    cancel_style = xlwt.easyxf('pattern: pattern solid, fore_colour gray25')
    for fdata in fdatas:
        index += 1
        style_int = fdata[0]
        data = fdatas[1]
        trade_info = fdata[1]
        data = fdata[2]
        style = None
        if style_int == 0:
            style = xlwt.easyxf('pattern: pattern solid')
        else:
            style = xlwt.easyxf('pattern: pattern solid, fore_colour light_yellow')
        font = xlwt.Font()
        style.font = font
        if trade_info:
            if trade_info[0] == 0:
                font.colour_index = 53
            elif trade_info[0] == 1:
                font.colour_index = 17
            elif trade_info[0] == 2:
                font.colour_index = 10
        for i in range(len(data)):
            if data[i] is None:
@@ -255,6 +271,6 @@
if __name__ == "__main__":
    try:
        export_l2_excel("600476")
        export_l2_excel("000530")
    except Exception as e:
        logging.exception(e)