3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在PTrade量化交易平台中,set_universe 函数是编写策略时最常用的基础设置函数之一,用于指定策略需要关注和操作的标的(股票池)。同时,为了区分不同市场的证券,PTrade对代码后缀有严格的规范。
以下是详细的使用指南和后缀说明:
set_universe 函数如何使用?set_universe(security_list) 用于设置或者更新此策略要操作的股票池。在股票策略中,该函数主要用于设定 get_history 等行情获取函数的默认 security_list 入参。
使用场景:仅在回测、交易模块可用,通常在 initialize (初始化) 函数中调用。
str) 或字符串列表 (list[str])。示例 1:设置单只股票
def initialize(context):
# 设置只操作恒生电子一只股票
set_universe('600570.SS')
示例 2:设置多只股票
def initialize(context):
# 设置操作恒生电子和平安银行
g.security = ['600570.SS', '000001.SZ']
set_universe(g.security)
def handle_data(context, data):
# 获取初始化设定的股票池行情数据,security_list=None 时默认使用 set_universe 设置的股票池
his = get_history(5, '1d', 'close', security_list=None)
在PTrade中,为了准确识别不同交易所和不同类型的交易品种,代码后面必须加上特定的后缀(尾缀)。PTrade支持全称尾缀和简称尾缀。
| 市场品种 | 尾缀全称 | 尾缀简称 |
|---|---|---|
| 上海市场证券 (如沪市A股、科创板) | XSHG | SS |
| 深圳市场证券 (如深市A股、创业板) | XSHE | SZ |
| 指数 (如沪深300) | XBHS | 无 |
| 中金所期货 | CCFX | 无 |
| 上海股票期权 | XSHO | 无 |
| 深圳股票期权 | XSZO | 无 |
| 上海港股通 | XHKG-SS | 无 |
| 深圳港股通 | XHKG-SZ | 无 |
600570,在PTrade中应写为 '600570.SS' 或 '600570.XSHG'。000001,在PTrade中应写为 '000001.SZ' 或 '000001.XSHE'。000300,在PTrade中应写为 '000300.XBHS'(注意:部分接口如 get_index_stocks 获取指数成分股时,尾缀可能要求为 .SS 或 .XBHS,具体请参考对应API文档)。'IF2112.CCFX'。.SS, .SZ),因为它们更简短且在大多数API中兼容性最好。