From 0e68e24f54db11d340785b17570fff2bc5fc7ac6 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期一, 24 七月 2023 13:05:16 +0800 Subject: [PATCH] bug修复 --- l2_data_util.py | 82 ++++++++++++++++++---------------------- 1 files changed, 37 insertions(+), 45 deletions(-) diff --git a/l2_data_util.py b/l2_data_util.py index 25ad36b..e8df36e 100644 --- a/l2_data_util.py +++ b/l2_data_util.py @@ -4,13 +4,12 @@ """ # 姣旇緝鏃堕棿鐨勫ぇ灏� -import datetime import json import time -from tool import async_call +from utils.tool import async_call -import l2_data_manager -import tool +from l2 import l2_data_manager +from utils import tool def run_time(): @@ -24,6 +23,38 @@ return infunc return decorator + + +# 鏄惁涓哄ぇ鍗� +def is_big_money(val): + price = float(val["price"]) + money = price * val["num"] + if price > 3.0: + if money >= 30000: + return True + else: + return False + else: + max_money = price * 10000 + if money >= max_money * 0.95: + return True + else: + return False + +# 鑾峰彇澶ц祫閲戠殑閲戦 +def get_big_money_val(limit_up_price): + if limit_up_price > 3.0: + return 300 * 10000 + else: + max_money = limit_up_price * 10000 + return max_money * 0.95 + + +# if int(val["num"]) >= constant.BIG_MONEY_NUM: +# return True +# if int(val["num"]) * limit_up_price >= constant.BIG_MONEY_AMOUNT: +# return True +# return False_ def compare_time(time1, time2): @@ -48,20 +79,6 @@ json_value = json.loads(value) _data = {"key": key, "val": item, "re": json_value["re"], "index": int(json_value["index"])} return _data - - -# 灏嗘暟鎹牴鎹畁um-operate鍒嗙被 -def load_num_operate_map(local_today_num_operate_map, code, source_datas, clear=False): - if local_today_num_operate_map.get(code) is None: - local_today_num_operate_map[code] = {} - if clear: - local_today_num_operate_map[code] = {} - - for data in source_datas: - key = "{}-{}-{}".format(data["val"]["num"], data["val"]["operateType"], data["val"]["price"]) - if local_today_num_operate_map[code].get(key) is None: - local_today_num_operate_map[code].setdefault(key, []) - local_today_num_operate_map[code].get(key).append(data) # 鍑忓幓鏃堕棿 @@ -104,32 +121,6 @@ max_time = __sub_time(cancel_data["val"]["time"], min_space) min_time = __sub_time(cancel_data["val"]["time"], max_space) return min_time, max_time - - -# 鏍规嵁涔版挙鏁版嵁(涓庝粖鏃ユ�荤殑鏁版嵁)璁$畻涔板叆鏁版嵁 -def get_buy_data_with_cancel_data(cancel_data, local_today_num_operate_map): - min_space, max_space = compute_time_space_as_second(cancel_data["val"]["cancelTime"], - cancel_data["val"]["cancelTimeUnit"]) - max_time = __sub_time(cancel_data["val"]["time"], min_space) - min_time = __sub_time(cancel_data["val"]["time"], max_space) - buy_datas = local_today_num_operate_map.get( - "{}-{}-{}".format(cancel_data["val"]["num"], "0", cancel_data["val"]["price"])) - if buy_datas is None: - # 鏃犳暟鎹� - return None, None - for i in range(0, len(buy_datas)): - data = buy_datas[i] - if int(data["val"]["operateType"]) != 0: - continue - if int(data["val"]["num"]) != int(cancel_data["val"]["num"]): - continue - if min_space == 0 and max_space == 0: - if compare_time(data["val"]["time"], min_time) == 0: - return data["index"], data - - elif compare_time(data["val"]["time"], min_time) > 0 and compare_time(data["val"]["time"], max_time) <= 0: - return data["index"], data - return None, None # 鍒ゆ柇鍗栨挙鐨勫崠淇″彿鏄惁鍦ㄧ洰鏍囦俊鍙蜂箣鍓� @@ -191,7 +182,8 @@ # 淇濆瓨l2鏈�鏂版暟鎹殑澶у皬 -@async_call +# TODO 娴嬭瘯鏁版嵁 +# @async_call def save_l2_latest_data_number(code, num): redis = l2_data_manager._redisManager.getRedis() redis.setex("l2_latest_data_num-{}".format(code), 3, num) -- Gitblit v1.8.0