3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
是的,Ptrade量化平台完全支持可转债交易。 根据Ptrade官方API文档,无论是回测环境还是实盘交易环境,均明确支持“可转债买卖”这一业务类型。
此外,Ptrade还提供了一系列专门针对可转债的API接口,方便量化开发者获取数据和执行交易。
在Ptrade中开发可转债策略,主要会用到以下几个核心函数:
get_cb_list)该函数用于获取当前可转债市场的所有代码列表(包含停牌代码)。
get_cb_info)获取可转债的详细基础数据,返回DataFrame格式。包含的重要字段有:
bond_code: 可转债代码stock_code: 正股代码premium_rate: 溢价率convert_price: 转股价格convert_value: 转股价值debt_to_stock_order)用于执行可转债转股操作。
debt_to_stock_order(security, amount)order / order_target 等)可转债的买卖与股票类似,直接使用 order() 系列函数即可。
在编写可转债策略时,必须注意以下几个Ptrade平台的特殊规定:
以下是一个简单的示例,展示如何在Ptrade中获取可转债列表并进行买卖操作:
def initialize(context):
# 设定一个可转债代码,例如国贸转债
g.security = '110033.SS'
set_universe(g.security)
def before_trading_start(context, data):
# 获取可转债基础信息(研究/交易模块可用)
cb_df = get_cb_info()
if not cb_df.empty:
log.info("成功获取可转债基础信息")
def handle_data(context, data):
# 获取当前价格
current_price = data[g.security]['close']
# 假设策略逻辑:价格低于110元时买入100张
if current_price < 110 and get_position(g.security).amount == 0:
# 注意:可转债价格精度为3位小数,数量需为10的整数倍
order(g.security, 100, limit_price=round(current_price + 0.001, 3))
log.info(f"买入可转债: {g.security}")
# 假设策略逻辑:价格高于130元时全部卖出
elif current_price > 130 and get_position(g.security).amount > 0:
order_target(g.security, 0)
log.info(f"卖出可转债: {g.security}")
# 债转股示例(需满足转股期等条件)
# debt_to_stock_order(g.security, -100)
总结来说,Ptrade为可转债量化提供了完善的基础设施,开发者可以利用这些API实现双低策略、折价套利、网格交易等多种经典的可转债量化策略。