🚀 AI 一键生成 ptrade 策略代码
立即体验

如何在 PTrade 中使用 get_industry_stocks 接口获取证监会行业成分股?

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

问题描述

请根据以下 SEO 主题生成完整页面内容:

Title: PTrade 板块选股:结合证监会行业代码获取成分股列表

Question: 如何在 PTrade 中通过 get_industry_stocks 接口获取指定证监会行业编号下的所有股票?

解决方案

如何在 PTrade 中通过 get_industry_stocks 接口获取指定证监会行业编号下的所有股票?

在 PTrade 量化交易平台中,通过行业板块进行选股是构建量化策略的常见需求。借助 get_industry_stocks 接口,投资者可以轻松提取指定证监会行业或聚源行业分类下的所有成分股,并将其设置为策略的运行股票池。


1. get_industry_stocks 函数说明

get_industry_stocks 用于获取特定行业下的所有股票代码列表。

接口语法:

get_industry_stocks(industry_code)

参数说明:

  • industry_code (str): 行业编码,尾缀必须是 .XBHS。例如:
    • 农业:A01000.XBHS
    • 软件和信息技术服务业:I65000.XBHS
    • 医药制造业:C27000.XBHS

返回值:

  • list[str]: 包含该行业所有股票代码的列表,例如 ['600108.SS', '300087.SZ', ...]

注意事项:该函数获取的是调用当下的最新行业成分股数据,在历史回测中使用时需注意未来函数风险。


2. 常见证监会行业代码示例

证监会行业代码 行业名称
A01000.XBHS 农业
C27000.XBHS 医药制造业
C39000.XBHS 计算机、通信和其他电子设备制造业
I65000.XBHS 软件和信息技术服务业
J66000.XBHS 货币金融服务
K70000.XBHS 房地产业

3. 代码示例:获取行业成分股并构建策略股票池

以下示例展示了如何在盘前阶段(before_trading_start)获取农业板块(A01000.XBHS)的所有股票,并将其设置为当前策略的股票池:

def initialize(context):
    # 初始化全局变量
    g.industry_code = 'A01000.XBHS'  # 证监会行业编号:农业

def before_trading_start(context, data):
    # 获取农业板块下的所有成分股
    stocks = get_industry_stocks(g.industry_code)
    
    # 打印获取到的股票数量和列表
    log.info('获取到的农业板块股票数量: %s' % len(stocks))
    log.info('股票列表: %s' % stocks)
    
    # 将获取到的行业成分股设置为策略股票池
    set_universe(stocks)

def handle_data(context, data):
    # 盘中逻辑处理
    pass

4. 常见问题与最佳实践

  1. 格式规范:传入 get_industry_stocks 的参数必须带有 .XBHS 后缀,否则可能无法正确获取数据。
  2. 配合盘前事件使用:建议在 before_trading_start 中调用此接口更新股票池 set_universe,避免在 handle_data 盘中高频重复调用。