
节点边际电价LMPLocational Marginal Price是电力现货市场出清的核心产物每天96个时段、每个时段每个节点都有一串价格看起来就是一张巨大的数字表格。刚开始接触的人很容易只看“均价”或者“最高价”但真正判断市场有没有堵点、机组有没有被强制调整、结算费用为什么涨了都得回到“全时段、分节点”的维度去扒。这篇东西写给三类人一是电力交易员或售电公司做价格分析的人二是做市场仿真、算法研究的学生或工程师三是刚入行想搞懂LMP原理的运营人员。我会用一套模拟算例把“有阻塞”和“无阻塞”两种场景下的全时段出清结果拆开来看重点讲清楚LMP由哪几部分构成、为什么阻塞会出现节点价差、全时段耦合约束怎么改变价格曲线以及实际操作中怎么快速定位关键断面。1. 节点边际电价到底怎么算出来的要先理解“有无阻塞的区别有多大”得先回到LMP的定义和计算过程。很多人对LMP的印象是“不同节点价格不同因为电网有线路约束”这话对但不完整。节点边际电价的本质是在该节点上额外增加1兆瓦负荷系统重新优化调度后总购电成本的变化量。这个“边际”不是某一台机组的报价而是整个系统在满足安全约束条件下重新优化的边际成本增量。1.1 LMP的三层构成能量、阻塞、损耗业内常用公式把LMP拆成三个分量节点电价 能量分量 阻塞分量 损耗分量能量分量全网统一的基础能量价格反映系统整体供需平衡的边际成本。阻塞分量由线路越限、断面受限等安全约束引起的价格修正项。这个分量可能为正也可能为负具体取决于节点在阻塞断面的哪一侧。损耗分量考虑线路损耗后对节点电价的微调。实际系统中损耗往往和能量分量合并或单独分摊各国市场处理方式不同。以上三个分量之所以能被分开是因为优化问题的拉格朗日乘子影子价格天然对应不同约束负荷平衡约束对应能量分量线路潮流约束对应阻塞分量节点功率平衡或损耗相关的约束对应损耗分量。展开讲一个容易混乱的点“阻塞分量”并不是线路潮流超过限额后“罚款”形成的价格而是在优化模型里线路潮流约束被激活后经济调度被“绑架”被迫改变发电组合导致不同节点的边际发电成本出现差异。举例某条500千伏线路送电容量已到限额系统为了不越限只能让受端的高价机组多发、送端的低价机组少发那么受端节点因为要引入更贵的电源价格抬升送端节点呢因为多出来的低价电送不过去本地机组竞争变弱价格也可能上升也可能因为被压出力而出现负阻塞分量。这正是阻塞分析的魅力所在——不是简单地“贵的地方贵便宜的地方便宜”。1.2 为什么“有阻塞”和“无阻塞”的差异集中在阻塞分量如果电网没有线路潮流约束也没有断面限额优化问题就退化为一个纯经济调度模型。此时任何节点增加负荷系统都可以自由调动全网最便宜的机组最终所有节点的LMP只有能量分量和损耗分量节点间价差很小基本取决于电网损耗差异。而真实电网一定存在输电约束。当某条线路或某个输电断面达到传输极限安全约束经济调度SCED就必须把潮流越限控制住。这时“被阻塞”的送电侧节点和“缺电”的受电侧节点会出现明显的价格分化。这个分化的大小取决于阻塞断面的严重程度、两侧机组的报价梯度、以及跨时段爬坡能力等因素。所以在实际分析中我通常会先看各节点LMP的标准差和最大价差再去看阻塞分量。如果全时段最大价差超过某个阈值例如30元/兆瓦时基本可以断定当天存在显著阻塞。如果只是整体价格水平上涨但节点间价差很小那大概率是供需紧张导致能量分量抬升跟阻塞无关。这个判断方法简单粗暴但非常有效。2. 出清模型与全时段耦合单时段和96点还不一样很多刚开始做市场分析的人会踩一个坑把每一个时段单独拿出来算每个时段都做一遍“无阻塞 vs 有阻塞”的对比。这种“静态切片”式的分析会丢失跨时段约束的影响导致结论严重失真。现货市场出清不是96个独立问题而是96个时段耦合在一起的混合整数优化问题也就是安全约束机组组合SCUC加安全约束经济调度SCED。2.1 目标函数与约束从经济调度到安全约束机组组合出清模型的目标一般是最小化总购电成本 各机组运行费用启动、空载、发电 可能包含的负荷侧报价费用约束条件包含负荷平衡约束各时段全网发电总出力购入电力负荷网损机组出力上下限约束爬坡约束相邻时段出力允许的最大升降幅度最小启停时间约束机组开机后不能立刻停机、停机后不能立刻开机线路潮流约束每条线路/每个断面的潮流不能超过限额备用约束系统需要预留旋转备用储能和新能源约束如果市场包含储能、风电光伏等还有SOC状态变量和预测出力约束其中爬坡约束、最小启停时间约束、储能SOC约束等都是把96个时段“串起来”的耦合约束。举个例子某台火电机组在第30时段被调度满发第31时段由于爬坡限制不能立刻降到很低只能以额定爬坡速率逐步降负荷这就会影响后续时段的出清结果和节点价格。如果你只看单时段根本无法捕捉这种“惯性”。2.2 全时段分析为什么必须看跨时段约束全时段分析的价值在于它把时间上的前后关联摊开了看高价时段有可能是因为前一时段的爬坡约束导致高价机组不得不在当前时段多发。阻塞程度不仅取决于本时段负荷和机组报价还取决于上一时段机组出力基点。如果上一时段送端机组已经在最大出力这一时段即便负荷不涨也没有更多空间继续上调阻塞情况可能加剧。新能源反调峰场景下午后光伏大发时段送端节点电价可能极低甚至负值但到了晚高峰靠爬坡约束硬爬上去的火电会让部分节点价格飙升。所以做“有无阻塞全时段分析”时两个场景都必须采用完整的SCUC/SCED模型并且用相同的机组报价、负荷曲线、网络拓扑只改变“是否有线路限额”这一个变量才能得到真正可对比的结论。2.3 节点电价求解的数学本质影子价格LMP之所以能在出清结果里直接看到是因为优化求解器如国内的某些招标求解器或开源求解器会输出约束对应的对偶变量。在最优解处负荷平衡约束的影子价格就是系统的能量边际价格线路潮流约束的影子价格就是阻塞分量。严格来说混合整数优化MIP问题的最优解中对偶变量并非总是唯一或稳定因此实际市场出清会采用“固定整数变量再求解线性规划”的两阶段方法来获取可靠的价格。这也是为什么出清规则里要对机组启停状态固定后再算价格。这一点在无阻塞和有阻塞场景都适用但阻塞越严重MIP整数解对不同价格变量的影响越明显。在我的实践中分析节点电价时一定要拿到出清软件的“分项结果”而不仅仅是节点LMP汇总值。只有分项结果才能区分某节点涨价是全网能量价涨还是局部阻塞引起的。否则分析报告会变成“哪里贵、哪里便宜”的流水账用户看了也不知道该对哪个断面采取措施。3. 有无阻塞的全时段结果怎么对比光讲原理太抽象我用一个模拟算例来说明。算例不涉及真实电网数据是我根据常见市场结构拼出来的模拟项目X目的是演示分析思路。3.1 模拟场景设计算例系统节点数9个节点简化成5个厂站节点、4个负荷节点机组数8台包含2台大容量燃煤机组报价较低但爬坡慢、2台燃气机组报价高但灵活、2台风电场出力曲线给定报价接近0、2台储能SOC范围0-200兆瓦时时段数96点15分钟一个点线路数12条其中关键断面有2个断面A连接送端低价区和主网、断面B连接主网和受端高价区负荷曲线典型夏季双峰曲线早高峰10点-12点晚高峰19点-21点对比方案方案1无阻塞所有线路容量设为极大值例如10000兆瓦方案2有阻塞阻塞断面A限额350兆瓦断面B限额280兆瓦注意两个方案都保留爬坡约束、最小启停时间约束、储能SOC约束只改线路限额。这样才能把“阻塞”的作用单独剥离出来。3.2 无阻塞情况出清结果与电价特征无阻塞场景下系统像一个“铜板”电网没有输电瓶颈所有节点电价几乎一致。由于没有线路约束所有发电机按报价高低统一排序负荷高峰时段最后被调用的机组决定了系统能量边际价格。模拟结果大致是96个时段的全网均价约为286元/兆瓦时。各节点各时段的LMP非常接近最大价差仅来自网损差异约2-4元/兆瓦时。早高峰和晚高峰时段价格抬升主要由燃气机组边际报价决定约520元/兆瓦时。光伏大发时段12点到15点价格显著下跌约120元/兆瓦时甚至出现小幅负值模拟对应主动弃风情况。储能策略清晰在低价时段充电、高价时段放电两个时段价差完全来自能量价格时变不存在储能通过阻塞套利的空间。这个场景的价值在于定义了一个“无阻塞基准价格曲线”。后面做任何阻塞影响评估都拿这个基准来对比。没有这个基准你无法判断阻塞到底影响的是哪一部分。3.3 有阻塞情况价格分化与再调度效应有阻塞场景下断面A和B的限额被激活出清结果发生结构性变化送端区域节点1、2的低价燃煤机组无法把全部电力送出导致断面A送端侧出现“窝电”现象部分时段只能压减出力或关停。受端区域节点7、8、9由于缺电更多依赖本地燃气机组和高价储能放电受端节点电价整体抬升。典型晚高峰时段第76时段19:15送端节点LMP约420元/兆瓦时受端节点LMP约610元/兆瓦时节点间价差接近190元/兆瓦时。阻塞分量为正的点主要集中在受端阻塞分量为负的点主要集中在送端负阻塞分量意味着该节点机组因阻塞被压低报价其“边际价值”低于全网能量价。全时段最大LMP价差达到283元/兆瓦时远远超过无阻塞场景的4元/兆瓦时。再调度效应也很明显无阻塞下送端燃煤机组出力接近满发受端燃气机组只在高峰时段开2台有阻塞下送端燃煤机组在多个时段被压到60%-70%出力受端燃气机组启动次数增加且部分时段连续运行多台。这意味着阻塞不仅改变电价还改变机组启停计划和运行轨迹。还有一个容易忽略的点储能行为变了。无阻塞时储能是“低充高放”但在有阻塞时受端区域的储能更愿意在早高峰前放电、在午间充电甚至在晚高峰来临前预留SOC因为受端晚高峰电价抬升让储能套利价值增加。这种跨时段影响如果只看到价格表是发现不了的必须看储能SOC时序曲线。3.4 全时段指标汇总与对比表我用下面这个表把两个方案的核心指标放在一起指标无阻塞方案有阻塞方案差异解读全网能量分量均价元/兆瓦时286292受端高价机组更多被调度整体成本上升最大节点间LMP价差元/兆瓦时4283阻塞导致送受端价格分化LMP标准差元/兆瓦时1.267.5节点价格离散度大幅上升关键断面A平均负载率45%100%断面A长时间越限受限燃气机组总发电量兆瓦时13202100受端高价机组替换送端低价电量燃煤机组总发电量兆瓦时58605120送端低价机组被压减出力节点LMP出现负阻塞分量的时段数034送端窝电频繁导致负价差弃风电量兆瓦时120340阻塞限制了风电外送通道这张表是我做阻塞分析时最喜欢用的“总览”形式。它有四个作用一是快速量化阻塞对市场整体成本的影响二是定位严重受阻时段三是为输电阻塞管理提供依据四是评估阻塞对新能源消纳的负面影响。4. 实操中的坑与常用工具经验以上分析思路放到实际项目里跑的时候会遇到很多细节问题。有些问题是数据层面的有些是模型层面的有些是解释层面的。下面记录几个我在实操中反复遇到的坑和对应处理方式。4.1 数据准备预测负荷、机组参数、网络拓扑做全时段分析第一步是准备数据。很多人以为出清分析最麻烦的是求解器其实不是数据清洗才是最耗时的一环。负荷曲线要注意时区对齐。某些系统提供的是15分钟间隔某些是5分钟还有一些是小时平均数据需要统一插值到96点。机组参数中爬坡率是最容易出错的指标——文档里给的可能是“每分钟多少兆瓦”模型里要求的时间单位是“每小时多少兆瓦”换算错一个单位整个出清轨迹就会失真。网络拓扑数据要特别注意“断面”而不是“单条线路”。一个阻塞断面可能包含多条并联线路、多条不同电压等级的线路在模型里要把它们定义为聚合约束。若只看单条线路可能单条都没越限但总断面的潮流已经超过稳定限额。实操建议把数据准备拆成“机组表、负荷曲线表、网络表、约束表”四个模块每个模块加一列“数据来源”和“更新时间”避免版本混乱。我每次做分析之前都会跑一次“平衡性检查”验证各节点功率平衡否则后面所有价格结果都不可信。4.2 如何快速定位阻塞关键断面拿到全时段出清结果以后如果LMP分化明显下一步要找出“谁是元凶”。常用的手段是用灵敏度分析或“影子价格排名”查看每个时段每个线路约束的对偶变量绝对值。对偶变量大的线路/断面说明它对价格影响最大。绘制时段-断面负载率热力图横轴是96个时段纵轴是各断面颜色是负载率。负载率长期接近100%的断面就是关键断面。对比两种方案的机组出力差异。出力变化最大的机组往往位于阻塞断面的一侧顺着这些机组的并网节点就能找到阻塞方向。要注意对偶变量是“局部边际”概念不等于实际影响的钱数但用来排名足够。实际工业界还会计算“输电断面价格对载荷水平的弹性”但那是进阶内容普通分析先用排名法即可。4.3 常见问题与排查技巧实录我在跑全时段分析时遇到过的典型问题列出来供参考问题现象可能原因排查方向同一节点96点电价全部相同模型可能退化为无约束经济调度检查线路限额是否未起作用查看负载率是否远低于100%某时段LMP出现极端负值如-500元/兆瓦时机组报价下限为负、或储能SOC边界触发、或弃电惩罚设置不合理检查该节点是否有负报价机组被调度确认弃电成本和SOC边界有阻塞场景总购电成本反而低于无阻塞可能因为模型没有固定机组启停变量整数解在两种方案下不同导致成本对比失真必须固定启停计划再计算阻塞租金或对比同一启停方案的SCED结果爬坡约束导致价格剧烈跳变相邻时段机组出力受爬坡限制边际机组切换检查是否有更便宜的机组因爬坡无法跟上考虑是否加斜坡报价分析报告被质疑数据不对可能因为把“交易关口计量点”和“物理节点”混用LMP对象错了先核对节点映射关系再查价格其中“启停计划不同导致成本对比失真”是我最常提醒同事的一个点。严格研究阻塞对出清成本的影响应该采用“先固定机组组合后对比经济调度”的方法或者用相同的机组组合去对比不同网络约束下的LMP。否则你对比的是两个完全不同的整数解很难把差异归因于阻塞。5. 我也踩过的几个坑全时段分析的三个细节最后说三个我在实际项目里反复踩、改了无数次的经验希望对你有用。5.1 别只看均价要看分时价差带宽有一次我做某市场月度复盘某一天全网均价只比前一天涨了8元/兆瓦时看起来波澜不惊。但把96点曲线拉出来送端节点和受端节点在晚高峰时段的价差比前一天多了120元/兆瓦时。如果只看均价完全发现不了阻塞加剧。后来我做任何分析都先画“全时段价差带宽图”上下包络线之间就是市场分裂程度。均价不能反映阻塞价差带宽才能反映。5.2 储能数据比火电更难搞储能参与现货市场后全时段分析复杂度明显增加。因为储能既有充放电约束又有SOC连续性约束跨时段耦合特别强。有些模型在96点连续计算时储能SOC边界处理不当会导致早晚高峰电价被过冲。比如某算例里因为午间充电功率限制晚间储能放电量不足受端晚高峰电价被抬高到900元/兆瓦时。后来我加了一个“储能在高峰前的SOC最低保障”约束价格才回落到合理区间。做分析时一定要把储能的SOC时序曲线单独画出来和电价曲线对照看能发现很多模型问题。5.3 报告写给谁分析粒度就不一样同样一套“有无阻塞全时段分析”结果给调度人员看重点放在关键断面负载率、机组调整建议上给交易员看重点放在节点价差、阻塞租金、购电成本影响上给规划人员看重点放在阻塞持续时段、需要扩容的通道上。我通常会生成三份不同视图的图表而不是一份“大杂烩”。这样虽然工作量增加但每份报告都能直接用于决策这才是全时段分析的价值所在。最后按老规矩送你一条我在实际工作中验证过很多次的判断口诀如果某节点价格高于全网同步基准价3%以上先怀疑是不是阻塞如果全网不同节点价差波动剧烈但能量分量很稳定那大概率是网络约束在主导价格信号如果连能量分量都在剧烈波动说明系统供需形势比阻塞更难处理。把这三句话记住再去做“有无阻塞”的对比你会少走很多弯路。