问题描述
/
解决方案
在 ptrade 量化平台的 API 中,get_market_list() 接口用于获取当前支持的市场列表目录。该接口返回一个 pandas.DataFrame 对象,其中包含两个核心字段:finance_mic 和 finance_name。
1. 字段具体含义
finance_mic(市场编码):- 类型:字符串 (
str) - 含义:这是市场的唯一标识符(Market Identifier Code,简称 MIC)。在 ptrade 系统内部以及与其他金融数据接口交互时,通常使用这个简短的编码来代表一个特定的交易市场。例如,上海证券交易所的编码是
XSHG或SS,深圳证券交易所的编码是XSHE或SZ。
- 类型:字符串 (
finance_name(市场名称):- 类型:字符串 (
str) - 含义:这是市场的中文全称或通用简称,用于人类阅读和理解。它直观地描述了
finance_mic所代表的具体市场。例如,XSHG对应的名称是“上海市场证券”或“上海证券交易所”。
- 类型:字符串 (
2. 市场编码与市场名称的对应关系
理解这种对应关系,就像是理解“身份证号”与“姓名”的关系。finance_mic 是给计算机程序看的,保证了唯一性和处理效率;而 finance_name 是给人看的,提供了直观的业务含义。
在编写策略时,当你需要指定某个市场(例如,查询特定市场的详细信息,或者过滤特定市场的股票)时,你应该使用 finance_mic。
常见的对应关系示例(基于 ptrade 文档):
| finance_mic (市场编码) | finance_name (市场名称) |
|---|---|
XSHG / SS |
上海市场证券 (上海证券交易所) |
XSHE / SZ |
深圳市场证券 (深圳证券交易所) |
XBHS |
指数 |
CCFX |
中国金融期货交易所 (中金所期货) |
XSHO |
上海股票期权 |
XSZO |
深圳股票期权 |
XHKG-SS |
上海港股通 (沪港通) |
XHKG-SZ |
深圳港股通 (深港通) |
XSGE |
上海期货交易所 |
XZCE |
郑州商品交易所 |
XFUND |
基金 |
3. 如何在代码中使用
你可以通过调用 get_market_list() 来查看完整的对应关系表:
def before_trading_start(context, data):
# 获取市场列表
market_df = get_market_list()
log.info("当前支持的市场列表:\n%s" % market_df)
# 假设你想获取上海证券交易所的详细信息,你需要使用其 finance_mic 'XSHG'
# market_detail = get_market_detail('XSHG')
总结:finance_mic 是程序识别市场的标准代码,finance_name 是方便开发者理解的中文名称。在 ptrade 策略开发中,涉及到市场参数传递时,应始终使用 finance_mic。