diff --git a/telegram/8619211027341.session b/telegram/8619211027341.session index 75ca1de..c008fb3 100644 Binary files a/telegram/8619211027341.session and b/telegram/8619211027341.session differ diff --git a/交易/websea_交易.py b/交易/websea_交易.py index a0ba1a8..6df47d0 100644 --- a/交易/websea_交易.py +++ b/交易/websea_交易.py @@ -323,106 +323,99 @@ class WeexTransaction: self.time_start = None # 时间状态 避免同一个时段,发生太多消息 - # 获取当前时间 - current_time = time.localtime() - current_minute = current_time.tm_min + while True: - if current_minute < 30: - self.pbar.n = current_minute - self.pbar.refresh() - else: - self.pbar.n = current_minute - 30 - self.pbar.refresh() + # 获取当前时间 + current_time = time.localtime() + current_minute = current_time.tm_min - if current_minute not in [0, 1, 2, 3, 4, 5, 30, 31, 32, 33, 34, ]: # 判断是否是 新的30分钟了 + if current_minute < 30: + self.pbar.n = current_minute + self.pbar.refresh() + else: + self.pbar.n = current_minute - 30 + self.pbar.refresh() + + if current_minute not in [0, 1, 2, 3, 4, 5, 30, 31, 32, 33, 34, ]: # 判断是否是 新的30分钟了 # if current_minute not in range(60): # 判断是否是 新的30分钟了 - time.sleep(10) - return + time.sleep(10) + continue - if self.kline_3 and self.get_now_time() == self.kline_3["id"]: - return + if self.kline_3 and self.get_now_time() == self.kline_3["id"]: + continue - new_price_datas = self.get_price() - if not new_price_datas: - logger.info("获取最新价格有问题!!!") + new_price_datas = self.get_price() + if not new_price_datas: + logger.info("获取最新价格有问题!!!") - self.send_dingtalk_message(message_content=f"获取价格有问题!!!", type=0) - return - - new_price_datas1 = sorted(new_price_datas, key=lambda x: x["id"]) - self.kline_1, self.kline_2, self.kline_3 = new_price_datas1[-3:] - - if self.time_start == self.get_now_time(): - return - - self.time_start = self.get_now_time() - - self.page.get(url="https://www.websea.com/zh-CN/futures/ETH-USDT") # 打开网页 - - if self.get_token(): # 获取token - logger.info("获取token成功!!!") - else: - logger.info("获取token失败!!!") - self.send_dingtalk_message(message_content=f"获取token失败!!!", type=0) - return - - if self.get_position_status(): - logger.info("获取仓位信息成功!!!") - else: - logger.info("获取仓位信息失败!!!") - - self.send_dingtalk_message(message_content=f"获取仓位信息失败!!!", type=0) - return - - try: - if self.start == 1: - if is_bearish(self.kline_1) and is_bearish(self.kline_2): - logger.success(f"{datetime.datetime.now()},第一根信号:{self.kline_1},{self.kline_2},平多") - self.send_dingtalk_message( - message_content=f"第一根信号:{self.kline_1},{self.kline_2},平多") - - self.page.ele('x://*[normalize-space(text())= "市价全平"]').scroll.to_see(center=True) - time.sleep(1) - self.page.ele('x://*[normalize-space(text())= "市价全平"]').click() - self.start = 0 - elif self.start == -1: - if is_bullish(self.kline_1) and is_bullish(self.kline_2): - logger.success(f"{datetime.datetime.now()},第一根信号:{self.kline_1},{self.kline_2},平空") - self.send_dingtalk_message( - message_content=f"第一根信号:{self.kline_1},{self.kline_2},平空") - - self.page.ele('x://*[normalize-space(text())= "市价全平"]').scroll.to_see(center=True) - time.sleep(1) - self.page.ele('x://*[normalize-space(text())= "市价全平"]').click() - self.start = 0 - except: - self.send_dingtalk_message(message_content=f"止损平仓出错!!!", type=0) - return - - self.direction, signal_key = self.check_signal(prev=self.kline_1, curr=self.kline_2) # 判断信号 - - if self.direction: - try: - self.to_do_page() - except Exception as e: - self.send_dingtalk_message(message_content=f"购买操作失败,{e}", type=0) + self.send_dingtalk_message(message_content=f"获取价格有问题!!!", type=0) return - self.pbar.reset() # 重置进度条 - self.send_dingtalk_message( - message_content= - f"目前有持仓:{"无" if self.start == 0 else ("多" if self.start == 1 else "空")}," - f"当前信号:{"无" if not self.direction else ("多" if self.direction == "long" else "空")}" - ) + new_price_datas1 = sorted(new_price_datas, key=lambda x: x["id"]) + self.kline_1, self.kline_2, self.kline_3 = new_price_datas1[-3:] + + self.time_start = self.get_now_time() + + self.page.get(url="https://www.websea.com/zh-CN/futures/ETH-USDT") # 打开网页 + + if self.get_token(): # 获取token + logger.info("获取token成功!!!") + else: + logger.info("获取token失败!!!") + self.send_dingtalk_message(message_content=f"获取token失败!!!", type=0) + return + + if self.get_position_status(): + logger.info("获取仓位信息成功!!!") + else: + logger.info("获取仓位信息失败!!!") + + self.send_dingtalk_message(message_content=f"获取仓位信息失败!!!", type=0) + return + + try: + if self.start == 1: + if is_bearish(self.kline_1) and is_bearish(self.kline_2): + logger.success(f"{datetime.datetime.now()},第一根信号:{self.kline_1},{self.kline_2},平多") + self.send_dingtalk_message( + message_content=f"第一根信号:{self.kline_1},{self.kline_2},平多") + + self.page.ele('x://*[normalize-space(text())= "市价全平"]').scroll.to_see(center=True) + time.sleep(1) + self.page.ele('x://*[normalize-space(text())= "市价全平"]').click() + self.start = 0 + elif self.start == -1: + if is_bullish(self.kline_1) and is_bullish(self.kline_2): + logger.success(f"{datetime.datetime.now()},第一根信号:{self.kline_1},{self.kline_2},平空") + self.send_dingtalk_message( + message_content=f"第一根信号:{self.kline_1},{self.kline_2},平空") + + self.page.ele('x://*[normalize-space(text())= "市价全平"]').scroll.to_see(center=True) + time.sleep(1) + self.page.ele('x://*[normalize-space(text())= "市价全平"]').click() + self.start = 0 + except: + self.send_dingtalk_message(message_content=f"止损平仓出错!!!", type=0) + return + + self.direction, signal_key = self.check_signal(prev=self.kline_1, curr=self.kline_2) # 判断信号 + + if self.direction: + try: + self.to_do_page() + except Exception as e: + self.send_dingtalk_message(message_content=f"购买操作失败,{e}", type=0) + return + + self.pbar.reset() # 重置进度条 + self.send_dingtalk_message( + message_content= + f"目前有持仓:{"无" if self.start == 0 else ("多" if self.start == 1 else "空")}," + f"当前信号:{"无" if not self.direction else ("多" if self.direction == "long" else "空")}" + ) if __name__ == '__main__': - while True: - try: - WeexTransaction( - tge_id=191303, - ).action() - except: - pass - - time.sleep(30) + WeexTransaction( + tge_id=191303, + ).action()