From 59fba698b03a51a8da5b56a919ebbf94d4784f74 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期五, 06 一月 2023 15:06:27 +0800 Subject: [PATCH] 买入策略修改 --- data_process.py | 129 ++---------------------------------------- 1 files changed, 7 insertions(+), 122 deletions(-) diff --git a/data_process.py b/data_process.py index fbe6a51..3f2c8a7 100644 --- a/data_process.py +++ b/data_process.py @@ -1,22 +1,10 @@ # 鏁版嵁澶勭悊 -import decimal import json import logging -import time as t - -import authority -import mysql_data import redis_manager -import gpcode_manager - -# 缁熻浠婃棩鍗栧嚭 -# 缁熻浠婃棩涔板叆 -import ths_util -import tool -from code_data_util import ZYLTGBUtil +from log import logger_l2_error __redisManager = redis_manager.RedisManager(0) - def parse(str): @@ -34,13 +22,17 @@ return dict["type"] except Exception as e: logging.exception(e) + logger_l2_error.error(str) + + print(str) return -1 def parseGPCode(str): dict = json.loads(str) data = dict["data"] - return data + add = dict.get("add") + return data, add def parseList(str): @@ -58,112 +50,5 @@ return data -def parseL2TradeQueueData(str): - dict = json.loads(str) - data = dict["data"] - code = data["code"] - trade_data = data["data"] - return code, trade_data - - -# 浠g爜瀵瑰簲鐨勪环鏍兼槸鍚︽纭� -def is_same_code_with_price(code, price): - # 鏄ㄦ棩鏀剁洏浠� - price_close = gpcode_manager.get_price_pre(code) - max_price = tool.to_price(decimal.Decimal(str(price_close)) * decimal.Decimal("1.1")) - min_price = tool.to_price(decimal.Decimal(str(price_close)) * decimal.Decimal("0.9")) - if min_price <= decimal.Decimal(str(price)) <= max_price: - return True - return False - - -# 淇濆瓨L2浜ゆ槗闃熷垪 -def saveL2TradeQueueData(code, data): - redis = __redisManager.getRedis() - data_str = json.dumps(data) - key = "trade-queue-{}".format(code) - # 淇濆瓨5s鐨勬暟鎹� - redis.setex(key, 5, data_str) - - -# 鑾峰彇L2浜ゆ槗闃熷垪 -def getL2TradeQueueData(code): - redis = __redisManager.getRedis() - key = "trade-queue-{}".format(code) - data_str = redis.get(key) - if data_str is None or len(data_str) <= 0: - return None - return json.loads(data_str) - - -# 淇濆瓨鑷敱娴侀�氬競鍊� -def saveZYLTSZ(datasList): - mysqldb = mysql_data.Mysqldb() - for data in datasList: - # 淇濆瓨 - _dict = {"_id": data["code"], "zyltgb": data["zyltgb"], "zyltgb_unit": data["zyltgb_unit"], - "update_time": int(round(t.time() * 1000))} - if float(data["zyltgb"]) > 0: - # 淇濆瓨10澶� - ZYLTGBUtil.save(data["code"], data["zyltgb"], data["zyltgb_unit"]) - result = mysqldb.select_one("select * from ths_zylt where _id='{}'".format(data["code"])) - if result is None: - mysqldb.execute("insert into ths_zylt(_id,zyltgb,zyltgb_unit,update_time) values ('{}','{}',{},{})".format(data["code"],data["zyltgb"],data["zyltgb_unit"],round(t.time()*1000))) - else: - mysqldb.execute("update ths_zylt set zyltgb='{}',zyltgb_unit={},update_time={} where _id='{}'".format(data["zyltgb"],data["zyltgb_unit"],round(t.time()*1000),data["code"])) - - -def saveClientActive(client_id, host, thsDead): - if client_id <= 0: - return - redis = __redisManager.getRedis(); - redis.setex("client-active-{}".format(client_id), 10, json.dumps((host, thsDead))) - ths_util.set_ths_dead_state(client_id, thsDead) - - -def getValidL2Clients(): - redis = __redisManager.getRedis(); - keys = redis.keys("client-active-*") - client_ids = [] - for k in keys: - _id = k.split("client-active-")[1] - # 瀹㈡埛绔悓鑺遍『娌″崱姝绘墠鑳藉姞鍏� - if not ths_util.is_ths_dead(_id): - client_ids.append(int(_id)) - l2_clients = authority.get_l2_clients() - - return list(set(client_ids).intersection(set(l2_clients))) - - -# 鑾峰彇瀹㈡埛绔疘P -def getActiveClientIP(client_id): - redis = __redisManager.getRedis(); - val = redis.get("client-active-{}".format(client_id)) - if val is None: - return None - val = json.loads(val) - return val[0] - - -# 鑾峰彇瀹㈡埛绔悓鑺遍『鐘舵�� -def getTHSState(client_id): - redis = __redisManager.getRedis(); - val = redis.get("client-active-{}".format(client_id)) - if val is None: - return None - val = json.loads(val) - return val[1] - - -# 淇濆瓨閲忚兘 -def saveCodeVolumn(datas): - redis = __redisManager.getRedis() - for key in datas: - k = "volumn-max-{}".format(key) - redis.setex(k, tool.get_expire(), datas[key]["max_volumn"]) - k = "volumn-latest-{}".format(key) - redis.setex(k, tool.get_expire(), datas[key]["latest_volumn"]) - - if __name__ == '__main__': - print(getActiveClientIP(3)) + pass -- Gitblit v1.8.0