PTrade中set_universe函数的参数格式是什么?
设置股票池时不知道参数应该怎么写
问题描述
解决方案
在 PTrade 量化交易平台中,set_universe 函数用于设置或者更新策略要操作的股票池。它的参数格式非常灵活,既支持传入单只股票,也支持传入多只股票的列表。
函数原型
set_universe(security_list)
参数说明
- security_list: 股票列表,支持单支或者多支股票。数据类型可以是字符串(
str)或字符串列表(list[str])。
代码示例
1. 设置单只股票作为股票池
如果你只需要操作一只股票,可以直接传入该股票的代码字符串(注意需要带上市场尾缀,如 .SS 代表上交所,.SZ 代表深交所):
def initialize(context):
# 设置单只股票:恒生电子
set_universe('600570.SS')
2. 设置多只股票作为股票池
如果你需要操作多只股票,可以将股票代码放入一个列表中传入:
def initialize(context):
# 定义一个包含多只股票的列表
g.security = ['600570.SS', '600571.SS', '000001.SZ']
# 将列表中的股票设置为股票池
set_universe(g.security)
注意事项
- 调用位置:通常在策略的
initialize(context)初始化函数中调用。 - 作用范围:在股票策略中,该函数主要用于设定
get_history等获取行情函数的默认security_list入参。如果不调用此函数,在获取行情时就需要显式指定股票代码。 - 代码尾缀:传入的股票代码必须包含正确的市场尾缀,例如上海市场证券为
.SS(或.XSHG),深圳市场证券为.SZ(或.XSHE)。