电力市场学习笔记 · 第一季

从零开始理解电力市场 —— 用研究生视角重构,零基础也能读懂的交互式笔记(含公式、可视化、交互演示、术语悬浮注解)
基于 EG·AI³ 系列 10 讲 教材:Stoft / Kirschen&Strbac / Kazempour(DTU) MathJax 公式 · 内联 SVG 迭代版本 v2 · 通俗版

🌱 零基础前传:懂市场之前,先懂“电”

完全没接触过电力行业?先花 5 分钟读这一节。后面十讲的专业术语,几乎都源于下面这几条最朴素的物理事实。
读者画像 这一节假设你是门外汉:不知道“机组”是什么、分不清 MW 和 MWh、以为电费就是个固定单价。读完你会明白:为什么电力市场要搞得这么折腾。

① 电,不能像粮食那样囤起来

水可以存水箱、粮食可以放仓库、钱可以存银行,但电目前几乎没法大规模储存。发电厂发出的电,必须在同一个瞬间被用掉:发多了用少了,频率会乱、设备会烧;发少了用多了,就会停电拉闸。

👉 所以电力市场最根本的任务不是“买卖”,而是时刻让发电量 = 用电量,行话叫实时平衡

类比 像一场流水席:厨房做菜的速度必须和客人吃饭的速度完全同步——做快了菜凉浪费,做慢了客人掀桌子。电网就是那场永远不能停的流水席。

② 三个角色:发电厂、用户、电网

发电厂(卖家)把一次能源(煤、风、光、水、核)变成电;用户(买家)用电;电网是连接两者的“高速公路”,把电从电厂运到用户家。

👉 但电网的“路”有粗有细(线路容量)。某条路“堵车”(行话叫拥塞 congestion)时,堵点这头的便宜电送不过去,那头只能用本地贵电——这就是后面“不同地方电价不同”的根源。

类比 同城点外卖:你家片区封路了,便宜的那家店送不过来,你只能点片区内贵的店——堵车让你被迫买贵菜。

③ 频率:整个电网的“心跳”

中国电网的心跳是 50 Hz(每秒 50 次)。发电略多于用电 → 心跳加快(频率升高);发电略少于用电 → 心跳减慢。心跳偏太多,会大面积停电。所以系统时刻在微调,保证心跳稳定。

类比 像交响乐团的节拍——所有乐手必须踩同一个拍子,谁抢拍或拖拍,整首曲子就乱了。

④ 两个单位别混:MW 是“出力”,MWh 是“电量”

MW(兆瓦)功率,描述“此刻出力多大”——像水龙头的粗细。MWh(兆瓦时)能量,描述“一段时间发了多少电”——像水表走了多少字。

👉 100 MW 的机组运行 1 小时 = 发了 100 MWh 的电。后面你会看到:能量市场按 MWh 买卖(买了多少度),而辅助服务很多按 MW 买卖(待命的出力有多大)——这是第六讲的灵魂。

类比 MW 像水管粗细(同时能流多少水),MWh 像水表读数(一共流了多少水)。粗水管开一小会儿,可能比细水管开一整天流的水还多。

⑤ 电价,每一刻都在变

不像超市里一瓶水标价 2 元固定不变,电价是每 15 分钟甚至每 5 分钟就刷新一次的。用电高峰(大家开空调、工厂开工)要用贵的机组,价就高;半夜用电少又风大,用几乎不要钱的风电,价就低,甚至出现负电价(倒贴让你用电)。

类比 像打车:早晚高峰溢价翻倍,深夜空车没人坐时司机愿意降价甚至倒贴拉客。

时间(一天 0→24h) 电价 0 中午光伏大发→价近 0 早高峰尖峰 傍晚尖峰
图 0-1 一天的电价可以像过山车:中午光伏大发把价格压到接近 0,早晚用电高峰价格尖峰飙升。这就是为什么后面要学“怎么给不同时段、不同地点的电定价”。

那,到底什么是“出清”?

看懂上面五条,就能理解本季反复出现的核心词出清(clearing)——简单说就是“撮合成交、敲定价格和数量”

想象一个菜市场:所有菜贩子(发电厂)按卖价从低到高排成一队,买菜的人按愿意出的价从高到低排成一队。两边对着走,价格对得上的就开始交易;最后让交易“刚好达成”的那一档价格,就是当天的“行情价”,所有成交者都按这个价结算。这个“落槌定价”的过程,就是出清。

一句话钩子 记住:电不是普通商品(不能存、必须实时平衡、要靠电网运、心跳不能乱)。正因为这些“不像普通商品”的特点,才有了后面十讲里那些复杂机制——容量市场、辅助服务、节点电价、风险定价……它们全是为了解决“电的特殊性”而生的。

读完这一节,你已具备理解全季的常识底座。遇到生词,把鼠标停在虚线下划线词上,或翻到文末「📖 术语速查」。

🗺️ 学习地图:这一季到底在讲什么

一句话主线:电力市场不是“买卖电量”的地方,而是“在物理约束下用价格与合约协调系统行动”的制度系统。

当系统从可调度的火电走向高比例新能源 + 分散资源 + 电力电子化,市场最稀缺的东西正从“电量”变成“时间、位置、速度、确定性和可控性”。它有四层递进:

解决的问题核心工具对应讲次
① 出清与价格电价是怎么算出来的?线性规划 + 对偶变量(影子价格)第 1–2 讲
② 架构与空间价格为何因地/因时而异?合同如何变运行?节点/LMP、优化↔均衡↔MCP、时间轴第 3–5 讲
③ 系统安全产品系统不只买电,还买什么?容量市场、辅助服务、能量-备用耦合第 6 讲
④ 不确定性与灵活性如何为“可靠交付能力”定价?随机规划、CVaR、机会约束、样本外检验第 7–10 讲
主线价格 = 某个约束的对偶变量。从功率平衡约束的 λ(统一出清价),到节点平衡约束的 LMP,再到平衡约束的 balancing price、备用约束的容量价 —— 每次价格出现,背后都是某个优化问题里某条约束的影子价格。抓住这条,整季通一半。

🧮 数学工具谱系

每一步都是给上一步无法处理的现象打补丁 —— 一条从“确定性集中优化”走向“不确定下分布稳健决策”的阶梯。
工具解决的局限出场
线性规划 (LP)把供需交点几何直觉变成可计算的问题L2
对偶变量 / 影子价格价格从“交点”升级为“约束的边际价值”L2, L3
KKT 条件把每个主体的优化等价成一阶条件、可联立L4
MCP(混合互补)表达多主体均衡与互补松弛L4
线性化 (DC) 潮流绕开 AC 潮流的非线性非凸L3
随机规划 (scenario-based)处理风光出力 + 价格的双重不确定L8
VaR / CVaR期望值掩盖尾部L9
机会约束 (chance-constrained)确定性高估能力、全场景满足又过保守L10
CVaR 重述把机会约束与尾部风险统一进可优化框架L10
样本外检验 / K-fold模型在训练数据好 ≠ 真实市场可靠L8, L10

1 市场出清:把“电”当商品的第一步

原文链接被微信风控拦截,本讲据后续各讲回溯重构。建立最朴素的直觉:电也能像苹果一样被“出清”。
大白话 把所有发电厂按报价从低到高排好队,用电需求一来,就从最便宜的“点名”开始发电,点满需求为止。最后一个被点到名的那个电厂的报价,决定了所有人今天结算的电价——哪怕你是最便宜的,也按这个高价卖(统一价结算),所以便宜的电厂反而赚得最多。
生活类比 菜市场卖菜:菜贩子按价格从低到高排成一队,买家依次买。让今天这批菜“刚好卖完”的最后一个摊位的报价,就成了今天这批菜的行情价——所有摊位都按这个价收钱,便宜的摊位就赚了差价。

把发电侧报价从低到高排成供给曲线,把需求侧投标从高到低排成需求曲线,两条曲线的交点就是市场出清点,它同时决定成交量和统一出清价(uniform price)。关键约定:所有成交者都按同一个边际价结算(而不是各自按报价结算的 pay-as-bid)。

数量 Q 价格 供给(merit-order) 需求 出清点 P* 生产者剩余 消费者剩余
图 1-1 供给(阶梯 merit-order)与需求交点决定出清价 P* 与成交量;两块面积即社会福利 = 消费者剩余 + 生产者利润。
社会福利(global welfare / total surplus)
$$ \text{SW} = \underbrace{\int_0^{Q^*}\! D(q)\,dq - P^* Q^*}_{\text{消费者剩余}} + \underbrace{P^* Q^* - \int_0^{Q^*}\! S(q)\,dq}_{\text{生产者利润}} = \int_0^{Q^*}\![D(q)-S(q)]\,dq $$

埋下的种子(后面都会长成大树)

  • Marginal pricing:价格由“满足最后一单位需求的边际机组”决定 —— 第十讲“0.5 MW 改变整个市场价格”会爆发威力。
  • 电力不是普通商品:必须瞬时平衡、潮流服从物理定律、可靠性是公共品 —— 这是容量市场/辅助服务/节点价格存在的根本理由。
边界“供需交点”只是直觉版。第二讲起它会被重写为优化问题,价格从“交点”升级为“对偶变量”。两者的等价条件比它们本身更重要。

参考:Stoft (2002) 定义 efficiency 即 total surplus 最大化[1];Kirschen&Strbac 定义 global welfare[2]

2 出清即优化:对偶变量就是价格

用一个极简系统把出清写成线性规划,然后发现:功率平衡约束的对偶变量 λ 就是统一出清价。
大白话 上一讲说“供需交点决定价格”,但那只是画图直觉。这一讲用严格的数学证明:“系统多满足 1 度电的需求,最低成本要增加多少”——这个数字,正好就等于电价。这个数字有个名字叫对偶变量,通俗叫“影子价格”。
生活类比 餐厅多接一桌客,要算“多花多少成本”(加班费、加菜、多耗水电)——这个“多花的边际成本”就是这一桌该收的价。所谓影子价格,就是“如果手上能再多一点点资源,能多赚多少 / 少花多少”。

系统:风电 W1(预测 20MW,报价 0)、G1(容量 50MW,报价 20)、G2(容量 100MW,报价 30),需求 40MW(价格无弹性)。

市场出清 = 系统总发电成本最小化
$$ \min_{p}\; 0\cdot p_{W1}+20\cdot p_{G1}+30\cdot p_{G2} $$ $$ \text{s.t.}\quad 0\le p_{W1}\le 20,\; 0\le p_{G1}\le 50,\; 0\le p_{G2}\le 100 \quad(\text{发电上下限}) $$ $$ 40-p_{W1}-p_{G1}-p_{G2}=0 \quad :\,\lambda \;\;(\text{功率平衡,对偶变量 }\lambda) $$

解得 $p_{W1}=20,\ p_{G1}=20,\ p_{G2}=0$,出清价 = $\lambda=20$ €/MWh。

用 KKT 数值验证:为什么 λ 恰好等于 20

写出拉格朗日函数($\mu$ 为发电上限对偶变量,仅对绑定约束非零):

第二讲例子的拉格朗日与 KKT 一阶条件
$$ \mathcal{L}=0\cdot p_{W1}+20 p_{G1}+30 p_{G2}+\lambda(40-p_{W1}-p_{G1}-p_{G2})-\mu_{G1}p_{G1}-\mu_{G2}p_{G2} $$ $$ \frac{\partial\mathcal{L}}{\partial p_{G1}}=20-\lambda-\mu_{G1}=0 \;\Rightarrow\; \lambda=20-\mu_{G1} $$ $$ \frac{\partial\mathcal{L}}{\partial p_{G2}}=30-\lambda-\mu_{G2}=0 \;\Rightarrow\; \lambda=30-\mu_{G2} $$

G1 未碰上限($p_{G1}=20<50$)→ 互补松弛 $\mu_{G1}\,p_{G1}=0$ 且 $p_{G1}>0$ → $\mu_{G1}=0$ → $\lambda=20$。G2 完全未发($p_{G2}=0$)→ $\mu_{G2}=30-20=10\ge0$ 满足。这就是"边际机组决定价格"的严格证明:未碰上限的机组其上限影子价为 0,报价直接传给 λ;被压在 0 的机组影子价为正,代表它"太贵而没被调用"。

啊哈功率平衡等式约束的对偶变量 λ,就是统一出清价。它的经济含义:系统多 1MW 负荷,最优成本增加多少 —— 这正是影子价格。从此所有价格(LMP、平衡价、容量价)都是同一套路:找对应约束的对偶变量。

📊 交互演示:merit-order 与需求如何决定价格

拖动滑块改变需求,看出清价与被调用资源如何变化。需求落在哪一档阶梯,那一档的报价就是边际价。

D=40 MW 出清价 = 20 €/MWh 边际机组:G1

三个精巧小例

  • D=10:全由风电满足 → 价格 = 0(零边际成本资源当边际)。
  • D=110:G2 被调用 → 价格 = 30
  • D=70:G1 刚满发、G2 未动 → 价格 ∈ [20,30] 任意值 —— 这就是 price multiplicity(价格多重性),真实市场要靠额外规则打破 tie。

需求有弹性时:从“成本最小化”升级为“社会福利最大化”

需求消费量也变成决策变量
$$ \max_{p,d}\; \sum_i U_i(d_i) - \sum_j C_j(p_j) \quad\text{s.t. 平衡、上下限约束} $$

这是第四讲“优化=均衡”的伏笔。

参考:Kazempour DTU Lecture 2“Fundamentals”[3];Stoft p.50 efficiency = total surplus maximization[1]

3 电网约束进来:价格有了“位置”

把网络塞回优化模型,价格从单一 λ 变成每个节点一个 LMP。同一时刻、不同地点,电价可以不同。
大白话 同一座城市、同一个时刻,不同地点的电价居然可以不一样!因为电在网上“运”的时候,哪条线路堵了(拥塞),堵点另一头的便宜电就用不上,只能烧本地的贵电,于是那里电价更高。这个“电网里每一个点都有自己的价”就叫 LMP
生活类比 同城房价:同样一套房,市中心和郊区价格不同,因为“位置”不同。电也一样——堵车造成的两地“电价差”,行话叫拥塞租金,相当于电网这家“物流公司”在低价区进货、高价区出货赚的差价。

双节点例子

Bus1:风电 W1(20MW,0€)、G1(50MW,20€);Bus2:G2(100MW,30€)、需求 D1(90MW,40€)。线路 Bus1→Bus2。

实际潮流 70MW < 80,线路不绑紧 → 两节点价格相同(30 €/MWh)。发电侧收入 = 负荷支付(budget balance)。

Bus 1 W1:20MW@0 G1:50MW@20 λ₁=20 线路 flow=60MW(限 60) ↑ 拥塞 Bus 2 G2:100MW@30 D1:90MW@40 λ₂=30
图 3-1 双节点系统:线路拥塞使两节点价格分裂,差价形成拥塞租金。
节点出清优化(DC 线性化潮流,紧凑形式)
$$ \max\ \text{SW} $$ $$ \text{s.t.}\ p_i - d_i = \sum_k B_{ik}(\theta_i-\theta_k)\ \forall i\ :\,\lambda_i\ (\text{节点平衡 → LMP}) $$ $$ |f_\ell| \le \overline{F}_\ell\ \forall \ell\ (\text{线路限额}) $$

为什么不用完整 AC 潮流? AC power flow 方程非线性、非凸,难解且不保证全局最优。市场出清普遍用 DC power flow 近似(保留“有功注入↔相角差”的线性关系),换取可计算、可解释、可大规模求解[4]

欧洲分区 vs 美国节点

欧洲分区 (zonal)美国节点 (nodal)
价格粒度一个 bidding zone 一个价每个 bus 一个 LMP
网络约束区内不强制,靠事后 redispatch出清中用线性化潮流强制
复杂性归属报价复杂(block orders),出清简单报价简单,出清复杂(含 0/1 变量的 UC)
哲学把网络复杂性留到出清后把网络复杂性前置进出清
欧洲:分区(一区一价) Zone A Zone B 区内线路不建模,事后 redispatch 美国:节点(每点一 LMP) 出清中用线性化潮流强制线路限额
图 3-2 分区市场把网络复杂性留到出清后的再调度(德国 TSO 每年付大量 redispatch 成本);节点市场把网络前置进出清,每节点一个 LMP。

欧洲的折中是 flow-based market coupling:保留“一区一价”,但在出清模型加入 PTDF、RAM 和关键线路约束[5]。ENTSO-E 的 SDAC 用 PCR EUPHEMIA 算法耦合全欧,最大化社会福利(consumer surplus + supplier surplus + congestion rent),2022-06-08 Core flow-based 上线,2025-10-01 转为 15 分钟 MTU[6]

深入:金融输电权(FTR)——对冲拥塞价差

节点市场下,参与者暴露在 LMP 波动与拥塞价差风险中。金融输电权(FTR / Financial Transmission Right)是金融合约,让持有者获得两节点间拥塞价差的支付,从而对冲”在低价节点买电、在高价节点用电”的拥塞成本:

FTR 收益(从节点 i 到 j,数量 f)
$$ \text{FTR payoff}=f\cdot(\lambda_j-\lambda_i) $$
TSO 收取的拥塞租金总额 ≥ FTR 总支付(revenue adequacy),使 LMP 市场既有精细位置信号、又能把长期输电风险金融化、可交易[1]

参考:Kirschen&Strbac 拥塞把单一市场切分、locational marginal pricing 定义[2];Stoft “physical impediments to trade cause competitive prices to differ” p.390[1]

4 优化还是均衡?KKT 把它们缝起来

理论浓度最高的一讲。在理想条件下:Optimization = Equilibrium = MCP,三者等价。
大白话 前面一直是“调度中心替整个系统算一个最优发电方案”。但真实市场里没人真在算“全社会最优”——每个电厂只想着自己多赚钱。那问题来了:凭什么调度中心算出来的“最优”,每个电厂都心甘情愿接受、没人想反悔?这一讲用数学证明:只要市场足够竞争,“系统最优的安排”恰好等于“每个人都乐意接受的安排”——无人想单方偏离。
生活类比 就是亚当·斯密的“看不见的手”——每个人只追自己的利益,结果凑在一起恰好是整体最优。但现实里有垄断、有启动成本,这个理想会破裂,所以真实市场才需要监管和额外补偿(uplift 补偿)。

前几讲一直用“MO 做集中社会福利最大化”的视角。但真实市场里没有谁真在最大化“社会福利”——发电商最大化利润,负荷最大化效用。一个 MO 算出来的“系统最优”,凭什么每个主体都接受、没有单边偏离动机?

从个体视角重写

每个主体在给定价格 λ 下的优化
$$ \text{发电商 }j:\ \max_{p_j}\ \lambda p_j - C_j(p_j) \qquad \text{需求 }i:\ \max_{d_i}\ U_i(d_i)-\lambda d_i $$

关键假设:All market participants take the price as given(price-taking)[2]。价格对每个主体是参数;但谁来定 λ?引入虚拟主体 price-setter,靠功率平衡决定价格。于是这些优化不能分开解,必须联立 —— 这就是均衡问题

Nash / 竞争均衡主体之间只通过价格互相影响目标函数(不影响彼此可行域)→ 这是一个 Nash 均衡,具体叫竞争均衡:没有人能通过单边偏离提高自身利润。这回答了开头的问题。

怎么解?把每个主体的优化替换成 KKT 条件

KKT 一阶条件(以发电商 j 为例,g 为不等式约束)
$$ \nabla C_j(p_j) - \lambda + \mu_j = 0,\quad \mu_j\ge 0,\quad g(p_j)\le 0,\quad \mu_j\,g(p_j)=0 $$

把所有主体的 KKT + price-setter 的平衡条件联立 → MCP(Mixed Complementarity Problem)。MCP 特别适合表达互补松弛:机组没顶满→上限约束影子价为 0;顶满→可能为正。

核心验证:三种形式等价
$$ \underbrace{\text{社会福利最大化 (LP)}_{\text{KKT}}}_{\text{Optimization}} \;\equiv\; \underbrace{\text{各主体最优 + price-setter}}_{\text{Equilibrium}} \;\equiv\; \underbrace{\text{MCP}}_{\text{联立互补}} $$ $$ \text{三者 KKT 条件相同} \Rightarrow \text{理想条件下,集中最优 = 竞争均衡,无人愿单边偏离。} $$

Kazempour Summer School “Optimization, Equilibrium, Properties” 原文:equilibrium 与 optimization 形式等价,因 KKT 条件相同;都得 Nash equilibrium solution[7]

边界(必须盯住)一旦出现市场力、非凸成本(启动/最小开机时间)、外部性、税费扭曲、补贴、复杂约束、策略报价,优化与均衡之间就出现裂缝。MO 的“系统最优”未必等于每个主体都愿接受的“均衡”——这是真实市场需要 uplift/make-whole、需要市场监管的根本原因。四个 desirable properties:incentive compatibility、cost recovery、market efficiency、no market power[7]

成本回收(cost recovery)

线性凸例子里容易成立(各方非负利润)。但一旦非凸,统一边际价可能覆盖不了某机组全部成本 → 需要 uplift。成本回收不能靠某一小时能量价,要放进长期设计 + 价格尖峰 + 容量机制 + 辅助服务补偿

深入:Unit Commitment 与非凸定价(uplift)

真实机组有启动成本、最小开机/停机时间、最小出力、爬坡限制——这些让出清变成混合整数规划 (MIP),第四讲的"优化=均衡"等价性在此出现裂缝:

Unit Commitment (UC) 骨架
$$ \min \sum_{j,t}\big(c_j p_{jt}+SU_j\,u_{jt}+NL_j\,v_{jt}\big) $$ $$ \text{s.t.}\ \underline{P}_j u_{jt}\le p_{jt}\le \overline{P}_j u_{jt},\quad u_{jt}\in\{0,1\} $$ $$ \sum_j p_{jt}=D_t\ (:\lambda_t),\quad |p_{j,t}-p_{j,t-1}|\le R_j u_{jt}\ (\text{爬坡}) $$
$u_{jt}$=开停机 0/1 变量,$SU$/$NL$=启动/空载成本。0/1 变量使问题非凸,统一边际价 $\lambda_t$ 无法保证每台跟随机组都成本回收。

当某机组因 UC 约束"亏本"跟随时,ISO 用 uplift / make-whole payment 补足差额;定价则常用 convex-hull pricingLOC (lost opportunity cost) pricing 来尽量降低这类补偿。这正是"优化≠均衡"在真实市场的具体表现:MO 算出的调度最优,未必是每台机组在价格下都愿接受的均衡[1][7]

5 计划走向运行:日内与平衡

日前出清的只是金融合同,物理交付在实时。两个连续机制把“计划”接到“运行”:日内市场(修正层)+ 平衡市场(兜底层)。
大白话 计划赶不上变化:昨天定好的发电计划,今天可能因为某台机组突然故障、或者风比预报小了,对不上号。于是有两道防线在后面兜着——日内市场随时改计划,平衡市场在最后关头(实时)紧急调度兜底。注意:日前定的只是“纸面合同”(谁打算发多少、卖多少),真正“把电送出去”的动作发生在实时。
生活类比 像旅行社的行程:出发前定好计划表(日前),出发当天根据天气微调(日内),真遇上大堵车或罢工了,临时换方案救场(平衡)。越靠近实时,越接近“真在路上的物理行动”。
实时 → 期货 日前 合同 日内 辅助服务 备用 平衡 MO 出清 TSO 修正计划 系统兜底
图 5-1 市场时间轴:越靠近实时越接近物理运行;MO 出清 → TSO 接手。

两类主体(最实用的区分)

  • BSP(Balancing Service Provider):能实时调整 set-point、帮系统恢复平衡 —— “帮系统修正偏差的人”。
  • BRP(Balancing Responsible Party):对计划与实时偏差承担财务责任 —— “对偏差负责的人”。

同一主体可兼具两种身份:一个对应物理调节能力,一个对应财务责任边界。

偏差不总是“坏”G1 故障少发 50MW + W1 多发 15MW → 系统净偏差 +35MW。W1 虽偏离计划,但方向帮了系统(desired imbalance)反而拿补偿;G1 制造缺口(undesired)付成本。结算 budget balanced。偏差的价值取决于它和系统总偏差方向是否一致。

平衡价 & one-price / two-price

平衡市场优化:最小化调节成本
$$ \min \sum_b c_b^{up} r_b^{up} + c_b^{dn} r_b^{dn} \quad\text{s.t.}\ \sum_b(r_b^{up}-r_b^{dn})=\Delta,\ 0\le r_b\le \overline{R}_b $$
平衡约束的对偶变量 = balancing price(最贵被激活 BSP 决定)
One-price(单价)Two-price(双价)
结算偏差统一按平衡价“帮助系统的偏差”按日前价
优点市场化、价格信号连续抑制策略性套利
代价激励策略性偏离(预测缺电→日前少报→实时多发赚高价)行政式干预了价格信号

更好的方向不是 two-price,而是提高平衡市场流动性 + 更多主体参与竞争。Energinet 的 full cost balancing 让偏差造成的全部系统成本由制造者承担[8]

6 为“可用能力”付费:辅助服务

最核心的认知转换:能量市场买 MWh(已经发出的电),辅助服务很多时候买 MW(系统需要时能快速响应的“可用能力”)。
大白话 除了“发了多少电”,电网还需要买一种“待命能力”:平时不一定要你发电,但系统一有闪失(某厂跳闸、风突然停了),你必须几秒到几分钟内马上顶上,保住电网“心跳”不乱。这种“随叫随到、随时能响应”的能力,就是辅助服务。它按“待命出力 MW”付费,不是按“发了多少电 MWh”付费——这是它和能量市场最大的区别。
生活类比 像消防队、120 急救、保险公司——你付钱不是因为他们天天出警,而是为了“万一出事,他们在那里”。所以一套辅助服务可能一年都没被真正激活一次,照样收“待命费”。这跟买电完全是两回事。

合同只能说明谁有计划头寸,不能自动保证频率稳定、电压稳定、故障后有备用、大停电后能黑启动[1][2]。频率支撑服务按时间分层,像一个接力:

0 30s 5min 15min 频率 FCR <30s 接住 aFRR 自动恢复 mFRR 手动恢复
图 6-1 扰动后频率响应分层:FCR 先“接住”跌落 → aFRR 自动拉回 → mFRR 处理更大持久不平衡。Energinet:FCR 30s / aFRR 5min / mFRR 12.5min[9]

双层市场:容量(CM)+ 激活(EAM)

容量市场 CM能量激活市场 EAM
买什么“站好队、准备响应”“真正动作、改变功率”
单位€/MW€/MWh
DK2 频率支撑服务按频率偏差区间触发 频率 → 49.5 49.9 50.0 50.1 50.5 FCR-D Up 缺电→上调 FCR-N 正常调节 FCR-D Down 富余→下调
图 6-2 FCR-D Up(49.5–49.9 Hz,缺电线性增至满载)、FCR-N(49.9–50.1,正常态双向)、FCR-D Down(50.1–50.5,富余,2022 年引入)[9]

FCR-D 这类服务可能极少被激活,但仍有容量费 —— 就像保险,不为天天用,为出事时它在那里

备用容量价 = 机会成本(能量-备用耦合)
$$ \min \sum_i c_i^{up} R_i^{up}+c_i^{dn}R_i^{dn} \quad\text{s.t.}\ \sum_i R_i^{up}\ge \overline{R}^{up},\ \sum_i R_i^{dn}\ge \overline{R}^{dn} $$
备用约束的对偶变量 = 备用容量价

机组提供备用要少发电留上调空间、维持最低出力留下调空间、放弃能量市场机会 → 备用报价是对机会成本的补偿。卖出去的备用会改变资源在能量市场的可行域,所以能量-备用应联合优化(co-optimization);欧洲分开出清,美国 ISO/RTO 日前联合优化[2]

美国 ISO/RTO 日前联合优化(co-optimization)
$$ \max \sum_t\!\Big[\sum_i U_i(d_{it})-\sum_j c_j(p_{jt})\Big]-\sum_t\!\Big[\sum_j \rho^{up}_j R^{up}_{jt}+\rho^{dn}_j R^{dn}_{jt}\Big] $$ $$ \text{s.t.}\ \sum_j p_{jt}=\sum_i d_{it}\ (:\lambda_t),\quad \sum_j R^{up}_{jt}\ge RR^{up}_t\ (:\mu^{up}_t) $$ $$ p_{jt}+R^{up}_{jt}\le \overline{P}_j\quad(\text{能量与备用共享容量,机会成本在此耦合}) $$
同一机组在同一优化里同时卖能量 $p$ 与备用 $R$,容量耦合 $p+R\le\overline{P}$ 使机会成本被内部自动权衡。
TSO BSP(提供方) BRP / 负荷 容量费 CM + 激活费 EAM 偏差成本 + 容量分摊
图 6-3 资金流:TSO 向 BSP 付容量费(待命 €/MW)+ 激活费(动作 €/MWh);偏差与容量采购成本由 BRP/负荷承担,整体 budget balance。
P90 要求风光/柔性负荷参与备用,最多按预测分布的 10% 分位数出售 → 即 ≥90% 概率承诺容量可用。把“可能可用”升级为“高概率可验证”[10]。这是第十讲“机会约束”的市场原型。

动态备用定容

从年度静态走向小时级预测:Reserve sizing = Reference Incident + Normal Incident。新能源带来更大不平衡,备用需求本身需要预测和动态优化。

7 可再生能源进来,市场哪里变了

高比例新能源不是“多了低成本电源”,而是把市场从协调可调度发电推向同时协调发电/负荷/储能/电网/备用/预测误差/跨系统灵活性的新阶段。
大白话 风电光伏大规模接入后,电价反而更便宜了(它们发电几乎不要钱),但也更“颠簸”了——风大阳光足时,电便宜到没人要,甚至倒贴(负电价)让你用电;风一停云一遮,又得赶紧烧贵的油机保供。系统的难点,从“凑够电”变成了“对付忽大忽小的发电”。一天里这种忽高忽低,画出来像只鸭子,行话叫鸭子曲线
生活类比 像暴雨和干旱交替的自来水:水多时存不下要溢洪(弃风弃光),水少时又得限水限电。关键不是“全年水量够不够”,而是“能不能在短时间内大进大出地调节”——这种调节能力,正是后面要给“灵活性”定价的根本原因。

① 电价形态变了

风光短期边际成本接近 0,大量出力时把贵机组挤出序列 → 风大光强时电价下降,甚至零价/负价。但这不是失灵:那个时段电量不稀缺,稀缺的是灵活性/调节/储能/跨区输电。电量价降 ≠ 系统成本降 —— 备用/平衡/网络/系统服务成本在升。

② 从看“负荷”到看“净负荷” → duck curve

时段 负荷 净负荷(鸭子曲线) ↑ 中午光伏压低净负荷 ↑ 傍晚爬坡
图 7-1 鸭子曲线:系统压力不只看峰值多高,更看净负荷变化多快。中午低谷需吸收低价电,傍晚需快速爬坡资源。

③ 不确定性本身成为定价对象

风光预测误差让“供给侧误差”变重要。日前看起来平衡的系统,实时可能因风光偏差失衡 → 实时价更能反映真实稀缺。如果价格不能反映不确定性,资源就没有响应激励。

④ 平衡资源从“后台”变“核心产品”

秒级(频率/惯量)、分钟级(AGC/调频)、小时级(爬坡)、日级(储能/水电/跨区)—— 只定义“电量”无法给这些能力定价。

⑤ 电网容量更易成约束

风光远离负荷中心,外送不足时弃风弃光、拥塞、价差。低成本电源 ≠ 低成本供电

⑥ 系统惯量与频率稳定重新被看见

电力电子接口让同步惯量下降。GFM/虚拟惯量能补,但需设备能力 + 控制策略 + 并网规范 + 市场补偿共同支持 —— 这条直接连到 SST/MVDC/GFM 研究。

⑦ 从“修补”走向“重构”

时间尺度更细、空间颗粒度更细、产品边界更清、主体更多元、长期投资信号更重要。核心词 flexibility:但要被“产品化”—— 解决什么问题、响应多快、持续多久、可用性怎么验证、未履约怎么罚。

番外·类比互联网从拨号按时间收费,演进到宽带包月——用户买的不再是“在线分钟”,而是“持续接入网络的服务能力”。未来电费可能从“每度电多少钱”转向“接入电网、获得可靠供电和系统服务需要多少钱”。

8 风光怎么报价:不确定性下的“承诺”

报价不是“把预测值报上去”,而是在不确定性下选择一个市场承诺。
大白话 风电场不确定明天到底能发多少电,却要今天就先报一个数去卖电(日前市场)。报多了、实际发不够 → 要赔钱(偏差成本);报少了、实际发得多 → 少卖了钱(机会损失)。所以最优报价不是“最准的预测值”,而是在“赔”和“少赚”这两类损失之间找平衡。
生活类比 经典的报童问题(newsvendor):报童每天进多少份报纸?进多了卖不完烂在手里亏本,进少了客人来了没货少赚钱。最优进货量,取决于“剩一份亏多少”和“少卖一份少赚多少”的比例——和风电报价本质上是同一个数学问题。

Price-taker vs Price-maker

规模小/竞争充分 → 自己报价不影响出清价,只优化数量和风险(price-taker)。规模大/有市场势力 → 报价会影响价格(price-maker)。低边际成本 ≠ 没有市场势力——网络约束 + 容量集中 + 时间稀缺叠加时,风光组合完全可能从 taker 变 maker。

不完全竞争的两个原型

Cournot(古诺)Bertrand(伯特兰)
竞争变量产量价格
均衡价格 > 边际成本价格 → 边际成本
现实类比OPEC(控量保价)光伏/储能内卷(降价抢单)

风电日前报价 ≈ Newsvendor(报纸售卖商)

进多卖不完亏本,进少错过销售。风电报多了实际不够→偏差成本;报少了实际多发→机会损失。最优报价不是“最准预测值”,而在两类损失间找平衡。

newsvendor 临界比(一价制下可解析)
$$ \Pr\big(W \ge q^*\big) = \frac{c_u}{c_u+c_o} $$
$c_u$=缺货机会损失,$c_o$=超报偏差成本,$q^*$=最优日前报价量

随机规划:把不确定性放进模型

两阶段随机规划(price-taker 报价)
$$ \max_{q}\ \sum_s \pi_s\Big[\lambda^{DA}_s q - \lambda^{B}_s (q-W_s)\Big] $$
第一阶段(日前,现在决定)报 $q$;第二阶段(场景 $s$ 实现)承担偏差 $(q-W_s)$。$\pi_s$ 为场景概率。
样本外检验策略只在训练数据里赚钱 ≠ 真能赚钱。历史可被“记住”,明天不照昨天重复。必须在新场景下验证收益仍稳定(K-fold / out-of-sample)。优化模型 ≠ 可靠策略。
能力边界递进只发电=能量资源 → 能预测=可计划资源 → 能调节=灵活性资源 → 能担偏差=市场化资源 → 能在不确定下优化报价=成熟市场主体。

9 光看期望不够,还要看尾部:CVaR

两个策略期望利润相同,风险分布可能天差地别。风险不是波动,是尾部损失。
大白话 两个报价策略,“平均”算下来赚一样多,但一个稳稳赚、另一个平时大赚偶尔血亏。只看“平均收益”会被骗——你可能会在某次血亏里直接破产。所以还要看“最坏的几个情况,平均能亏多少”,这就是CVaR(尾部风险)。
生活类比 买基金不能只看“年化收益”,还要看“最大回撤”——一个号称 20% 收益但可能腰斩的基金,未必比一个 15% 但很稳的更值得买,取决于你扛不扛得住那个最惨的时刻。CVaR 就是专门用来量化“最惨时刻有多惨”的工具。
VaR(门槛) CVaR 尾部均值 利润分布 →
图 9-1 利润分布的尾部:VaR 是警戒线(门槛在哪),CVaR 是越过警戒线后的平均严重度。
VaR 与 CVaR(置信水平 α,如 0.95)
$$ \text{VaR}_\alpha = \inf\{\,\eta\ :\ \Pr(L\le\eta)\ge \alpha\,\} $$ $$ \text{CVaR}_\alpha = \mathbb{E}\big[\,L\ \big|\ L\ge \text{VaR}_\alpha\,\big] \approx \min_{\eta}\ \eta + \tfrac{1}{1-\alpha}\mathbb{E}\big[(L-\eta)^+\big] $$
CVaR 的 Rockafellar–Uryasev 重述使其成为线性凸优化里的可处理目标。
风险厌恶报价(多目标加权)
$$ \max\ (1-\beta)\,\mathbb{E}[\text{profit}] + \beta\,\text{CVaR}_\alpha(\text{profit}) $$
β 越大越保守(更关注尾部);β=0 即风险中性。不同主体 β 不同。
β=0.20 策略:偏激进

β=0 风险中性(只追期望利润,点在左上);β→1 极保守(追尾部安全,点滑向右下)。同一条前沿上的不同选择,没有哪个绝对更优。

图 9-2 有效前沿(可交互):横轴 CVaR(越右=尾部越安全),纵轴期望利润(越高越好)。更高期望必以更差尾部为代价。

10 灵活性资源价值原点:可验证的可靠交付

辅助服务市场买的不是电量,而是“可验证、可调用、可持续、且具有一定可靠性水平的响应能力”。平均可调能力并不表征灵活性的价值原点。
大白话 在最缺电的那短短一刻,多一点点“能立刻顶上”的能力(哪怕只有 0.5 MW、持续 15 分钟),就能把电价从 1038 欧元拦腰抬到 2000 欧元。这点能力的价值,不在于它发了多少电,而在于“在关键时刻它扭转了整个市场的局面”。这就是“灵活性”真正的价值所在——平均能调多少不重要,关键时刻能顶上才重要。
生活类比 像灭火器:它的价值不在喷了多少水、用没用过,而在“火刚起来那几秒能不能扑灭”。也像足球比赛的绝杀替补——他可能整场只上场 1 分钟,但进的这球决定了冠军归属。灵活性资源卖的,正是这种“关键时刻的扭转力”。
机会约束(P90 → chance-constrained program)
$$ \Pr\big(\,\hat{R}_\omega \ge R^{\text{offer}}\,\big) \ge 0.90 $$
不要求每个场景都满足(过保守),而要求足够高概率下满足——允许少量不利场景,但总体交付概率达标。
CVaR 重述:把机会约束转为可处理的凸形式
$$ \min\ \text{CVaR}_{0.10}\big(R^{\text{offer}}-\hat{R}_\omega\big) \le 0 $$
第九讲处理“利润尾部”,第十讲处理“可交付能力尾部”——同一工具,不同对象。可用 ALSO-X 或 CVaR 重述求解[11]

LER 要求(Limited Energy Resources)

电池、EV、柔性负荷有持续时间约束——不能只看能提供多少 MW,还要看能持续多久、恢复多快、下次调用前能否备好。Energinet 规定 LER 单元需 NEM/AEM 能量管理系统,FCR-D 需 reserve 20% 给 NEM[9][10]

数量 MW 价格 需求 1038 €/MWh 2000 €/MWh 仅差 0.5MW
图 10-1 灵活性的价值原点:出清点卡在供给曲线极陡台阶边缘,0.5 MW(15min 仅 0.125 MWh)就能把价从 1038 抬到 2000。它卖的不是能量,而是“关键时刻改变边际出清结果的能力”
经济学原点(三机制叠加)边际定价——高峰时供给曲线陡峭,价格对微小功率极敏感;②需求缺乏弹性——看不到实时价,价翻倍负荷不减;③灵活性稀缺价值——它的价值不在能量,在避免跳入下一高价台阶。灵活性不是补贴概念,而是价格曲线里已存在的经济信号。

全季收束

能量市场回答电量怎么配置;辅助服务市场回答系统怎么保持安全和灵活;容量市场回答长期充裕性怎么保障。三者不孤立——储能参加能量套利会影响辅助服务能力,数据中心承诺需求响应会影响业务连续性。学习辅助服务市场,其实是在学:如何把物理系统中的灵活性,变成市场可购买、系统可信任、参与者可盈利的可靠服务。

🔗 横切:欧美对比 & 设备→市场之桥

一个新技术能否落地,不只取决于技术参数,还取决于系统是否需要它、规则是否承认它、价格是否奖励它。
维度欧洲美国 ISO/RTO
MO 与 SO分离(Nord Pool 出清,TSO 运行)合一(ISO 既出清又运行)
价格分区 zonal节点 nodal (LMP)
能量/备用分开出清日前联合优化 co-optimization
网络表达NTC / flow-based线性化潮流 + 线路限额

设备→市场→可靠性 三层映射(给做 SST/MVDC/GFM/储能/AIDC 的人)

  • 技术设备提供能力(能调多快、持续多久、多少 MW);
  • 市场机制定义这种能力如何被识别、定价、调用、补偿;
  • 可靠性规则(P90 / LER / 样本外可交付)决定它能否进入系统运行责任边界。
方法论只懂设备会高估技术价值;只懂市场会低估交付难度。电力市场最有意思的地方,是逼你把工程、经济、制度问题放在同一张图上看。

📖 术语速查

MO(市场运营机构 Market Operator)—— 负责“撮合出清、定价格”的裁判,本身不管电网运行(欧洲如 Nord Pool)。

TSO(输电网运营商,欧洲)—— “管电网运行、保平衡”的,BSPBRP 都围着它转。

ISO/RTO(美国)—— 既出清又运行的“合一”裁判,如 PJM、CAISO、ERCOT。

DSO 配电网运营商 —— 管低压配电网那一层,未来会越来越重要。

Aggregator 聚合商 —— 把一堆零散小资源(家用充电桩、空调、电池)打包成“一个大卖家”去参与市场。

📚 参考文献(已验证来源)

本笔记每个关键论断都尽可能附可验证的一手出处。以下为引用列表。

引用

  1. Stoft, S. Power System Economics: Designing Markets for Electricity. IEEE Press / Wiley, 2002, 468pp. ISBN 978-0471150404. 五部分 44 章;p.50 efficiency=total surplus,p.56 price-takers,p.220 single-price DA auction efficient,p.261 "the critical issue is speed",p.292 reserve markets tightly linked,p.390 physical impediments to trade. → WileyChapter 2 (Two-Settlement) PDF
  2. Kirschen, D. & Strbac, G. Fundamentals of Power System Economics. Wiley, 2nd ed. 2010 (3rd ed. 2024). 全球福利/总剩余定义、price-taking 假设、拥塞切分市场、locational marginal pricing 定义、能量-备用联合优化必要性。 → Wiley
  3. Kazempour, J. DTU MSc “Renewables in Electricity Markets”(2021–至今,2025 版含视频)。10 讲结构与本笔记完全对应:L1 Introduction / L2 Fundamentals / L3 Day-ahead / L4 Optimization vs equilibrium / L5a Intraday / L5b Balancing / L6 Ancillary / L7 Impact of renewables / L8 Optimal offering / L9 Risk management / L10 Offering in ancillary. → 课程页
  4. DC power flow 近似、AC 潮流非线性非凸:见 Kirschen&Strbac 第 2/5 章;Stoft Part 5 Locational Pricing。
  5. Flow-based market coupling / PTDF / RAM:ENTSO-E Core CCR 文档 → Core DA FBMC
  6. ENTSO-E SDAC:PCR EUPHEMIA 算法、输入输出、最大化社会福利(consumer+supplier+congestion rent)、CACM Regulation (EU) 2015/1222、Core FB 2022-06-08 go-live、15min MTU 2025-10-01。 → SDAC
  7. Kazempour, J. DTU Summer School “Market Design for Integrated Energy Systems” — Part II: Optimization, Equilibrium, Properties。市场出清三形式等价(KKT 相同 → Nash equilibrium)、四个 desirable properties(incentive compatibility / cost recovery / market efficiency / no market power)、LMP 定义。 → Part II PDFPhD 课程页
  8. Energinet full cost balancing / one-price vs two-price:见 Stoft Ch. on operating reserves 及 Kazempour L5b。
  9. Energinet 辅助服务产品概览 DK1/DK2:FCR 30s / aFRR 5min / mFRR 12.5min;DK2 含 FFR/FCR-D up/down/FCR-N;CM+EAM 双层。 → Product Overview PDF
  10. Energinet P90 & LER 要求(招标条件 + 预认证):LER 需 NEM/AEM 能量管理,FCR-D reserve 20% 给 NEM。 → Tender Conditions PDFPrequalification PDF
  11. Veit, D. et al. / Kazempour 团队 “Aggregator of Electric Vehicles Bidding in Nordic FCR-D Markets: A Chance-Constrained Program”, arXiv:2404.12818. 用 ALSO-X 与 CVaR 重述求解 joint chance-constrained 模型,1400 个丹麦充电盒真实数据,out-of-sample 验证。 → arXiv

原始系列:EG·AI³ 公众号《从零开始学习电力市场》第一季(2026.05–06),10 讲。第 1 讲原文链接在抓取时被微信风控拦截,本笔记中第 1 讲据后续各讲回溯重构。

延伸阅读(Kazempour 课程的进阶路径)

本笔记覆盖 MSc 课程核心 10 讲。同一作者还公开了:

  • MSc Lecture A — Offering strategy of price-maker renewables(price-maker 视角的双层规划报价)
  • MSc Lecture B — Incorporation of unit commitment constraints(把 UC 纳入出清与定价,对应本笔记 L4 的 uplift 主题)
  • PhD 课程 "Advanced Optimization & Game Theory for Energy Systems" — stochastic/robust market clearing、bilevel programming、Benders 分解、cooperative game theory,把 L8–L10 的不确定性建模推向方法论的更深处[7]