Administrator
2024-10-31 b855b811e3753ffcb35f145c985bb32f4b550038
api/outside_api_command_callback.py
@@ -882,6 +882,8 @@
                                order_begin_pos = OrderBeginPosInfo(buy_single_index=0, buy_exec_index=0)
                            l2_data_util.load_l2_data(code)
                            total_datas = l2_data_util.local_today_datas.get(code)
                            if not total_datas:
                                continue
                            trade_index, is_default = transaction_progress.TradeBuyQueue().get_traded_index(code)
                            if trade_index is None:
                                trade_index = 0
@@ -1015,7 +1017,7 @@
                                    real_place_order_after_num += val["num"]
                            # 获取当日的量比
                            volume_rate = code_volumn_manager.get_volume_rate(code)
                            volume_rate = code_volumn_manager.CodeVolumeManager().get_volume_rate(code)
                            # 是否需要注意
                            need_pay_attention = (total_left_count <= 10 or total_left_num * float(
@@ -1182,8 +1184,8 @@
            elif ctype == "set_per_code_buy_money":
                # 设置单只票的买入金额
                money = data["money"]
                if money > 30000:
                    raise Exception("最多只能设置3w")
                if money > 50000:
                    raise Exception("最多只能设置5w")
                constant.BUY_MONEY_PER_CODE = money
                self.send_response({"code": 0, "data": {"money": constant.BUY_MONEY_PER_CODE}}, client_id, request_id)
            elif ctype == "get_per_code_buy_money":
@@ -1282,6 +1284,10 @@
                # 设置买入金额和数量
                normal = data["normal"]
                radical = data["radical"]
                default_buy_money = data["default_buy_money"]
                if int(default_buy_money) not in constant.AVAILABLE_BUY_MONEYS:
                    raise Exception("默认金额不在预设金额内")
                constant.BUY_MONEY_PER_CODE = default_buy_money
                BuyMoneyAndCountSetting().set_normal_buy_data(normal[0], json.loads(normal[1]))
                BuyMoneyAndCountSetting().set_radical_buy_data(radical[0], json.loads(radical[1]))
                data = {
@@ -1296,7 +1302,8 @@
                data = {
                    "normal": BuyMoneyAndCountSetting().get_normal_buy_setting(),
                    "radical": BuyMoneyAndCountSetting().get_radical_buy_setting(),
                    "moneys": constant.AVAILABLE_BUY_MONEYS
                    "moneys": constant.AVAILABLE_BUY_MONEYS,
                    "default_buy_money": constant.BUY_MONEY_PER_CODE
                }
                self.send_response({"code": 0, "data": data, "msg": f""},
                                   client_id,
@@ -1316,6 +1323,41 @@
                self.send_response({"code": 0, "data": data, "msg": f""},
                                   client_id,
                                   request_id)
            elif ctype == "get_place_order_settings":
                # 获取买入下单设置
                data = {
                    "radical_buy": {"price": (constant.MIN_CODE_RADICAL_BUY_PRICE, constant.MAX_CODE_RADICAL_BUY_PRICE),
                                    "zyltgb": constant.RADICAL_BUY_ZYLTGB_AS_YI_RANGES}}
                self.send_response({"code": 0, "data": data, "msg": f""},
                                   client_id,
                                   request_id)
            elif ctype == "set_place_order_settings":
                radical_buy = data.get("radical_buy")
                if radical_buy:
                    radical_buy = json.loads(radical_buy)
                    constant.MIN_CODE_RADICAL_BUY_PRICE = radical_buy["price"][0]
                    constant.MAX_CODE_RADICAL_BUY_PRICE = radical_buy["price"][1]
                    constant.RADICAL_BUY_ZYLTGB_AS_YI_RANGES = radical_buy["zyltgb"]
                self.send_response({"code": 0, "data": {}, "msg": f""},
                                   client_id,
                                   request_id)
            elif ctype == "get_buy_open_limit_up_codes":
                # 获取隔夜单排1的代码
                codes = gpcode_manager.BuyOpenLimitUpCodeManager().get_codes()
                if not codes:
                    codes = set()
                self.send_response({"code": 0, "data": list(codes), "msg": f""},
                                   client_id,
                                   request_id)
            elif ctype == "set_buy_open_limit_up_codes":
                # 设置隔夜单排1的代码
                codes = data.get("codes")
                gpcode_manager.BuyOpenLimitUpCodeManager().set_codes(set(codes))
                self.send_response({"code": 0, "data": list(codes), "msg": f""},
                                   client_id,
                                   request_id)
        except Exception as e:
            logging.exception(e)