Welcome back everyone! I hope you’ve been well. This is part two of a three-part series on energy price statistics, where we will develop a theoretical framework for understanding electricity price data and power plant economics using real data and some fun math.
Today, we’ll continue our foray into energy price statistics, this time viewing our lognormal energy price distributions through the lens of power plant economics. Specifically, we will cover:
Basic power plant economic and operational definitions like marginal cost of operation, economic dispatch, revenue, capture price, and profit.
Expected value and how to incorporate energy price statistics into economic calculations.
Limitations of the lognormal distribution assumption.
And here, in case you missed part 1:
A few words before we get started
In part 1, we focused heavily on the basics of electricity markets and how to characterize energy price distributions. I hope you agree that while the statistics are interesting enough in their own right, they become more useful when we apply them to problems like estimating power plant generation and profits. So that’s what we’ll do today!
Specifically, we’ll use energy price statistics to derive equations for evaluating power plant economics as a function of marginal operational costs MC, energy price mean μ, and standard deviation σ.
Buckle up!
Economic dispatch
First, we’ll look at economic dispatch: how often a power plant will be running, assuming profit-maximizing operation.
To maximize profit, power plants only dispatch when the market clearing energy price (marginal revenue) is greater than their marginal cost of production. This makes sense, because otherwise, power plants would be losing money for each unit of energy generated. This operational strategy is called economic dispatch.
The basics
Let’s walk through an example of how to calculate economic dispatch. Let’s pretend we are a power plant with a marginal cost of $25/MWh and an available power capacity of 100 MW.
If the energy price is $75/MWh, we will profit, netting $50/MWh. Therefore, it makes sense for us to maximize our output, which would put our dispatch equal to our total available power capacity of 100 MW.
where P is our energy price and MC is our marginal cost of operation.
If energy prices are <$25/MWh, we would lose money by generating. So, we simply don’t dispatch. Or, if our plant can’t completely switch off, we dispatch at our minimum capacity. Mathematically, we can express this behavior as a piecewise function.
A sample calculation
Let’s apply this to ERCOT North to estimate our plant’s profits for 2024.
The average day-ahead energy price in ERCOT North was $27/MWh. Because our marginal cost of operation is $25/MWh, we will profit, so our average economic dispatch is 100 MW.
Right?
No!
We can’t use averages to estimate power plant economics, because energy prices are volatile. What if our plant had MC = $30/MWh? Would dispatch be 0 MW, on average? Of course not. There are many hours of the year when LMP > $27/MWh, creating plenty of opportunities for a $30/MWh plant to dispatch and earn profit.
A brief introduction to expected value
Rather than using averages, we should figure out what the dispatch is for each possible P value from 01 to infinity, multiply by the % of time in 2024 we saw that P value in the market, and sum everything together. In other words, we want to calculate the expected value of economic dispatch, which is done by integrating our energy price probability distribution across the entire interval.
where p(P) is our energy price probability density function introduced in part 1.
For those of you less familiar with calculus and more familiar with Excel, this is like making a table with three columns:
Price P
Price probability p(P) (%)
Function evaluated at the given price X(P)
The expected value of X is then equal to the sumproduct of columns 2 and 3. In essence, expected value is a probability-weighted average. Integration is just a way to do this with math instead of spreadsheets!
The derivation
To calculate the expected value of economic dispatch within a given time interval, we begin with our expected value integral.
First, we split the integral into two parts to handle the piecewise economic dispatch function. One where P < MC, and another where P > MC.
We are left with the second integral, as the first one is equal to zero. Available capacity is constant, so we are left with simply integrating our probability density function from MC to infinity.
We’ll assume a lognormal probability distribution like we introduced in part 1.
Visually, this integral is the area under the probability density function from MC to infinity, which also yields an analytical solution for economic dispatch.
Economic dispatch opportunity
Testing the theory
We can compare our lognormal-derived economic dispatch function with numerical simulations of actual data to see how our theory holds up. Let’s look at economic dispatch for 2024 in ERCOT Houston across a range of marginal costs.
We see that the fit is pretty good at marginal costs from $0 - $25/MWh! Beyond that, our fit yields lower-than-actual dispatch. This is because our lognormal distribution doesn’t have a sufficiently heavy tail to capture the full range of power price volatility.2
Trend-wise, economic dispatch is most sensitive to marginal cost of operation around $20/MWh, which happens to be the peak of our energy price probability density function. This is because we are sweeping through the bulk of our energy price distribution as we vary marginal costs, where economic dispatch opportunities will vary the most.
A short recap
Economic dispatch is a function of energy price and marginal cost of operation.
The expected value of economic dispatch across a range of energy prices is a function of marginal cost of operation, energy price mean and standard deviation.
Economic dispatch increases with lower marginal costs, and varies the most when marginal costs are close to the mean energy price. Additionally, our lognormal-derived function underestimates economic dispatch at high marginal cost values because of an insufficiently long tail.
Revenue and capture price
We’ve looked at how dispatch is calculated. What about revenue?
The basics
Revenue, as you might guess, is equal to the market clearing energy price (marginal revenue, in $/MWh) multiplied by power plant dispatch (MWh).
where R is revenue as a function of energy price P and t_op represents operating hours.
A sample calculation
Let’s stick with our example of a 100 MW dispatchable power plant with a $25/MWh marginal cost of operation.
If energy price P = $75/MWh, economic dispatch would be 100 MW. If we operate for 1 hour, revenue would be $7,500.
Deriving expected value
Just like before, we’ll apply our expected value integral to revenue to incorporate the stochastic nature of energy prices to evaluate revenue within a given period.
Again, we will break our integral into two separate parts to handle the piecewise form of economic dispatch.
The first integral is zero, and we can factor out constants from the second, which gives us a new integral.
Interestingly, this integral is the first moment of our probability distribution from MC to infinity.3 Assuming a lognormal probability density function, we get an analytical solution for the expected value of revenue.
Testing the theory
Yikes — this is much worse than our economic dispatch comparison. Although the overall shape is good, it looks like we’re missing 4-5 million USD in revenue for the year. This missing money is likely due to the same issue of our lognormal distribution being insufficiently volatile to capture the full range of energy price spikes. The only difference being, these errors are exacerbated when analyzing the first moment of the distribution (P * p(P)) instead of the zeroth moment (probability, or just p(P)).
We can better analyze this discrepancy by looking at capture price: the average energy price we get when we are generating revenue. Mathematically, this is equal to revenue divided by dispatch.
We can use the equations we’ve derived already to get a solution for the expected value of capture price.
How does our capture price solution hold up to numerical analysis?
Well, still not great. But at least we are able to linearize the discrepancy! We also see that capture prices are pretty close at low marginal costs, and diverge linearly as marginal costs increase.
We can see this behavior if we take the limit of our function as MC → ∞. The derivation is a little bit involved, so I won’t go into it here, but perhaps we can take a closer look in a future post (and maybe correct for nonidealities?)4 Qualitatively, this is due to the evolving shape of the profitable slices of the energy price probability distribution as our cutoff (marginal cost) increases and moves past the distribution peak.
A quick recap
Revenue are a function of energy price and marginal cost of operation. Relatedly, capture price is defined as the average energy price when dispatching economically.
The expected value of revenue and capture price across a range of energy prices are both functions of marginal cost of operation, energy price mean and standard deviation.
Revenue decreases with increasing marginal cost, while capture price increases with increasing marginal cost. Notably, the idealized lognormal distribution solution for power plant revenue significantly underestimates actual revenue, with capture prices being 2-3x lower than expected.
Profit
Last but certainly not least: profit!
Don’t worry, we are done with the derivations. We can use our existing equations to derive an analytical solution for profit.
Profit is defined as the difference in the energy market clearing price (marginal revenue) and marginal cost, multiplied by dispatch.
The expected value of profit has a similar form, as you might intuit5.
It’s not the prettiest solution, but here it is.
Now, how does our profit function compare with reality?
Well, surprise surprise. It’s still bad, due to the same lognormal limitations we’ve already discussed. And, intuitively, profit decreases with increasing marginal cost.
A recap
So, what have we learned so far?
Economic dispatch is power plant output assuming profit-maximizing operation (dispatching only when energy price, or marginal revenue, is greater than marginal cost).
Capture price is the average energy price captured when dispatching economically; also equal to total revenue divided by total dispatch.
We can use statistical concepts like probability density functions and expected values to incorporate the stochastic nature of energy markets into power plant economic analysis.
We can derive analytical functions for power plant operating characteristics like economic dispatch, revenue, capture price, and profit as a function of marginal cost, energy price mean, and standard deviation if we assume a lognormal energy price distribution.
Lognormal energy price distributions fail to capture the heavy tail needed to accurately model power plant operation. Specifically, they underestimate economic dispatch and capture price at high marginal costs, and underestimate revenue and profits across all marginal costs. Furthermore, our analysis does not incorporate real-world operational constraints like ramp rates, or optimization of capacity between different types of energy and ancillary markets. We also fail to capture 0 and negative energy prices, which are essential to evaluating power plant economics in high renewable penetration markets like California and Texas.
I would also love to discuss how these functions vary with energy market characteristics like μ (energy price mean) and σ (energy price volatility), but that would easily double the length of this post. Something to leave for a future installment (or perhaps something to investigate yourself)!
Finally, I’ll close with a reference table of the key functions discussed today, a sneak peek of what’s to come, and some exercises for the mathematically curious reader.
Thank you again for reading, and I hope you will stick around for part 3.
Definitions
Economic dispatch
Revenue
Capture price
Profit
Expected value
Economic dispatch
Revenue
Capture price
Profit
Up next
Up next: a similar approach to estimate energy storage revenue and profit!
Exercises for the reader
Can you derive the expected value of economic dispatch if we cannot completely switch off our plant?
Can you derive the equations for economic dispatch assuming a log-Cauchy distribution? What about revenue?
How does economic dispatch, capture price, and profit vary with energy market characteristics like μ (mean) and σ (volatility)?
Can you prove that the slope of capture price with respect to marginal cost is 1 when MC is large? Hint: use L'Hôpital's rule (and simplify!)
Can you prove that the expected value of profit is equal to the expected value of economic dispatch times the capture price minus marginal costs? Hint: apply the expected value integral to the profit definition function.
Implicitly assuming LMPs are >0, which, as discussed in part 1, is good enough for our analysis here, but breaks down in high renewable penetration regions in the US. More to discuss in a future installment.
The log-Cauchy distribution, on the other hand, captures too much volatility. The log-Cauchy fit actually yields higher-than-actual dispatch at high marginal costs. If you’re interested, I encourage you to derive the log-Cauchy economic dispatch function as an exercise :)
Knowing this, would we be able to calculate the expected value of revenue assuming a log-Cauchy distribution?
Can you prove that the slope of capture price with respect to marginal cost is 1 when MC is large? Hint: use L'Hôpital's rule (and simplify!)
Can you prove this? Hint: apply the expected value integral to profit as a function of energy price P.