现货电价API接入最佳实践:日前电价、实时电价、节点电价和96点数据
现货电价API适合把日前电价、实时电价、节点电价、统一结算点价格和96点电价数据接入售电系统、储能策略系统、负荷侧管理平台和交易辅助平台。相比工商业分时电价API,现货电价API更强调时间粒度、市场口径、更新频率和历史回放。
现货市场推进后,售电公司、交易服务商、负荷侧管理平台、储能策略系统都开始接触更多高频电力市场数据。相比工商业分时电价,现货数据的接入难度更高,因为它涉及时间粒度、市场节点、结算口径、历史回放和持续更新。
如果仍然依赖人工下载、复制、清洗,再导入系统,短期可以做研究,长期很难支撑产品化。
现货数据接入的主要问题
第一,时间粒度更细。很多现货数据按日、小时、15分钟或96点结构组织。系统必须明确每条价格对应哪个时间点。
第二,数据类型更多。可能包括日前、实时、统一结算点、节点价格、中长期价格、辅助服务相关数据等。
第三,更新频率更高。现货数据不是月度维护,而是可能按日甚至更高频率更新。
第四,口径需要记录。数据是日前还是实时,是用户侧还是发电侧,是统一结算点还是节点,都必须作为字段明确表达。
推荐字段结构
{ "market": "山东", "date": "2026-06-18", "priceType": "spot_user_settlement", "timeGranularity": "15min", "points": [ { "time": "00:00", "sequence": 1, "price": 312.45, "unit": "CNY/MWh" }, { "time": "00:15", "sequence": 2, "price": 318.12, "unit": "CNY/MWh" } ], "updatedAt": "2026-06-18T18:20:00+08:00" }数据接入架构
建议在业务系统中增加“市场数据服务层”:
现货数据API ↓ 市场数据服务层 ↓ 策略回测 / 售电分析 / 储能优化 / 风险监控 ↓ 报表和交易辅助决策这个服务层至少要做四件事:
- 统一字段。
- 缓存历史数据。
- 记录更新时间。
- 对异常数据做标记。
接入时的技术注意事项
第一,时间序列要完整。调用方要检查一天是否有完整点位,缺点时要有补偿机制。
第二,单位要统一。电价可能以元/MWh或元/kWh呈现,进入系统前必须统一。
第三,区分日前和实时。不要把不同市场阶段的数据混在同一个字段里。
第四,保留原始更新时间。策略回测时,知道数据何时更新非常重要。
第五,支持增量同步。不要每次全量拉取历史数据,建议按日期或更新时间增量更新。
示例同步逻辑
def sync_spot_price(market, date): result = api.get_spot_price(market=market, date=date) if len(result["points"]) < 96: mark_warning("INCOMPLETE_POINTS", market, date) normalize_unit(result) save_points(result["points"]) save_update_log(market, date, result["updatedAt"])常见问题
Q:现货电价API一般返回多少个点?
A:这取决于市场和时间粒度。常见结构包括24点、96点或更细粒度。接入时应通过timeGranularity、sequence和expectedPoints字段确认一天数据是否完整。
Q:日前电价API和实时电价API能混用吗?
A:不建议混用。日前电价和实时电价代表不同市场阶段,应通过priceType或marketStage字段区分,否则策略回测、售电分析和结算判断容易出错。
Q:现货电价API适合哪些系统?
A:适合售电系统、现货策略平台、储能优化系统、负荷侧管理平台、虚拟电厂平台和交易辅助决策系统。
结尾
如果你们正在做售电、现货策略、负荷侧管理或储能优化,可以可以和我沟通,确认时间粒度、价格类型和返回结构是否适合系统接入。
