Administrator
2025-07-08 f0bf43aa74bb21f92a8868dfa31b5419173d3f52
bug修复/策略完善
2个文件已修改
14 ■■■■■ 已修改文件
api/outside_api_callback.py 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
strategy/place_order_queue_manager.py 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/outside_api_callback.py
@@ -255,6 +255,7 @@
                if sv is None:
                    result_json = {"code": 1, "msg": '代码变量对象不存在'}
                else:
                    try:
                    place_order_record_manager.set_buy(record[0])
                    # 可以下单
                    # 判断是否可以买
@@ -277,6 +278,9 @@
                                                                                                         ))
                    async_log_util.info(logger_trade, f"{code}下单,板块:{record[2].keys()}")
                    result_json = {"code": 0, "msg": '处理成功'}
                    except Exception as e:
                        logger_trade.exception(e)
                        result_json = {"code": 0, "msg": str(e)}
        elif ctype == 'set_place_order_not_buy':
            id_ = data.get("id")
            place_order_record_manager = PlaceOrderRecordManager(tool.get_now_date_str())
strategy/place_order_queue_manager.py
@@ -36,11 +36,19 @@
            self.not_process_records = [(r[0], r[2], json.loads(r[3]), r[6],r[7], float(r[8]), float(r[9])) for r in results]
    def set_buy(self, id):
        record = None
        for r in self.not_process_records:
            if r[0] == id:
                self.not_process_records.remove(r)
                record = r
        if record:
            self.not_process_records.remove(record)
        self.mysql_db.execute(
            f"update low_suction_place_order_records set state={STATE_BUY},update_time=now() where id ='{id}'")
            # 将后续还未处理的同代码的拒绝
            ids = [r[0] for r in self.not_process_records if r[1] == record[1]]
            for id_ in ids:
                self.set_not_buy(id_, "已买入")
    def set_not_buy(self, id, desc):
        for r in self.not_process_records: