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

PTrade中get_stock_name和get_stock_info有什么区别?

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

问题描述

get_stock_name和get_stock_info有什么区别?

在PTrade中有两个获取股票信息的函数get_stock_name和get_stock_info,它们分别获取什么信息?

解决方案

在PTrade量化交易平台中,get_stock_nameget_stock_info 都是用于获取标的基础信息的API函数,但它们在获取信息的丰富度返回的数据结构上存在明显区别。

以下是两者的详细对比:

1. get_stock_name - 获取股票名称

功能定位:专门用于快速获取股票、可转债、ETF等标的的名称

  • 参数stocks (支持单只股票代码字符串或代码列表)。
  • 返回值:返回一个简单的字典(dict),Key为股票代码,Value为股票名称。如果查询不到,Value为None

代码示例

def handle_data(context, data):
    # 获取单只股票名称
    name = get_stock_name('600570.SS')
    log.info(name) # 输出: {'600570.SS': '恒生电子'}

2. get_stock_info - 获取股票基础信息

功能定位:用于获取标的更详细的基础信息,除了名称外,还可以获取上市日期退市日期

  • 参数
    • stocks:股票代码或代码列表。
    • field:指定需要输出的字段列表。支持的字段包括:
      • stock_name:股票代码对应公司名
      • listed_date:股票上市日期
      • de_listed_date:股票退市日期(若未退市,返回'2900-01-01')
  • 返回值:返回一个嵌套字典dict)。外层Key为股票代码,内层字典包含请求的字段信息。注意:如果不传field参数,默认只返回stock_name字段,且不会返回上市和退市日期。

代码示例

def handle_data(context, data):
    # 获取多只股票的详细基础信息
    info = get_stock_info(['600570.SS'], field=['stock_name', 'listed_date', 'de_listed_date'])
    log.info(info) 
    # 输出: {'600570.SS': {'stock_name': '恒生电子', 'listed_date': '2003-12-16', 'de_listed_date': '2900-01-01'}}

核心区别总结

  1. 信息维度get_stock_name 只能获取名称;get_stock_info 可以获取名称、上市日期、退市日期。
  2. 数据结构get_stock_name 返回的是一维字典({'代码': '名称'});get_stock_info 返回的是二维嵌套字典({'代码': {'字段名': '字段值'}})。
  3. 使用场景:如果策略中仅仅需要打印或记录股票名字,使用 get_stock_name 更直接便捷;如果策略需要根据上市时间(如剔除次新股)或退市时间进行逻辑判断,则必须使用 get_stock_info 并传入相应的 field 参数。