| | |
| | | SERVER_HOST = "43.138.167.68" |
| | | # SERVER_HOST = "192.168.3.122" |
| | | WEB_HOST = "192.168.3.252" |
| | | IS_TEST = False |
| | | IS_TEST = True |
| | |
| | | return result_str |
| | | finally: |
| | | client.close() |
| | | |
| | | result_str = request_position_codes() |
| | | result = json.loads(result_str) |
| | | if result["code"] == 0: |
| | |
| | | return result_str |
| | | finally: |
| | | client.close() |
| | | |
| | | try: |
| | | codes = self.get_position_codes() |
| | | if codes: |
| | |
| | | client.close() |
| | | return result.decode("gbk") |
| | | |
| | | def focus(self, hwnd, code): |
| | | @classmethod |
| | | def focus(cls, hwnd, code): |
| | | try: |
| | | int_buffer = array.array("L", [0]) |
| | | char_buffer = array.array('b', |
| | |
| | | return False |
| | | |
| | | # 设置代码,请求代码属性 |
| | | def setCode(self, code): |
| | | @classmethod |
| | | def setCode(cls, code): |
| | | # 获取代码属性描述 |
| | | # auto_focus = setting.get_float_frame_auto_focus() |
| | | if True: |
| | | print("是否有管理员权限", self.is_admin()) |
| | | # 窗口显示在最前面 |
| | | hwnds = win32_util.search_window("悬浮盯盘") |
| | | if hwnds: |
| | | print("句柄", hwnds[0]) |
| | | time.sleep(0.1) |
| | | wx.CallAfter(lambda: self.focus(hwnds[0], code)) |
| | | wx.CallAfter(lambda: cls.focus(hwnds[0], code)) |
| | | return |
| | | |
| | | # wx.CallAfter(lambda: self.SetFocus()) |
| | | |
| | | try: |
| | | result = self.__request_attribute(code) |
| | | result = json.loads(result) |
| | | if result['code'] == 0: |
| | | code_info = result['data']['code_info'] |
| | | desc = f"{code_info[1]} {code_info[0]} {result['data']['desc']}" |
| | | wx.CallAfter(lambda: self.label_attribute.SetLabelText(desc)) |
| | | except Exception as e: |
| | | wx.CallAfter(lambda: self.label_attribute.SetLabelText(str(e))) |
| | | # try: |
| | | # result = self.__request_attribute(code) |
| | | # result = json.loads(result) |
| | | # if result['code'] == 0: |
| | | # code_info = result['data']['code_info'] |
| | | # desc = f"{code_info[1]} {code_info[0]} {result['data']['desc']}" |
| | | # wx.CallAfter(lambda: self.label_attribute.SetLabelText(desc)) |
| | | # except Exception as e: |
| | | # wx.CallAfter(lambda: self.label_attribute.SetLabelText(str(e))) |
| | | |
| | | def OnExit(self, e): |
| | | try: |
| | |
| | | average_line_1m = axes2.plot([], [], color='yellow', linewidth=1, linestyle='-') |
| | | # axes2.legend(loc='upper left') |
| | | cannvas = FigureCanvas(pannel, -1, figure_score) |
| | | axes2.text(1, 11.5, r'现价:0.0 涨幅:0.00% \n留:0%', fontsize=15, color='red') |
| | | axes2.text(-1, -11.5, r'现价:0.0 涨幅:0.00% \n留:0%', fontsize=15, color='red') |
| | | axes2.text(1, 11.5, r'', fontsize=15, color='red') |
| | | axes2.text(-1, -11.5, r'', fontsize=15, color='red') |
| | | |
| | | axes2.spines['top'].set_visible(False) |
| | | axes.spines['top'].set_visible(False) |
| | |
| | | if codes: |
| | | juejin_core.GPCodeManager().set_codes(codes) |
| | | except: |
| | | pass |
| | | pass |
| | | |
| | | def OnInit(self): |
| | | self.SetAppName(APP_TITLE) |
| | |
| | | # tick数据 |
| | | data = data["data"] |
| | | code = data["code"] |
| | | if abs(float(data['rate'])) > 0.4: |
| | | continue |
| | | try: |
| | | if code not in code_datas: |
| | | code_datas[code] = [] |
| | |
| | | wx.CallAfter(lambda: global_datas["tickFrame"].Show()) |
| | | elif type_ == "set_code": |
| | | code = data["code"] |
| | | t1 = threading.Thread(target=lambda: global_datas["floatFrame"].setCode(code)) |
| | | t1 = threading.Thread(target=FloatFrame.setCode(code)) |
| | | # 后台运行 |
| | | t1.setDaemon(True) |
| | | t1.start() |
| | |
| | | order: res.data.trade_data.trade_state.order |
| | | } |
| | | } else { |
| | | app.trade_data = { |
| | | res.data.trade_data= { |
| | | order: false |
| | | }; |
| | | app.trade_data = res.data.trade_data |
| | | } |
| | | app.kpl_code_info = res.data.kpl_code_info; |
| | | app.initiative_buy_codes = res.data.initiative_buy_codes; |
| | |
| | | 600088 |
| | | 600327 |
| | | 600571 |
| | | 601599 |
| | | 002280 |
| | | 600960 |
| | | 002117 |
| | |
| | | [config] |
| | | stay_on_top = 1 |
| | | window_info = [[-1711, 194, 1280, 800], [1473, 621, 320, 195]] |
| | | xgb_window_info = [-2247, 492, 1920, 1009] |
| | | xgb_window_info = [-1921, -8, 1920, 1017] |
| | | window_watch_float_info = [146, 419, 435, 220] |
| | | window_tick_info = [-1431, 206, 1227, 661] |
| | | kp_second_window_info = [-1307, 218, 639, 797] |
| | | window_tick_info = [-1445, 198, 1227, 661] |
| | | kp_second_window_info = [827, 332, 639, 797] |
| | | code_attribute_window_info = [-650, 315, 291, 278] |
| | | client = hxh |
| | | float_frame_auto_focus = 1 |