| | |
| | | key = "buy1_volumn_codes" |
| | | return self.__get_redis().smembers(key) |
| | | |
| | | def get_buy_1_volumn(self, code, time_str): |
| | | key = "buy1_volumn-{}-{}".format(code, time_str) |
| | | return self.__get_redis().get(key) |
| | | |
| | | # 返回是否需要更新数据,是否需要撤单,撤单原因 |
| | | def save(self, code, time_str, volumn, price): |
| | | # 客户端数据未加载出来过滤 |
| | |
| | | # 下降趋势 |
| | | if volumn < last_volumn: |
| | | if (last_volumn - volumn) / last_volumn > 0.5: |
| | | return True, True, "连续两次封单量降幅达50%以上,时间:{} 封单量:{}-{}".format(time_str, last_volumn, volumn) |
| | | return True, True, "买1主动触发,连续两次封单量降幅达50%以上,时间:{} 封单量:{}-{}".format(time_str, last_volumn, |
| | | volumn) |
| | | # 当封单额小于1000万需要撤单 |
| | | min_num = 10000000 // (limit_up_price * 100) |
| | | if volumn < min_num: |
| | | return True, True, "最新封单额小于1000万,时间:{} 封单量:{}".format(time_str, volumn) |
| | | return True, True, "买1主动触发,最新封单额小于1000万,时间:{} 封单量:{}".format(time_str, volumn) |
| | | |
| | | return True, False, None |
| | | |
| | |
| | | return None |
| | | return json.loads(val) |
| | | |
| | | # 添加记录 |
| | | |
| | | def __add_buy1_code(self, code): |
| | | key = "buy1_volumn_codes" |
| | | self.__get_redis().sadd(key, code) |
| | | self.__get_redis().expire(key, 10) |
| | | |
| | | # 获取当前正在监听的代码 |
| | | |
| | | def get_current_codes(self): |
| | | key = "buy1_volumn_codes" |
| | | return self.__get_redis().smembers(key) |
| | | |
| | | def save_recod(self, code, data): |
| | | _str = json.dumps(data) |
| | | if code in self.__filter_dict and self.__filter_dict[code] == _str: |
| | | return False |
| | | # 添加买1记录 |
| | | self.__add_buy1_code(code) |
| | | self.__filter_dict[code] = _str |
| | | self.__save_latest_recod(code, data) |
| | | buy_time = data["buyTime"] |