🚀 AI 一键生成 ptrade 策略代码

ptrade 平台如何进行可转债量化交易?(附API与策略示例)

ptrade | 发布时间: 2026/5/21
以下内容由 EasyQuant 生成。

问题描述

ptrade可以交易可转债吗?

/

解决方案

ptrade 可以交易可转债吗?

答案是肯定的。 ptrade 量化交易平台在回测环境实盘交易环境中均明确支持可转债买卖业务。

不仅如此,ptrade 还提供了一系列专门针对可转债的 API 接口,方便量化开发者获取可转债行情、基础信息以及进行债转股操作。


ptrade 可转债核心 API 介绍

在编写可转债策略时,您可能会用到以下几个核心 API:

1. 获取可转债市场代码表 (get_cb_list)

该接口用于返回当前可转债市场的所有代码列表(包含停牌代码)。

  • 使用场景:仅在交易模块可用。
  • 示例
cb_list = get_cb_list()
log.info("当前可转债列表: %s" % cb_list)

2. 获取可转债基础信息 (get_cb_info)

获取可转债的基础信息,如正股代码、溢价率、转股价、到期日等。

  • 使用场景:研究、交易模块可用。
  • 返回字段bond_code (可转债代码), stock_code (正股代码), premium_rate (溢价率), convert_price (转股价格) 等。
  • 示例
cb_info_df = get_cb_info()
log.info(cb_info_df.head())

3. 可转债委托下单 (order 等系列函数)

使用 orderorder_targetorder_value 等函数可以直接对可转债进行买卖。

  • 注意事项:在 ptrade 中,每次交易可转债时,系统会自动取整 10 张(卖出所有持仓时不受此限制)。
  • 示例
# 买入 100 张某可转债
order('110033.SS', 100)

4. 债转股委托 (debt_to_stock_order)

用于将持有的可转债转换为正股。

  • 使用场景:仅在交易模块可用。
  • 示例
# 对持仓内的国贸转债进行转股操作,数量为 1000 张
debt_to_stock_order("110033.SS", -1000)

ptrade 可转债交易策略示例

以下是一个简单的可转债策略框架示例:在每天盘前获取可交易的可转债列表,并在盘中对特定的可转债进行买入操作。

def initialize(context):
    # 设置全局变量
    g.target_cb = '110033.SS' # 假设目标可转债为国贸转债
    set_universe(g.target_cb)
    # 每天 9:25 获取可交易转债列表
    run_daily(context, get_trade_cb_list, "9:25")

def before_trading_start(context, data):
    # 每日清空,避免取到昨日市场代码表
    g.trade_cb_list = []
    g.has_traded = False

def get_trade_cb_list(context):
    # 获取当天可交易的可转债代码列表
    cb_list = get_cb_list()
    cb_snapshot = get_snapshot(cb_list)
    # 过滤掉停牌、退市等状态的转债
    g.trade_cb_list = [cb_code for cb_code in cb_list if
                       cb_snapshot.get(cb_code, {}).get("trade_status") not in
                       [None, "HALT", "SUSP", "STOPT", "DELISTED"]]
    log.info("当天可交易的可转债数量:%s" % len(g.trade_cb_list))

def handle_data(context, data):
    # 如果目标转债在可交易列表中,且今日未交易过,则买入 100 张
    if g.target_cb in g.trade_cb_list and not g.has_traded:
        order(g.target_cb, 100)
        log.info("买入可转债: %s" % g.target_cb)
        g.has_traded = True

总结

ptrade 提供了完善的可转债量化交易支持。开发者可以结合 get_cb_info 获取的溢价率、转股价值等数据,编写如双低策略(低价格+低溢价率)、折价套利策略等经典的可转债量化策略。