Administrator
2024-08-15 0a380986268c27cba7bb461c0b6550b8e72075d1
可转债买卖接口
2个文件已修改
32 ■■■■■ 已修改文件
test/test.py 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
trade/trade_strategy.py 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
test/test.py
@@ -1,2 +1,7 @@
from code_atrribute import history_k_data_util
if __name__ == "__main__":
    pass
    results = history_k_data_util.HistoryKDatasUtils.get_gp_current_info(["600505"])
    if results:
        current_price = results[0]["price"]
        print(current_price)
trade/trade_strategy.py
@@ -329,14 +329,35 @@
                if not current_price:
                    raise Exception("尚未获取到现价")
                price = round(tool.get_buy_max_price(current_price), 3)
                result = huaxin_trade_api.order(1, code, volume, price, blocking=True)
                result = huaxin_trade_api.order(1, code, volume, price, blocking=True, order_ref=order_ref)
                if result:
                    if result["code"] == 0:
                        sinfo = result["data"]["sinfo"]
                        # 需要立即卖的数据
                        cb_data_util.need_sell_sinfos.add(sinfo)
                        # 记录当前的sinfo
                async_log_util.info(logger_trade, f"API买结果: {result}")
                async_log_util.info(logger_trade, f"API可转债买结果: {result}")
                self.send_response(result, client_id, request_id)
            except Exception as e:
                if str(e).find("超时") >= 0:
                    self.send_response({"code": 0, "data": {"orderRef": order_ref}}, client_id, request_id)
                else:
                    raise e
        elif ctype == "sell_cb_for_commission":
            # 用可转债填交易费漏洞
            code = data["code"]
            volume = data["volume"]
            current_price = None
            results = history_k_data_util.HistoryKDatasUtils.get_gp_current_info([code])
            if results:
                current_price = results[0]["price"]
            order_ref = huaxin_util.create_order_ref()
            try:
                if not current_price:
                    raise Exception("尚未获取到现价")
                price = round(tool.get_buy_min_price(current_price) + 0.001, 3)
                result = huaxin_trade_api.order(2, code, volume, price, order_ref=order_ref,  blocking=True)
                async_log_util.info(logger_trade, f"API可转债卖结果: {result}")
                self.send_response(result, client_id, request_id)
            except Exception as e:
                if str(e).find("超时") >= 0: