| | |
| | | |
| | | # 开盘啦禁止交易板块管理 |
| | | class KPLPlateForbiddenManager: |
| | | __redisManager = redis_manager.RedisManager(3) |
| | | """ |
| | | 不能买的板块管理 |
| | | """ |
| | | __redis_manager = redis_manager.RedisManager(3) |
| | | __kpl_forbidden_plates_cache = set() |
| | | |
| | | __instance = None |
| | |
| | | def __load_datas(cls): |
| | | __redis = cls.__get_redis() |
| | | try: |
| | | __kpl_forbidden_plates_cache = RedisUtils.smembers(__redis, "kpl_forbidden_plates") |
| | | cls.__kpl_forbidden_plates_cache = RedisUtils.smembers(__redis, "kpl_forbidden_plates") |
| | | finally: |
| | | RedisUtils.realse(__redis) |
| | | |
| | | @classmethod |
| | | def __get_redis(cls): |
| | | return cls.__redisManager.getRedis() |
| | | return cls.__redis_manager.getRedis() |
| | | |
| | | def save_plate(self, plate): |
| | | self.__kpl_forbidden_plates_cache.add(plate) |
| | | RedisUtils.sadd(self.__get_redis(), "kpl_forbidden_plates", plate) |
| | | RedisUtils.expire(self.__get_redis(), "kpl_forbidden_plates", tool.get_expire()) |
| | | |
| | | def delete_plate(self, plate): |
| | | self.__kpl_forbidden_plates_cache.discard(plate) |
| | | RedisUtils.srem(self.__get_redis(), "kpl_forbidden_plates", plate) |
| | | RedisUtils.expire(self.__get_redis(), "kpl_forbidden_plates", tool.get_expire()) |
| | | |
| | | def list_all(self): |
| | |
| | | |
| | | def list_all_cache(self): |
| | | return self.__kpl_forbidden_plates_cache |
| | | |
| | | def is_in_cache(self, plate): |
| | | if self.__kpl_forbidden_plates_cache and plate in self.__kpl_forbidden_plates_cache: |
| | | return True |
| | | return False |
| | | |
| | | |
| | | class LimitUpCodesPlateKeyManager: |
| | |
| | | @return: |
| | | """ |
| | | # 流入阈值 |
| | | THRESHOLD_MONEY = 50 * (tool.trade_time_sub(tool.get_now_time_str(), "09:30:00") // 60) + 1000 |
| | | THRESHOLD_MONEY = min(THRESHOLD_MONEY, 10000) |
| | | THRESHOLD_MONEY = max(THRESHOLD_MONEY, 1000) |
| | | THRESHOLD_MONEY = THRESHOLD_MONEY * 10000 |
| | | # THRESHOLD_MONEY = 0 |
| | | # THRESHOLD_MONEY = 50 * (tool.trade_time_sub(tool.get_now_time_str(), "09:30:00") // 60) + 1000 |
| | | # THRESHOLD_MONEY = min(THRESHOLD_MONEY, 10000) |
| | | # THRESHOLD_MONEY = max(THRESHOLD_MONEY, 1000) |
| | | # THRESHOLD_MONEY = THRESHOLD_MONEY * 10000 |
| | | THRESHOLD_MONEY = 0 |
| | | # 最大数量 |
| | | MAX_COUNT = cls.get_jingxuan_in_block_threshold_count() |
| | | # MAX_COUNT = cls.get_jingxuan_in_block_threshold_count() |
| | | |
| | | cls.top_in_list_cache = datas |
| | | blocks = set() |
| | |
| | | break |
| | | if has_code: |
| | | count += 1 |
| | | |
| | | if count >= MAX_COUNT: |
| | | break |
| | | if count == 10: |
| | | strong = cls.get_market_strong() |
| | | if strong is None: |
| | | strong = 60 |
| | | THRESHOLD_MONEY = int((1 - strong / 200) * data[3]) |
| | | # if count >= MAX_COUNT: |
| | | # break |
| | | # 记录精选流出日志 |
| | | async_log_util.info(logger_kpl_jx_in, f"原数据:{datas[:50]} 板块:{blocks}") |
| | | blocks = list(blocks) |