Probabilistic portfolio valuation for hydro utilities · public data only

One dot, or the whole cloud

A mid-Columbia public utility forecasts wholesale revenue the way the region's utilities do: average water, current forward curve, one number per year. This page keeps that number exactly where it is and draws the ten thousand plausible years around it. Then it shows what you can decide once you can see them.

PublishedPublic feedMixedSimulated

Disclaimer. This page was built from public documents and public data, using a quantitative and probabilistic modelling view, and reflects SignalPop's best understanding of how the forecast and the forward book are built today. It is not a statement of the utility's actual practice, which is not fully public, and the utility has not reviewed it. Where a rule is assumed, the page says so and names the document it is inferred from.

Every chart carries one of these tags. Published = the utility's own figures. Public feed = USGS, EIA, BPA. Mixed = public data through a stated model. Simulated = a placeholder the pilot replaces.
STEP 1

Ten thousand plausible years, sorted

The forecast is a product of two inputs: how much water comes down the Columbia, and what the market pays for a megawatt-hour. Every rule the desk uses today — the budget number, the haircut on what is sold forward, the share left for the spot market — is a point on a distribution nobody has drawn. History gives each input an average and a spread, and gives the pair a lean: dry years arrive with high prices attached, because the whole region is short at once[3][4]. Five numbers in total. Draw from them ten thousand times and every draw is one plausible year.

Sensitivity — what if the water–price relationship is weaker than history? −0.45 is a placeholder the pilot fits from the record.
The cloud: 10,000 water–price years
Water as a fraction of normal, against realised annual price. The current forecast method is the single ring.
Simulated
year worth more than the median on the market lineyear worth less than the mediancurrent forecast method: average water × forward curve
Each dot is one simulated year; brighter means further from the median. Upper-left is dry and expensive; lower-right is wet and cheap. The tilt is the correlation, and it is the single most important thing a one-number forecast throws away: in the years you have less to sell, each unit sells for more. The river partly hedges itself.
Assumptions on this chart
  • Water: lognormal, median 1.00 of normal, spread σ = 0.22 (placeholder; fitted from USGS 12462600 daily discharge and EIA-923 generation in the pilot).
  • Price: lognormal around the price the published 2026 market line implies ($39.3/MWh = $109.9M ÷ 2.8M MWh), spread σ = 0.35 (placeholder; EIA Mid-C history, 2010–2025 mean ≈ $43). A lognormal is strictly positive: fine for an annual average, which has never been negative at Mid-C, but hourly and daily prices do go negative in spring runoff, so the pilot's forward-book and day-ahead valuation uses a price process that allows negative prices and spikes.
  • Correlation ρ = −0.45 between the two draws, baked in before exponentiating (a Cholesky mix[8]), not applied afterwards.
  • Mean and median. The published dot (1.00 of normal, $39.3/MWh) is placed at the median of each draw. A lognormal's arithmetic mean sits σ²/2 above its median — about 2.4% for water at σ = 0.22 and 6.3% for price at σ = 0.35 — so if the utility's figures are means rather than medians the whole cloud shifts down by that much. The pilot fits the shape from the record and settles which it is; the acceptance test stays the same either way.
  • Lognormal tails: a 2021-style price spike or a deeper-than-record drought is not generated. The pilot's companion exhibit is a replay of the historical record against today's book — no simulation, no shape assumption — which needs the generation history that is not yet on this page.
The stack ranking: 10,000 annual revenues, worst to best
Total electric revenue, $M. The sorted list is the product; everything after this is read off it.
Mixed
simulated years, sortedP5 dry-year floormedianpublished 2026 forecast
Assumptions on this chart
  • One dot becomes one revenue number with the utility's own arithmetic: water ratio × 9.0M MWh; retail 2.6M MWh served first at fixed rates; cost-based contracts are slices (3.6M MWh at normal water, scaling with the river); whatever is left is merchant and sells at the dot's price.
  • Fixed revenue (service $95.8M, other $41.5M) and the contract price ($60.7/MWh implied by $218.4M ÷ 3.6M MWh) are identical in every dot; all the width comes from the merchant slice.
  • Volumes are reconstructed to reproduce the published $218.4M and $109.9M lines; they are the first thing to ask staff for.
  • Fleet treated as one machine; retail load held constant; no shaping premium; annual resolution. Each is a named pilot task.
How today's haircut splits the same 10,000 years between forward sales and real-time
The years sorted by water, driest to wettest. The desk sells forward only the merchant volume it would have under a conservative water case; whatever the river adds beyond that is sold in real time, and in years below the haircut the shortfall is bought back at spot.
mixed
sold forward at a fixed price (the haircut volume)left for real-time / day-ahead saleshort: bought back at spothaircut: merchant volume at the chosen water percentile
Assumptions on this chart
  • Merchant volume per year = 9.0M MWh × water − 2.6M MWh retail − 3.6M MWh × water contract slices; the forward-sold block is the merchant volume at the haircut percentile of water (slider), priced at the implied market price less a 5% forward discount.
  • Years above the haircut sell the remainder at that year's realised price; years below it buy the shortfall back at that year's (high, dry-year) price. Price and water are drawn jointly, so the buy-back happens exactly when spot is dear — the leverage the haircut is meant to avoid.
  • The haircut level is an assumption stated as such. The regional convention is documented: Bonneville commits only "firm" generation — the monthly P10 of the record — and treats "generation from water in excess of critical water conditions" as secondary energy valued at Mid-C market prices[21][22]; Tacoma Power's rate policy plans surplus sales on water "exceeded 75 percent of the time"[23]; Seattle City Light "maintains strict limits on the portion of its surplus position made available for forward sales to avoid potentially high replacement power costs in low-water years"[24]. The utility's own 2011 forward-transactions resolution caps net forward sales at "the annual surplus energy at the 50th percentile level as determined from the District's probabilistic simulation model"[20] — so the desk already has a water distribution; what the cap does not carry is price drawn jointly with water, or a tolerance for being short. Its medium-term hedges are also slices, which pass volume risk to the buyer[25]; the fixed block drawn here is the forward-book analogue, not the slice book.
Today's rule, as an assumption to be replaced by the desk's actual practice

What a better-conditioned dot is worth

The haircut sells the same block every year because the dot it works from is the same every year. Suppose instead that, at the time of commitment, a forecaster had already resolved part of this year's water uncertainty — from snowpack, soil moisture, the river forecast centre's outlook — and the block were sized from that distribution at a tolerance the board chose. Drag the skill slider to see what the difference is worth on the same ten thousand years. The comparison is tolerance-matched, so at zero skill the two rules are identical and every dollar of difference is the forecaster's; the value grows with skill, and the walk-forward backtest in Step 3 is what measures the skill honestly.

Merchant revenue, sorted: today's haircut against a forecaster-sized block
Same 10,000 years, same forward price, same spot prices. Only the size of the block sold forward changes — and it changes year by year with what the forecaster knows.
simulated
today's haircut (fixed block)forecaster-sized blockP5 of each
Assumptions on this chart
  • Forecaster skill s is the share of log-water variance resolved at commitment (an R²). The forecaster sees the true year plus noise; its conditioned distribution has centre s × signal and spread σw√(1−s). The block is the merchant volume at the conditioned percentile equal to the haircut (P25 by default), so the two rules carry the same chance of being short and the comparison isolates the forecaster. At s = 0 they are identical by construction.
  • Both rules sell the block at the implied market price less 5%, sell the remainder at the year's spot price, and buy back any shortfall at the year's spot price. No shaping premium; no option value of waiting. The comparison is a floor on what conditioning is worth.
  • Skill is a placeholder until the backtest produces it; for spring runoff on a snowmelt river, published water-supply forecasts resolve a large share of the annual uncertainty by April[12], and a model trained on the drivers is expected to resolve some of it earlier. The chart shows the value of whatever skill the backtest proves — no more.
Forecaster skill at the time of commitment — a placeholder the walk-forward backtest replaces
Sensitivity — every slider is a stress test, not a knob. Amber values are placeholders the pilot replaces with fitted ones.
STEP 2

How the forecast is built today — and why it is the control

The method is the regional convention, and it is documented. Retail-side budgets and multi-year forecasts across the Northwest are stated on average or normal water: the utility's own budget assumption reads, two years running, "Average water, current forward energy and carbon price curves"[16][17]; Seattle City Light's financial forecasts "are based on average water years in the future"[18]; Idaho Power states its annual generation "under median water conditions"[19]; and the Council defines "average energy" as what the hydro system can be expected to produce in a typical year[5]. Bonneville is the instructive nuance: its hydro simulator runs every historical water year as equally likely — a distribution, not a dot — but the rate case then passes only the mean of the resulting secondary sales into the rate model[1][2]. Nothing here says that is wrong. It says that it produces one number, and that the number is the median this model has to reproduce before it is allowed to say anything else.

InputNinety years of annual generation (or flow) at the projects
Current forecast methodAverage the years → 1.00 of normal. One water case.
× priceToday's forward curve. One price case.
OutputOne revenue number per year, 2026–2030
This modelSame inputs, same arithmetic, run 10,000 times with the water–price lean kept
Ninety water years, and the one number they become
Annual flow as a fraction of the long-run average. The average line is the whole of the input to a one-dot forecast.
Simulated
one water yearaverage = 1.00P10 dry year
The published five-year forecast, untouched
Electric revenue by line, $M, from the Q2 2026 quarterly financial review's five-year outlook.
Published
long-term hydro contractsnet market-basedservice (retail)other
Two things to read off it. The market-based line grows by two-thirds in four years while the contract line shrinks: by 2030 nearly half of wholesale revenue rides on the market. And the 2026 line was booked below budget when the forward curve came in lower than forecast — the exposure is growing, and the method that measures it produces one number per year.
"Average water, current forward energy and carbon price curves."The wholesale revenue assumption as stated in the utility's 2025 and 2026 budget kickoff presentations[16][17]. The same convention Seattle City Light and Idaho Power state for their own forecasts[18][19], and the one Bonneville's rate model collapses its simulation to[1][2].

Where the current forecast method's number sits in the sorted list. A forecast that lands near the median of the cloud is mutually validating: the model reproduces the current forecast method and adds the range around it. If it sat at the 60th percentile, the planning number would be mildly optimistic, beaten in four years of ten. Either answer is useful, and neither is "your number is wrong."

STEP 3

A forecaster that narrows the band as the year unfolds

The cloud is drawn from ninety years of climatology, so it says the same thing every October regardless of what the mountain looks like. A Temporal Fusion Transformer[6] is trained on the real record only — snowpack, weather, flows, gas and power prices, and what happened next — and emits quantiles, not a point. It does two things the cloud cannot: it moves the centre with this year's conditions, and it narrows the water band through spring as the runoff becomes knowable. The price band never closes, because price uncertainty does not resolve with snowpack. The forecaster feeds the simulation; it is never trained on it.

Additive, not a replacement. The baseline is the current forecast method — average water × forward curve — and it stays exactly where it is. Each layer below is added on top of it and is scored against it; nothing is subtracted.

Baseline · current forecast methodAverage water × forward curve. One number per year. The control every layer is measured against.
+ Width · the cloudThe same number as the median, plus the range around it and the water–price lean. Adds the dry-year floor.
+ This year · the forecasterMoves the centre and narrows the water band with what the mountain shows now. Adds skill over climatology — only if the walk-forward backtest says so.
+ The decisionA split, a monthly haircut and a reserve chosen against a floor the board owns. Adds a defensible number in place of a rule of thumb.

The value of the forecaster is measured the only honest way: the same forecast made from 1 January of each past year using only what was knowable then, scored against what happened, side by side with the ninety-year average as the naive baseline[7]. The gain is the difference. If the backtest shows none, the baseline stands and the cloud alone still carries the decision.

Two widths stacked: conditioning narrows the water band; the price band stays
Revenue-year outlook as a multiple of normal, October through July, for the year type selected.
Simulated
total band, water + price (P10–P90)price-only floor on uncertainty (P10–P90)conditioned centre (this year)climatological average (the current forecast method, every October)
In a normal year the two centres nearly coincide, which is reassuring. In an unusual year they diverge by spring, and that is where the near-horizon money is. Over a twenty-year contract this year's snowpack barely matters: the cloud sells the long-horizon decision; the forecaster sells the near-horizon one.
Assumptions on this chart
  • Illustrative widening: water-band σ shrinks from 0.22 in October to 0.05 by July following a knowledge schedule (snowpack accumulates through March, NWRFC water-supply forecasts sharpen through May[12]); price σ held at 0.35 throughout.
  • The conditioned centre is a stylised year type, not a forecast. The pilot replaces this chart with the backtested model's own quantiles.
Year type — what the mountain looks like this October
What the forecast leaned on
Model attribution (variable-selection weights) for a spring inflow forecast.
Simulated
Which inputs the forecast leaned on, in terms a commissioner can repeat: snowpack, the river forecast centre's outlook, recent inflow, gas. Attribution weights are an interpretability aid, not a causal explanation[6] — they say what the model used, not why the river did what it did.
Does an 80% band contain 80% of outcomes?
Claimed coverage against observed share, walk-forward.
Simulated
A point forecast has no test like this to fail. A probabilistic one is scored on calibration and sharpness[7], year by year, using only what was knowable on 1 January. Backtest first; claim second.

Why the forecaster is the part that matters — and the part that is hard. The cloud is honest, but anyone with a statistics package can draw it, and the utility's own forward-transactions resolution shows a probabilistic surplus model already exists on the desk[20]. What no one on the river has is the conditioned dot: a forecast of this year's water and price, at every horizon from a week to eighteen months, that carries its own calibrated width and can say what drove it. That is a different kind of object. It has to learn from many related series at once (snowpack at a dozen SNOTEL sites, soil moisture, temperature outlooks, gas, the river forecast centre's own numbers) while respecting inputs that are known in advance (calendar, scheduled outages, contract step-dates); it has to emit quantiles rather than a point so it can be scored; it has to be tested walk-forward with no leakage from revised datasets; and it has to attribute its forecast to inputs a commissioner can repeat. The Temporal Fusion Transformer was designed for exactly that combination[6]. SignalPop implemented it natively in its own deep-learning framework in 2023 and runs transformer-based probabilistic forecasters in production on live financial data, where a mis-stated width costs money the same afternoon. The slider in Step 1 puts a dollar figure on whatever skill the backtest proves; building the thing that earns the skill is the work.

The working arrangement. The spreadsheet stays. The forecaster sits beside it, and its median must reproduce the published line before anything is added. What gets added is width — a credible range, the water–price lean, and a split chosen against a downside floor rather than a target percentage. Nobody is asked to concede that a point forecast is inaccurate, because that is not the claim: the claim is that it is conditioned on long-run averages, and a walk-forward backtest against the naive baseline shows whether conditioning on this year's information helped historically. If it did not, that is learned cheaply and honestly.

STEP 4

Sell forward, or keep it for the day-ahead market

Three decisions change once the forecast has width. How much of the energy that has come free to lock into multi-year contracts; how much of this year's expected runoff to sell forward month by month; and how much capacity to hold back for the Western Resource Adequacy Program, which becomes binding for every participant from the winter 2027–28 season (1 November 2027; summer 2027 is an optional early binding season)[13]. That obligation is stated in megawatts of qualifying capacity in the program's critical hours, not in annual energy: what counts toward it depends on qualifying resources, qualifying contracts and transmission rights, and a fixed-volume forward block can constrain what the utility is able to show. All three depend on the same two things: how wide the band is right now, and whether water and price still lean against each other.

Is the lean stable? Water–price correlation on a moving 15-year window
Rolling correlation across the ninety-year record, with the full-record value.
Simulated
15-year rolling correlationfull-record correlationweaker than −0.20: hedge fades
Assumptions on this chart
  • Ninety synthetic years drawn at the correlation set by the Step 1 slider; in the pilot this is fitted on the deseasonalised monthly record (EIA Mid-C price, USGS flow) with a confidence interval, and time-varying correlation is estimated properly[9].
  • If the correlation is stable, it is a quantified natural hedge you can put a dollar figure on. If it drifts, the split is chosen so that it survives every regime in the window — robustness, not prediction.
How much of this year's runoff to sell forward, month by month
Runoff percentile you can commit against while keeping the chance of being short below the tolerance the board sets.
Simulated
rule of thumb: sell to P25 every monthcalibrated: moves with what the forecaster knowsrisk avoided (murky months)value recovered (clear months)
Assumptions on this chart
  • The rule of thumb (sell against something like P25 runoff, regardless of month) is an analogue of common desk practice, stated as an assumption to be replaced by whatever the desk actually uses.
  • Calibrated line: with the water band at this month's conditioned width σm, the volume that keeps shortfall probability at the tolerance is exp(ztol·σm) of the conditioned median, expressed as a percentile of the October (unconditional) distribution.
  • Year-one bound: the model may recommend selling less than today's rule, never more. Worst case is never worse than current practice, and the contract says so.
Board-owned settings — the model finds the number; staff own the tolerance
The frontier: expected value against the dry-year floor for the energy that has come free
About 0.9M MWh/yr by 2029. Each point is one split between multi-year fixed-price commitment and energy kept flexible for forward and day-ahead sale.
Simulated
share kept flexible, 0% to 100%board-owned floorhighest expected value that clears the floor
Assumptions on this chart
  • Committed share sold as a slice at a 5% discount to the implied market price; flexible share sold at the dot's price with a 6% shaping premium (a floor: straight average, no on-peak weighting).
  • Because dry years arrive with high prices, keeping some energy flexible raises the dry-year floor up to a point; past it, price risk dominates. The floor-maximising split is a property of the correlation, not an opinion — drag the Step 1 slider to zero and watch it disappear.
  • Option value of waiting (re-optimising each year with a Longstaff–Schwartz continuation rule[14]) is not shown here; it only adds to the flexible side.

What this page does not do. It does not touch dispatch, trading or any operational system; it is advisory and reads exports. It does not claim a result: the spreads and the correlation are placeholders, the volumes are reconstructed, and the fleet is one machine. What is real is the arithmetic, the published lines it reproduces, and the shape of the decision. The pilot's job is to replace every amber tag on this page with a fitted number and a backtest, and to hand the working model to the people whose spreadsheet it sits beside.

REGISTER

Every number on this page, and where it comes from

Four kinds of number appear above. Published figures are the utility's own, copied to the decimal. Public feed figures come from USGS, EIA, BPA or NRCS; on this page the USGS flow record loads in the browser when the page is hosted, and the price history arrives with the pilot. Reconstructed figures are derived from published ones through a stated calculation. Placeholders are illustrative values chosen to be in the right neighbourhood; each is a pilot task that replaces it with a fitted, backtested number.

QuantityValue usedKindSource / how it is replaced
Revenue lines 2026–2030 (service, contracts, market, other)as tabulated in Step 2PublishedQ2 2026 quarterly financial review, five-year outlook [15]
Forecast method: "average water, current forward energy and carbon price curves"quotedPublishedThe utility's 2025 and 2026 budget kickoff presentations [16][17]; Q2 2026 review appendix [15]
Average annual generation9.0M MWhPublishedUtility fast facts ("9 million megawatt hours a year"); EIA-923 for the plant-level series (plant IDs 3883, 6200 and 6424) [11]
Retail load2.6M MWh, held constantReconstructedClean Energy Implementation Plan compliance-period forecast ÷ 4; pilot models retail as a third correlated variable
Cost-based contract volume3.6M MWh at normal water, scaling as a sliceReconstructedChosen so $218.4M ÷ 3.6M = $60.7/MWh; first item on the data request
Market volume and implied price2.8M MWh; $39.3/MWhReconstructed9.0 − 2.6 − 3.6; $109.9M ÷ 2.8M MWh. Cross-check: EIA Mid-C 2010–2025 mean ≈ $43 [11]
Water spread σw0.22 (slider 0.12–0.32)PlaceholderFit on USGS 12462600 water-year discharge and EIA-923 generation [10][11]; proxy-vs-actual exhibit quantifies spill
Price spread σp0.35 (slider 0.20–0.50)PlaceholderFit on EIA/ICE Mid-C annual averages [11]; flat average, no on-peak weighting (a floor)
Water–price correlation ρ−0.45 (slider −0.70–0)PlaceholderFit on the deseasonalised monthly record with a confidence interval and rolling windows [9]; direction supported by BPA and the Council [3][4]
Distribution shapelognormal, 2×2 Cholesky; published dot at the medianMethodGlasserman §2.3 [8]; fat tails and negative prices not generated; mean sits σ²/2 above the median (2.4% water, 6.3% price) — pilot fits mean-corrected or empirical marginals and a price process with negative prices; the historical replay against today's book is the pilot's companion exhibit
The water years in Step 2seeded synthetic record until the feed loadsPlaceholderUSGS 12462600 daily discharge (June 1961 on) aggregated to water years, fetched in the browser when hosted; 12453690 has no discharge record (stage and reservoir elevation only) [10]; the pilot uses EIA-923 generation and the 2020 Level Modified Streamflow record. The Step 4 rolling-correlation record stays synthetic until a price history is paired with it
Knowledge schedule (how fast the water band narrows Oct→Jul)0% → 96% resolvedPlaceholderReplaced by the forecaster's own walk-forward quantiles, scored for calibration [7]; inputs from SNOTEL and NWRFC [12]
Year types in Step 3±15% centre shift by JulyPlaceholderStylised; the model's conditional forecast replaces it
Variable importance, calibration curveillustrativePlaceholderProduced by the trained model's attribution (variable-selection weights) and its backtest [6][7]; attribution is an interpretability aid, not a causal claim
Forward-book rule of thumb (haircut)sell forward the merchant volume at P25 water (slider P5–P50)AssumptionRegional convention documented at P10 (BPA firm), P25 (Tacoma), and the utility's P50 cap from its own probabilistic surplus model [20]–[24]; replaced by whatever the desk actually uses
Forecaster skill at commitment50% of water variance resolved (slider 0–90%)placeholderProduced by the walk-forward backtest against the ninety-year average; the page shows the value of whatever skill is proven
Freed energy available to re-allocate0.9M MWh/yr by 2029ReconstructedRoll-off of contracts expiring end-2026 and end-2028 as a share of output; pilot uses actual contract terms
Fixed-price discount; shaping premium5%; 6%PlaceholderMeasured against actual captured price vs flat Mid-C average; applied only to flexibility actually controlled after fish, flow and coordination constraints
Fleet, resolutionone machine; annualSimplificationUnit-level history and outage log; monthly correlated draw (12 means, 12 spreads, one correlation table) for the reserve and forward-book questions
WRAP binding season; Markets+ timingwinter 2027–28 for all participants (summer 2027 optional); October 2028PublicWRAP Business Practice Manual 109, transition plan; SPP Markets+ [13]
SOURCES

Public documents and data behind this page

  1. Bonneville Power Administration, BP-22 Power Market Price Study and Documentation (BP-22-FS-BPA-04), July 2021: "HYDSIM produces 80 year-long records of PNW monthly hydroelectric generation, based on actual water conditions in the region from 1929 through 2008"; each iteration "samples one of the 80 water years … from a discrete uniform probability distribution." bpa.gov
  2. Bonneville Power Administration, BP-26 Power Rates Study (BP-26-FS-BPA-01), July 2025, §2.1.6.8: "Mean prices and quantities of these secondary sales, as well as mean market prices, are passed to RAM2026 for the purposes of the secondary revenue credit." bpa.gov
  3. Bonneville Power Administration, BP-26 Power Market Price Study (BP-26-FS-BPA-04), July 2025: "PNW hydro generation is a primary driver of Mid-C electricity prices." bpa.gov
  4. Northwest Power and Conservation Council, 2021 Northwest Power Plan: Wholesale Electricity Price Forecast: hydro runoff conditions "continue to be a major component of price variability in the Pacific Northwest due to the regional reliance on hydropower generation." nwcouncil.org
  5. Northwest Power and Conservation Council, Draft Fourth Power Plan, Appendix A, p. A-3: "average energy" is "the amount of energy that can be expected from the hydropower system in a typical year." nwcouncil.org
  6. B. Lim, S. Ö. Arık, N. Loeff, T. Pfister, "Temporal Fusion Transformers for Interpretable Multi-horizon Time Series Forecasting," International Journal of Forecasting 37(4), 2021; arXiv:1912.09363. arxiv.org
  7. T. Gneiting, F. Balabdaoui, A. E. Raftery, "Probabilistic forecasts, calibration and sharpness," J. Royal Statistical Society B 69(2), 2007. wiley.com
  8. P. Glasserman, Monte Carlo Methods in Financial Engineering, Springer, 2003, §2.3 (correlated normals by Cholesky factorisation). springer.com
  9. R. Engle, "Dynamic Conditional Correlation," J. Business & Economic Statistics 20(3), 2002. tandfonline.com
  10. USGS National Water Information System, monitoring location 12462600 (Columbia River below Rock Island Dam, WA): daily mean discharge, June 1961 to present — the flow series this page loads. Location 12453690 (Rocky Reach Dam tailwater, Unit 10, near Wenatchee, WA) has no discharge record at all — daily stage and reservoir elevation only — so it is not used as a flow source. 12462600 · 12453690. BPA/USACE/USBR, 2020 Level Modified Streamflow 1928–2018, the 90-year regional record. bpa.gov
  11. U.S. Energy Information Administration: Form EIA-923 plant-level generation (the three projects are plant IDs 3883, 6200 and 6424) eia.gov; Wholesale Electricity Market Data, ICE-sourced daily Mid-Columbia index from 2001 eia.gov; Short-Term Energy Outlook Table 7a, "Northwest index, Mid-Columbia" eia.gov.
  12. NRCS National Water and Climate Center, SNOTEL snowpack nrcs.usda.gov; NOAA Northwest River Forecast Center, water supply forecasts nwrfc.noaa.gov.
  13. Western Power Pool, Western Resource Adequacy Program, Business Practice Manual 109 (Transition Plan, revised 2024): "the Binding Season beginning November 1, 2027, will be the default first Binding Season for all Participants"; a participant may elect the Summer 2027 season as an early binding season; "From Winter 2027-2028 all Participants will be Binding." The obligation is a forward showing of qualifying capacity (QCC) for the season's critical hours. westernpowerpool.org. Southwest Power Pool, Markets+ (day-ahead and real-time market; the mid-Columbia PUDs join 1 October 2028). spp.org
  14. F. A. Longstaff, E. S. Schwartz, "Valuing American Options by Simulation: A Simple Least-Squares Approach," Review of Financial Studies 14(1), 2001. oup.com
  15. The utility's published five-year revenue lines on this page are taken from its public board packet: the Q2 2026 quarterly financial review (six months ended 30 June 2026), five-year outlook and "key modeling assumptions" appendix ("past water history and current forward price curve"). The utility is referred to as "the PUD" in the text and has not reviewed this page.
  16. The utility's 2025 Budget Kickoff presentation (public board packet, October 2024), "Key 2025 Budget Assumptions — Wholesale Revenue": "Average water, current forward energy and carbon price curves; hedge program fully implemented and continuing."
  17. The utility's 2026 Budget Kickoff — Timeline and Key Assumptions (public board packet, October 2025), under Net Market-Based Energy Revenue: "Average water, current forward energy and carbon price curves."
  18. Seattle City Light, River Conditions Improve, Lift City Light's Financial Forecasts (Powerlines, 21 July 2014): "Those forecasts are based on average water years in the future." See also Strategic Plan Financial Forecast Assumptions 2022–2026, p. 12: net wholesale revenue "based on expected prices and normal hydro conditions." seattle.gov
  19. IDACORP, Inc. / Idaho Power Company, Form 10-K for the fiscal year ended 31 December 2016, Item 1: "annual generation of approximately 8.5 million Megawatt-hours (MWh) under median water conditions." sec.gov
  20. The utility's 2011 commission resolution authorising forward transactions within defined criteria (public board record): within the current year "the net maximum amount to be sold should not exceed the amount of the annual surplus energy at the 50th percentile level as determined from the District's probabilistic simulation model informed with the most current water supply and load forecasts"; for future years staff "will not sell more than the expected surplus on a net basis annually using the District's probabilistic simulation model informed with average water and projected load." A 2014 resolution amends it; the amendment is a scanned record that has not yet been read, so the percentile may have changed.
  21. Bonneville Power Administration, BP-26 Power Loads and Resources Study (BP-26-FS-BPA-03), July 2025, §3.1.2.1.3: "BPA bases its resource planning on firm generation conditions. Firm generation is defined as the monthly 10th percentile (P10) generation of the federal system"; and 2024 Annual Report, p. 22: "Power produced in excess of BPA's firm load obligations, if available, is considered by BPA to be surplus power and is sold in the Western Interconnection wholesale power markets." bpa.gov
  22. Bonneville Power Administration, BP-24 Power Rates Study (BP-24-FS-BPA-01), July 2023, §2.1.6.9: "Generation from water in excess of critical water conditions is called secondary energy … The quantity of secondary sales are valued at expected wholesale market prices in the Northwest at the Mid-Columbia (Mid-C) trading hub." bpa.gov
  23. Tacoma Power, Electric Rate and Financial Policy (Public Utility Board Resolution U-11414, effective 25 October 2023), §IV.A.5: "Water supply planning for surplus power available during the rate adjustment period will be based on water conditions that have historically been exceeded 75 percent of the time"; and Long-Range Financial Plan 2024, p. 23: "Adverse: Inflows similar to the lowest 25% of recorded historical years." mytpu.org
  24. S&P Global Ratings, Summary: Seattle, Washington; Retail Electric, 2 August 2018: "A portion of wholesale net revenues comes from forward sales of typically nine months or less, and SCL maintains strict limits on the portion of its surplus position made available for forward sales to avoid potentially high replacement power costs in low-water years." seattle.gov
  25. Rating-agency research on the utility (S&P Global Ratings, April 2025, public on the utility's site): the district hedges "by periodically selling slices of its system by auction or negotiation to various counterparties for up to 10 years (typically five years) on a rolling basis"; medium-term slice sales represent "15%-25% of the district's power portfolio." E. Sanda, T. Olsen, S.-E. Fleten, "Selective hedging in hydro-based electricity companies," Energy Economics 40 (2013) 326–338, on hedge-ratio practice and the volume-risk cap in hydro producers.