log_module/log_export.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
trade/l2_transaction_data_manager.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
utils/output_data_util.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
log_module/log_export.py
@@ -109,7 +109,7 @@ lines = file.readlines() for line in lines: start_index = line.find("]") if start_index<0: if start_index < 0: continue line = line[start_index + 1:].strip() data = eval(line) @@ -117,6 +117,28 @@ return fdatas def load_big_buy_order(date=tool.get_now_date_str()): """ 获取大买单 :param date: :return: """ path = f"{constant.get_path_prefix()}/{constant.LOG_DIR}/huaxin/l2/transaction_big_buy.{date}.log" fdatas = {} with open(path, 'r') as file: lines = file.readlines() for line in lines: start_index = line.find("]") if start_index < 0: continue line = line[start_index + 1:].strip() ds = line.split("#") code = ds[0].strip() data = eval(ds[1]) if code not in fdatas: fdatas[code] = [] fdatas[code].append(data) return fdatas if __name__ == "__main__": trade/l2_transaction_data_manager.py
@@ -1,5 +1,5 @@ # 成交数据统计 from log_module import async_log_util from log_module import async_log_util, log_export from log_module.log import hx_logger_l2_transaction_big_buy_order from utils import l2_huaxin_util @@ -12,7 +12,7 @@ # 最近成交的订单{"code":(订单号,是否成交完成)} __latest_deal_order_info_dict = {} __total_big_buy_orders_dict={} __total_big_buy_orders_dict = {} def __new__(cls, *args, **kwargs): if not cls.__instance: @@ -22,7 +22,9 @@ @classmethod def __load_datas(cls): pass fdatas = log_export.load_big_buy_order() for code in fdatas: cls.__total_big_buy_orders_dict[code] = fdatas[code] @classmethod def get_big_buy_orders(cls, code): @@ -32,6 +34,11 @@ :return:[(订单号,总股数,成交金额,成交开始时间,成交结束时间)] """ return cls.__total_big_buy_orders_dict.get(code) @classmethod def get_big_buy_orders_from_file(cls, code): fdatas = log_export.load_big_buy_order() return fdatas.get(code) @classmethod def get_dealing_order_info(cls, code): @@ -74,7 +81,7 @@ # 是否为大买单 if deal_info[2] >= threshold_big_money: big_buy_datas.append(deal_info) async_log_util.info(hx_logger_l2_transaction_big_buy_order,f"{code}#{deal_info}") async_log_util.info(hx_logger_l2_transaction_big_buy_order, f"{code}#{deal_info}") if deal_info[2] >= 500000: normal_buy_datas.append(deal_info) # 初始化本条数据 utils/output_data_util.py
@@ -54,9 +54,9 @@ # 统计板块的 fresults["blockInfos"] = blockInfos fresults["blocks"] = list(blocks) big_orders = HuaXinBuyOrderManager.get_big_buy_orders(code) big_orders = HuaXinBuyOrderManager.get_big_buy_orders_from_file(code) if not big_orders: big_orders = [] fresults["bigOrderDealCount"] = len(big_orders) fresults["bigOrderDealMoney"] = sum([x[1] for x in big_orders]) fresults["bigOrderDealMoney"] = sum([x[2] for x in big_orders]) return fresults