当前位置:首页>行情>PTrade 指数行情获取指南:开盘价、收盘价这样查,简单高效!

PTrade 指数行情获取指南:开盘价、收盘价这样查,简单高效!

  • 2026-10-14 22:27:58
PTrade 指数行情获取指南:开盘价、收盘价这样查,简单高效!
很多做量化策略的朋友都会问:“指数的开盘价、收盘价能直接拿吗?” 答案是肯定的!
PTrade 的get_history和get_price两个接口,就能轻松获取指数的核心行情数据,不管是沪深 300、上证指数,还是行业指数,都能精准查询,今天就把具体用法讲透~
核心接口
获取指数行情主要靠两个接口,一个适合 “拿最近 N 条数据”,一个适合 “查指定时间段数据”,按需选择即可,操作都很简单。
1、get_history 接口:快速获取最近 N 条数据
适合想快速拿到近期指数行情的场景,比如 “过去 10 天的收盘价”、“过去 5 周的开盘价”,无需设置具体日期,指定数量就行。
核心用法 + 示例代码
definitialize(context):# 定义要查询的指数:沪深300指数(代码000300.XBHS,指数尾缀为XBHS)    g.index_code = '000300.XBHS'defhandle_data(context, data):# 示例1:获取沪深300指数过去10天的每日收盘价    index_close = get_history(10, frequency='1d', field='close', security_list=g.index_code)    log.info("沪深300近10天收盘价:")    log.info(index_close)# 示例2:获取沪深300指数过去5周的开盘价和收盘价    index_ohlc = get_history(5, frequency='1w', field=['open', 'close'], security_list=g.index_code)    log.info("沪深300近5周开收盘价:")    log.info(index_ohlc)
关键参数说明
start_date/end_date:开始 / 结束日期(格式为 'YYYYMMDD');
security_list:指数代码(支持 XBHS/SS/SZ 尾缀,需确认指数对应的正确尾缀);
其他参数(frequency/field)与get_history一致。
注意事项
指数代码尾缀要正确:标准指数尾缀为 XBHS(如沪深 300=000300.XBHS),部分主流指数(如上证指数 000001.SS)支持 SS/SZ 尾缀,查询前需确认代码格式;
非标准数据有差异:行业指数、概念板块等数据,是数据源按成分股规则计算的非标准交易所数据,可能和同花顺、东方财富等三方平台有细微差异,需自行评估合理性;
指数不可交易:获取的指数行情仅用于行情参考或策略基准,不能直接下单交易;
可设为策略基准:通过set_benchmark()函数,可将指数设为策略比较基准,比如用沪深 300 衡量策略收益。
指数数据怎么用?
获取指数数据后,常见用法有两种,直接套用即可:
1、作为行情参考,辅助股票交易
definitialize(context):    g.stock_code = '600570.SS'# 恒生电子    g.index_code = '000300.XBHS'# 沪深300指数    set_universe(g.stock_code)defhandle_data(context, data):# 获取沪深300指数近5天收盘价,计算平均值    index_data = get_history(5, '1d', 'close', g.index_code)    index_avg = index_data['close'].mean()# 获取当前指数最新价    current_index = data[g.index_code]['close']# 逻辑:指数突破5日均值,买入股票if current_index > index_avg and get_position(g.stock_code).amount == 0:        order_value(g.stock_code, context.portfolio.cash)        log.info(f"指数突破均值{index_avg},买入{g.stock_code}")
2、设置为策略基准,对比收益
definitialize(context):    g.stock_code = '000001.SZ'# 平安银行    set_universe(g.stock_code)# 将上证指数(000001.SS)设为策略基准,替代默认的沪深300    set_benchmark('000001.SS')defhandle_data(context, data):# 策略逻辑(示例:简单买入持有)if get_position(g.stock_code).amount == 0:        order_value(g.stock_code, context.portfolio.cash)
获取指数的开盘价、收盘价,核心就是用get_history(最近 N 条)和get_price(指定时间段),参数简单、代码易复制。记住指数尾缀规则和非标准数据的差异,就能精准拿到所需行情,不管是辅助交易还是作为基准,都能轻松实现。
如果觉得这篇文章值得让更多朋友看到,那就点亮 “在看”,让好东西像蒲公英种子一样,飞到更多需要的人身边!

往期推荐

PTrade可转债转股价值揭秘:convert_value字段怎么算?

PTrade 回测精准设置指南:佣金 + 滑点这样调,回测更贴实盘!

PTrade实时行情获取指南:get_snapshot接口秒级抓取数据!

PTrade 每日定时任务教程:run_daily 函数让策略自动 “打卡”!

A 股交易全流程:从开盘到收盘,是新手入市必须要了解的规则

欢迎扫码咨询

股票、两融、量化、基金等业务

惊喜佣金等你来

点个在看你最好看

最新文章

随机文章