get_stock_name可以获取可转债和ETF的名称吗?
使用get_stock_name传入可转债代码或ETF代码时,能否获取到对应名称?
问题描述
解决方案
ptrade 中 get_stock_name 函数支持获取可转债和ETF名称吗?
可以的。
在 ptrade 量化交易平台中,get_stock_name 接口不仅可以用来获取普通股票的名称,同样也支持获取可转债、ETF等标的的名称。
接口说明
- 函数:
get_stock_name(stocks) - 参数:
stocks可以是单个标的代码(字符串),也可以是多个标的代码组成的列表(list)。 - 返回值:返回一个字典(dict),键(key)为传入的代码,值(value)为对应的名称。如果未查询到或输入有误,值为
None。
Python 源码示例
以下是一个在 ptrade 策略中获取股票、可转债和 ETF 名称的示例代码:
def initialize(context):
# 定义包含股票、可转债、ETF的代码列表
# 600570.SS: 恒生电子 (股票)
# 113011.SS: 光大转债 (可转债)
# 510050.SS: 上证50ETF (ETF)
g.security = ['600570.SS', '113011.SS', '510050.SS']
set_universe(g.security)
def handle_data(context, data):
# 获取单个可转债名称
cb_name = get_stock_name('113011.SS')
log.info('单个可转债名称: %s' % cb_name)
# 获取单个ETF名称
etf_name = get_stock_name('510050.SS')
log.info('单个ETF名称: %s' % etf_name)
# 批量获取股票池中所有标的名称
all_names = get_stock_name(g.security)
log.info('批量获取名称: %s' % all_names)
总结
无论您是在编写股票策略、可转债轮动策略还是 ETF 轮动策略,都可以放心地使用 get_stock_name 来获取标的名称,这在打印日志或发送交易提醒时非常有用。