2026年量化角度看可转债(十):回测代码框架构建

  • 来源:长江证券
  • 发布时间:2026/02/27
  • 浏览次数:58
  • 举报
相关深度报告REPORTS

量化角度看可转债(十):回测代码框架构建.pdf

量化角度看可转债(十):回测代码框架构建。工具化模块功能综述模块概述:构建以Python为核心的量化投研框架,采用模块化设计思想,将数据更新和策略回测两大环节进行了函数化封装与标准化存储,形成了数据库搭建到回测结果输出的自动化闭环工具,实现了研究过程的规范化与系统化。数据获取与更新模块:自动更新全市场转债列表,批量获取转债静态属性、指数利率数据、时序行情数据,自动计算转债估值和定价等核心衍生指标,构建标准化数据库。策略构建与回测模块:多条件筛选转债池,支持自定义因子排序(如双低)和组合构建,可设置行业权重上限,实现策略净值与持仓明细的输出。数据获取与更新模块数据文件及参数:静态信息截面:存储转...

工具化模块功能综述

本工具构建了以 Python 为核心的量化投研框架,将数据更新和策略回测两大环节进行 了函数化封装与标准化存储,形成了数据库搭建到回测结果输出的自动化工具,实现了 研究过程的规范化与系统化。 工具主要包含两大核心模块:数据获取与更新、策略构建与回测。

数据获取与更新

工具通过定义 update_bond_static 和 update_market_panel 两大核心函数,实现对可 转债截面信息和时序行情的自动化维护。

该模块中包含定价模型子模块,设置了 BS 模型定价和二叉树定价两种典型的可转债定 价方法,提供理论价格参考。

策略构建与回测

通过 run_backtest 函数实现基础的策略回测框架,支持回测净值和历史持仓输出。

该模块中包含了转债池筛选和行业权重调整两个子模块。可转债池筛选:基础转债池,包括设置价格、评级、剩余期限和余额等限制; 行业权重调整:实现行业分散化控制,防止单一行业过度暴露。

数据获取与更新模块

本模块实现了可转债策略的数据准备、定期更新与衍生指标生成,形成基础完整的数据 库框架。 数据库由截面数据表、指数与利率数据表、行情面板数据表三部分构成。

数据文件及参数

截面数据表:存储转债的固定属性(上市日、到期日、发行规模、特殊条款等),一般定 期或在新债上市时更新。

指数与利率数据表:记录交易日级别的市场基准数据(中证转债指数、Wind 可转债等 权指数、Wind 可转债双低指数等,作为策略回测时的比较基准)以及 10 年期国债到期 收益率(用作定价模型中的无风险利率输入)。

行情面板数据:整合可转债行情、正股行情和衍生计算指标等信息,构成转债策略回测 直接可使用的面板数据。

数据更新流程分为截面静态数据更新与行情面板数据更新两个独立板块。

截面静态数据

截面数据更新阶段,鉴于数据接口的特性及历史数据的复杂性,采用了“全样本并集构 建→清洗解析→增量去重”的三段式处理流程。全样本代码池构建:调用数据接口分别获取当前“在市可转债”与“已退市转债” 两个板块的成分券列表,取二者并集构建完整代码池; 数据清洗解析:依次调用 clean_static_base 和 optional_processors_static 函数, 对原始数据进行基础清洗和字段解析;变量增量去重:将新获取的数据与本地读取的历史数据进行纵向合并,以转债代码 为主键对重复数据去重。

行情面板数据

行情面板数据更新阶段,分为数据合并、分段下载、转债常用指标统计和转债定价指标 四个部分。

数据合并

读取本地静态表获取全量转债代码池,并解析出对应的正股代码列表。数据获取后,将 正股行情匹配转债代码,随后进行连接与合并。

分段下载

考虑到数据下载的限制,利用 load_wsd 函数,采取时间切片策略分段下载数据。循环 结束后,将所有暂存的数据片段纵向拼接,还原为完整的连续时间序列。


(本文仅供参考,不代表我们的任何投资建议。如需使用相关信息,请参阅报告原文。)

相关报告
评论
  • 相关文档
  • 相关文章
  • 全部热门
  • 本年热门
  • 本季热门
  • 全部热门
  • 本年热门
  • 本季热门
  • 最新文档
  • 最新精读
分享至