| | |
| | | """ |
| | | 涨停时间管理器 |
| | | """ |
| | | |
| | | |
| | | import l2_data_util |
| | | import redis_manager |
| | | import tool |
| | | import global_util |
| | |
| | | redis = _redisManager.getRedis() |
| | | time = redis.get("limit_up_time-{}".format(code)) |
| | | if time is not None: |
| | | redis = _redisManager.getRedis() |
| | | redis.setex("limit_up_time-{}".format(code), tool.get_expire(), time) |
| | | global_util.limit_up_time[code] = time |
| | | |
| | | return time |
| | | |
| | | |
| | | def load_limit_up_time(): |
| | | redis = _redisManager.getRedis() |
| | | keys = redis.keys("limit_up_time-*") |
| | | for key in keys: |
| | | code = key.replace("limit_up_time-", "") |
| | | global_util.limit_up_time[code] = redis.get(key) |
| | | |
| | | |
| | | def sort_code_by_limit_time(codes): |
| | | if not global_util.limit_up_time: |
| | | load_limit_up_time() |
| | | list = [] |
| | | for code in codes: |
| | | limit_up_time = global_util.limit_up_time.get(code) |
| | | if limit_up_time is not None: |
| | | list.append((code, limit_up_time)) |
| | | new_s = sorted(list, key=lambda e: int(e[1].replace(":", ""))) |
| | | dict_ = {} |
| | | for i in range(0, len(new_s)): |
| | | dict_[new_s[i][0]] = i |
| | | return dict_ |
| | | |
| | | |
| | | if __name__ == "__main__": |
| | | print(sort_code_by_limit_time(["002393", "002476", "002614", "002750", "600082", "002751"])) |