Administrator
2024-01-30 21c96ed504f93f16ce6f8a3ccf164a87c9edd9c0
utils/data_export_util.py
@@ -11,6 +11,7 @@
import constant
from code_attribute import gpcode_manager
import l2.l2_data_util
from l2.huaxin import l2_huaxin_util
from log_module import log, log_export
from l2 import l2_data_source_util
from trade import deal_big_money_manager
@@ -18,29 +19,23 @@
def export_l2_excel(code, date=None):
    # 获取L2的数据
    local_today_datas = log_export.load_l2_from_log(date)
    datas = local_today_datas[code]
    datas = datas[-2000:]
    # 获取L2处理位置信息
    process_indexs = log_export.get_l2_process_position(code, date)
    trade_indexs = log_export.get_l2_trade_position(code, date)
    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)
    fdatas = get_l2_datas(code)
    __save_l2_datas(code, fdatas)
# 获取L2的数据
def get_l2_datas(code, date=None):
    local_today_datas = log_export.load_l2_from_log(date)
    datas = local_today_datas[code]
    datas = local_today_datas.get(code)
    if not datas:
        datas = []
    process_indexs = log_export.get_l2_process_position(code, date)
    trade_indexs = log_export.get_l2_trade_position(code, date)
    real_position_indexes = log_export.get_real_place_order_positions(code, date)
    deal_list = log_export.load_huaxin_deal_record(code)
    deal_list_dict={}
    deal_list_dict = {}
    for d in deal_list:
        deal_list_dict[d[0]] = d
        deal_list_dict[str(d[0])] = d
    fdatas = export_l2_data(code, datas, process_indexs, trade_indexs, real_position_indexes, deal_list_dict)
    return fdatas
@@ -155,12 +150,19 @@
            # 买
            if cancel_data:
                try:
                    cancel_info = "{}-{}".format(cancel_data["index"], cancel_data["val"]["time"])
                    left_num = data["val"]["num"] - cancel_data["val"]["num"]
                    if left_num > 0:
                        cancel_info = f"成交:{left_num} 序号:{cancel_data['index']}"
                    else:
                        cancel_info = "{}-{}".format(cancel_data["index"], f"{cancel_data['val']['time']}") + (
                            f".{cancel_data['val']['tms']}" if "tms" in cancel_data["val"] else '')
                except Exception as e:
                    logging.exception(e)
            else:
                if data["val"].get("orderNo") in deal_list_dict:
                    cancel_info = deal_list_dict[ data["val"].get("orderNo")][3]
                deal_info = deal_list_dict.get(str(data["val"].get("orderNo")))
                if deal_info:
                    cancel_info = l2_huaxin_util.convert_time(deal_info[3],
                                                              with_ms=True)
        format_data.append(cancel_info)
        cancel_order_info = None
        if trade_info:
@@ -279,6 +281,6 @@
if __name__ == "__main__":
    try:
        export_l2_excel("605218")
        export_l2_excel("002036")
    except Exception as e:
        logging.exception(e)