3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
针对您在 JoinQuant(聚宽)平台上获取可转债行情遇到的问题,以下是详细的解答和当前的解决方案:
get_price() 接口是否支持可转债?目前,JoinQuant 的核心行情接口 get_price() 暂不支持直接查询可转债的行情数据。
根据 JoinQuant API 文档,get_price 以及 get_all_securities 支持的标的类型(types)主要包括:股票 (stock)、基金 (fund, etf, lof 等)、指数 (index)、期货 (futures) 和期权 (options)。可转债尚未被纳入这些标准行情接口的查询范围内。
因此,当您尝试传入 '123015.XSHE' 时,系统会提示“找不到标的”。
当前的正确做法:
正如您所尝试的,目前获取可转债日线行情和基本面数据的唯一官方途径是通过 bond.run_query 查询底层数据库。您的代码是正确的:
from jqdata import *
# 获取可转债日线行情
p = bond.run_query(
query(bond.CONBOND_DAILY_PRICE).filter(
bond.CONBOND_DAILY_PRICE.code == '123015',
bond.CONBOND_DAILY_PRICE.date == '2021-06-08'
)
)
print(p)
(注:建议 code 字段传入字符串格式,以防部分代码前导零丢失)
subscribe 订阅?目前不支持。
根据 JoinQuant API 文档的明确说明:
get_ticks() 接口:目前仅支持“股票、期货、50ETF期权、股票指数及场内基金”的 tick 数据。subscribe() 接口:目前仅支持订阅“股票、期货、中证指数、场内基金”的 tick 事件。由于可转债尚未接入标准的高频行情推送系统,因此您无法使用 subscribe('123015.XSHE', 'tick') 来触发 handle_tick 事件,也无法通过 get_current_tick() 或 get_ticks() 获取其高频快照。
随着可转债市场的日益火热,量化社区对可转债高频数据和标准接口(如 get_price)的呼声越来越高。虽然目前聚宽官方尚未公布将可转债全面接入 get_price 和 Tick 级订阅的具体时间表,但您可以:
bond.run_query 获取每日收盘后的数据进行盘后分析和次日调仓。