| | |
| | | # 下单L2的安全笔数管理 |
| | | import json |
| | | |
| | | from db.redis_manager import RedisUtils |
| | | from l2 import l2_data_source_util |
| | | from trade import l2_trade_factor |
| | | from db import redis_manager |
| | |
| | | # 记录每一次的处理进度 |
| | | def __save_compute_progress(self, code, last_buy_single_index, process_index, buy_num, cancel_num): |
| | | key = "safe_count_l2-{}-{}".format(code, last_buy_single_index) |
| | | self.__getRedis().setex(key, tool.get_expire(), |
| | | json.dumps((last_buy_single_index, process_index, buy_num, cancel_num))) |
| | | RedisUtils.setex(self.__getRedis(), key, tool.get_expire(), |
| | | json.dumps((last_buy_single_index, process_index, buy_num, cancel_num))) |
| | | |
| | | # 返回数据与更新时间 |
| | | def __get_compute_progress(self, code, last_buy_single_index): |
| | | key = "safe_count_l2-{}-{}".format(code, last_buy_single_index) |
| | | val = self.__getRedis().get(key) |
| | | val = RedisUtils.get( self.__getRedis(), key) |
| | | if val is None: |
| | | return None, -1, 0, 0 |
| | | val = json.loads(val) |
| | |
| | | # 保存最近的下单信息 |
| | | def __save_latest_place_order_info(self, code, buy_single_index, buy_exec_index, cancel_index): |
| | | key = "latest_place_order_info-{}".format(code) |
| | | self.__getRedis().setex(key, tool.get_expire(), json.dumps((buy_single_index, buy_exec_index, cancel_index))) |
| | | RedisUtils.setex( self.__getRedis(), key, tool.get_expire(), json.dumps((buy_single_index, buy_exec_index, cancel_index))) |
| | | |
| | | def __get_latest_place_order_info(self, code): |
| | | key = "latest_place_order_info-{}".format(code) |
| | | val = self.__getRedis().get(key) |
| | | val = RedisUtils.get(self.__getRedis(), key) |
| | | if val is None: |
| | | return None, None, None |
| | | val = json.loads(val) |
| | |
| | | |
| | | def __get_all_compute_progress(self, code): |
| | | key_regex = f"safe_count_l2-{code}-*" |
| | | keys = self.__getRedis().keys(key_regex) |
| | | keys = RedisUtils.keys(self.__getRedis(), key_regex) |
| | | vals = [] |
| | | for k in keys: |
| | | val = self.__getRedis().get(k) |
| | | val = RedisUtils.get(self.__getRedis(), k) |
| | | val = json.loads(val) |
| | | vals.append(val) |
| | | return vals |
| | | |
| | | def clear_data(self, code): |
| | | key_regex = f"safe_count_l2-{code}-*" |
| | | keys = self.__getRedis().keys(key_regex) |
| | | keys = RedisUtils.keys(self.__getRedis(), key_regex) |
| | | for k in keys: |
| | | self.__getRedis().delete(k) |
| | | RedisUtils.delete(self.__getRedis(),k) |
| | | |
| | | key = f"latest_place_order_info-{code}" |
| | | self.__getRedis().delete(key) |
| | | RedisUtils.delete( |
| | | self.__getRedis(),key) |
| | | |
| | | # 获取基础的安全笔数 |
| | | def __get_base_save_count(self, code, is_first): |