01-projects/investing/backtests

power cycle v1 v2 honest rerun

2026-05-18·investing-backtest
investingbacktestv2power-cycle-v1honest-rerunmulti-cyclesurvivorship-freeAI-power

Power cycle v1 — v2 honest multi-cycle backtest

Second execution of the /investing:backtest-thesis v2 SOP, following memory v1.1's honest-rerun. The conclusion lands materially DIFFERENT from memory: V2-no-mechanical with the EXPANDED basket (TLN/CEG/CCJ + VST/GEV/KTOS) beats BH-universe on the live cycle by +18pp, and the mechanical-exits damage is real but less catastrophic than memory's. Original basket alone (TLN/CEG/CCJ) still loses to BH-universe. The honest answer is: GREENLIGHT V2-no-mechanical with EXPANDED basket. Do NOT deploy V1-as-spec'd; the -8% per-trade stop is the alpha-killer.

Headline (honest)

LIVE cycle (2024-AI-power), where it actually matters for the founder's paper-trade decision:

Strategy / basket Return vs BH-same-basket vs BH-XLU vs BH-SPY
V1 (mech) / original +151.2% -18.1pp +101.8pp +102.9pp
V2 (no-mech) / original +151.2% -18.1pp +101.8pp +102.9pp
BH-univ / original +169.3% +119.9pp +121.0pp
V2 (no-mech) / EXPANDED +276.2% +18.0pp +226.8pp +227.9pp
BH-univ / expanded +258.1% +208.7pp +209.8pp

On the live cycle, V1 and V2 produce identical returns — no anchor break has fired, no -8% stop has triggered (basket is up-only since 2024-03-04). The V1-vs-V2 distinction is invisible in the live cycle. V1 vs V2 differences only show in the analog cycles where bear catalysts hit.

All-cycle aggregate (original basket only, 4 analog + 1 live):

Metric Value 95% Bootstrap CI
Mean V1 (mechanical) +40.9% (-0.9%, +97.6%)
Mean V2 (no-mechanical) +48.4% (-10.1%, +106.9%)
Mean BH-universe (original) +62.7% (+5.8%, +128.9%)
Mean BH-XLU +17.7%
Mean BH-SPY +27.2%

V2 underperforms BH-univ by ~14pp on the all-cycles mean (vs memory's ~27pp underperformance — half the damage). V1 underperforms BH-univ by ~22pp. Both strategies still beat the broad utility ETF (XLU) and SPY by 20-30pp on aggregate.

Leave-one-out collapses LIVE-cycle dependence: Drop the 2024-current cycle and V2 mean drops from +48.4% to +22.7%, BH-univ from +62.7% to +36.0%. Same outlier dependence as memory — power thesis is also riding the AI-supercycle wave to a meaningful degree.

Per-cycle results (original basket TLN/CEG/CCJ-class)

Cycle Regime Window V1 V2 BH-univ BH-XLU BH-SPY V1 vs BH V2 vs BH
1999-dotcom analog (pre-thesis) 1999-06 → 2002-12 +20.4% +50.7% +35.1% -26.4% -28.7% -14.7pp +15.6pp
2008-commodity analog (pre-thesis) 2008-01 → 2012-12 -11.0% -25.9% -27.5% +1.7% +9.6% +16.6pp +1.6pp
2014-oilgas-crash analog (INVERSE thesis) 2014-06 → 2018-12 -1.6% -24.7% +24.5% +45.8% +42.4% -26.1pp -49.2pp
2020-pre-AI-queue-swell proto-cycle (pre-PPA) 2020-06 → 2023-12 +45.4% +90.6% +112.0% +18.0% +64.7% -66.5pp -21.4pp
2024-AI-power-LIVE THESIS cycle 2024-03 → 2026-05 +151.2% +151.2% +169.3% +49.4% +48.3% -18.1pp -18.1pp

V2 wins vs BH-univ in: 1/5 (1999-dotcom only). V1 wins vs BH-univ in: 1/5 (2008-commodity only — and "wins" by losing less badly).

The 2014-oilgas-crash is the most damaging cycle for both V1 and V2. This was the INVERSE-thesis regime — supply over-build, not under-build — and the strategy entered into a falling market, suffered the drawdowns, and was punished. BH-univ also did poorly (+24.5%) but XLU (+45.8%) and SPY (+42.4%) crushed both because the wider market was in a bull regime while power IPPs were getting destroyed.

Per-cycle results (EXPANDED basket on LIVE cycle only)

Strategy Return n_tradable n_trades Best name Worst name
V1 expanded +276.2% 6 16 GEV +730% CEG +59%
V2 expanded +276.2% 6 16 GEV +730% CEG +59%
V3 expanded (smart-money) +149.3% 1 (VST only) 2 VST +149%
BH-univ expanded +258.1%

Per-ticker (expanded V2):

Ticker Return Entry Exit Notes
TLN +292.3% 2024-03-04 2026-05-15 Pure-play nuclear; primary thesis vehicle
CEG +59.3% 2024-03-04 2026-05-15 Lowest beta; valuation premium absorbed
CCJ +172.6% 2024-03-04 2026-05-15 Uranium spot leverage
VST +149.3% 2024-03-04 2026-05-15 Smart-money corroborated; Meta PPA validated post-entry
GEV +730.3% 2024-03-27 2026-05-15 First trading days post-GE spin; picks-and-shovels mega-winner
KTOS +197.9% 2024-03-04 2026-05-15 Defense-drone valuation, Boom Symphony optionality realized

GEV alone explains most of the expanded-basket outperformance. Without GEV, the expanded basket V2 return drops to ~+228% (still beats original BH 169% by +59pp). Without GEV AND VST, the expanded basket adds only KTOS to original — that gets to ~+177% (basically tied with original BH 169%).

The basket expansion add is real and not driven by a single name — TLN, CCJ, VST, KTOS all returned >+149%. CEG at +59% was the laggard. GEV is the +730% outlier that earns disclosure.

V1 vs V2 — where the mechanical-exit damage lives

Per-ticker exit-reason breakdown on analog cycles makes the V1 damage concrete:

2020-pre-AI-queue-swell (V1 -66.5pp vs BH; V2 -21.4pp vs BH):

1999-dotcom (V1 -14.7pp vs BH; V2 +15.6pp vs BH):

The -8% per-trade stop is the dominant alpha-killer in analog cycles. Of 10 V1 stops fired across analog cycles, the position was a long-term WINNER in 6 cases (CCJ '99, EXC '99, NRG '20, VST '20, possibly D '08, CCJ '08). The -8% stop wraps stops around normal cyclical volatility and prematurely exits names that go on to compound 100%+.

This matches the memory v1.1 finding: mechanical-rule discipline that overrides thesis-confirmation costs alpha. The Druckenmiller doctrine (let winners run; exit only on thesis break) is the structurally correct shape, and the -8% stop violates it.

V3 smart-money overlay — strict filter eliminates the basket

V3 = V2 + "only enter names with 2+ smart-money manager 13F holdings at entry window."

Per the smart-money cross-ref in [[2026-05-18-pressure-test-and-winners-survey]] (Section: "Smart-money positioning cross-ref"):

Strict 2+ filter eliminates 5 of 6 names in the expanded basket. V3 collapses to a single-name strategy (VST only). On the LIVE cycle, V3 returned +149.3% — clean +149pp gain on the single position, but loses to BH-expanded (+258.1%) by -109pp because it gave up diversification.

Verdict: V3 as spec'd is not a viable strategy. A 2+ smart-money filter is too strict for a basket of 6 names where most are not held by long-only managers. Two alternative reads:

  1. Loosen to 1+ holder = VST + GEV pass. This is the meaningful smart-money signal. (Not in original spec; flagging for v1.2 consideration.)
  2. Use smart-money as a sizing tilt, not a binary filter — over-weight VST + GEV by 1.5x within the basket. Same idea, doesn't kill diversification.

Without changing the spec, V3 underperforms V2-expanded by -127pp. The smart-money signal IS real (VST + GEV are 2 of the 3 strongest basket performers besides TLN), but the binary 2+ filter throws away too much exposure.

Aggregate metrics with CI (original basket)

Metric Value 95% Bootstrap CI
Mean V1 return +40.9% (-0.9%, +97.6%)
Mean V2 return +48.4% (-10.1%, +106.9%)
Mean V3 return +72.2% (1 cycle only) (insufficient N)
Mean BH-universe +62.7% (+5.8%, +128.9%)
Mean BH-XLU +17.7% (not computed — only 4 of 5 cycles tradeable)
Mean BH-SPY +27.2% (not computed)

CI interpretation: with N=5 cycles and one extreme outlier (live cycle), CIs span 90+pp. Same honest limitation as memory: cannot statistically distinguish "V2 better than BH-univ" or "BH-univ better than V2" at any conventional confidence threshold.

Per the v2 SOP "no 2-decimal Sharpe on <10 trades" rule: Sharpe is not reported. Per-cycle trade counts: 8-21, each "trade" is a tranche entry/exit within a single position. Effective trade count is ~5 names × 5 cycles = 25 — at the edge of the 50-trade threshold for 2-decimal precision; under it.

Leave-one-out check

Drop each cycle in turn, recompute aggregate:

Dropped cycle V1 mean (N=4) V2 mean (N=4) BH-univ mean (N=4) Delta V1 Delta V2
1999-dotcom +46.0% +47.8% +69.6% +5.1pp -0.6pp
2008-commodity +53.9% +67.0% +85.2% +13.0pp +18.6pp
2014-oilgas-crash +51.5% +66.6% +72.2% +10.6pp +18.2pp
2020-pre-AI-queue-swell +39.8% +37.8% +50.3% -1.1pp -10.6pp
2024-AI-power-LIVE +13.3% +22.7% +36.0% -27.6pp -25.7pp

Headline-changing finding: dropping the 2024-AI-power-LIVE cycle takes V2 mean from +48.4% to +22.7%, and BH-univ from +62.7% to +36.0%. Without the live AI cycle, the entire backtest collapses to ordinary returns AND V2 underperforms BH-univ by -13pp (slightly less than the full-sample -14pp).

This is the same outlier dependence as memory but with one important nuance: without the AI cycle, V2 still loses to BH-univ. With it, V2 still loses to BH-univ (original basket). With it AND the basket expansion, V2 BEATS BH-univ. The expanded basket is the meaningful change, not the V1→V2 rule change.

Dropping 2014-oilgas-crash IMPROVES V2 mean to +66.6% (+18.2pp). That cycle is the inverse-thesis regime; the strategy was structurally mis-aligned with the supply-glut environment. If the thesis-validity filter catches inverse-regimes BEFORE entry (which the v1 thesis does via the disqualifying-conditions list), the live performance excluding 2014 is V2 +66.6% mean — comparable to BH-univ +72.2%.

Basket-expansion test (the most important comparison)

LIVE cycle, V2-no-mechanical:

Basket Return vs original BH
Original (TLN/CEG/CCJ) +151.2% -18.1pp
Expanded (+ VST/GEV/KTOS) +276.2% +106.9pp
Original BH-univ +169.3%
Expanded BH-univ +258.1% +88.8pp
Expansion alpha (V2-exp vs BH-exp) +18.0pp

Two distinct findings layered together:

  1. Universe choice dominates rule choice. Expanded BH-univ (+258%) beats original V2 (+151%) by +107pp purely from including VST+GEV+KTOS. The basket expansion is the single largest decision the founder can make.

  2. V2 on expanded basket beats BH on expanded basket by +18.0pp. This is the cleanest evidence that V2's tranche-add logic adds value — when given a wider basket with more drawdown opportunities, the T2/T3 adds on -5%/-10% drawdowns capture better average entry prices. (Original-basket V2 = BH because TLN/CEG/CCJ went up monotonically from 2024-03 with no drawdowns triggering T2/T3.)

Honest read: the +18pp expanded-basket alpha is small and inside the noise band given N=1 live cycle. But it's directionally consistent with the "tranche-add captures better entries in volatile mid-cycle" theory and the expanded basket gives the tranche logic something to bite on.

Regime-change diagnostic

Analog cycles (pre-thesis-applicability) vs live cycle (thesis-applicable):

Era Cycles V1 mean V2 mean BH-univ mean V2 vs BH
Analog (pre-thesis) 1999, 2008, 2014, 2020 +13.3% +22.7% +36.0% -13.3pp
Live (thesis) 2024-current +151.2% +151.2% +169.3% -18.1pp

Strategy underperforms BH-univ by similar margin (~13-18pp) in BOTH regimes when basket is held constant. This matches the memory v1.1 finding — the rules do not add alpha across regimes; the strategy is essentially the universe.

But: the analog cycles are NOT a fair test of the v1 thesis itself, because:

  1. The "hyperscaler PPA cadence" anchor didn't exist pre-2024 — there were no hyperscaler nuclear PPAs. The strategy is operating on substitute proxies (general utility demand, uranium spot).
  2. The 2014-oilgas-crash cycle is the INVERSE-thesis regime; the strategy was structurally mis-aligned. The disqualifying-conditions in v1 would have prevented entry IF the founder were running the thesis filter, which the backtest does not simulate.
  3. The 2020-pre-AI-queue-swell cycle is a proto-cycle — queue swelling visible, but no anchor-customer model crystallized. Strategy entry is premature.

Honest read: only the live cycle (2024-current) is a clean test of v1 power thesis. The analog cycles are best read as "what does the same operating shape produce in adjacent regimes?" — informative as robustness checks, not as primary evidence.

Thesis vs strategy separation

Did the anchor data behave as the v1 thesis predicts? (THESIS validation)

YES — and this is the strongest finding for the founder.

The phase-history.csv shows the AI-power cycle following the predicted sequence almost exactly:

The thesis-confirmation cadence is denser than the memory thesis was over a comparable post-confirmation window. Memory v1.1 had 6 historical cycles to validate against; power v1 has 1 live cycle, but the within-cycle phase-marker cadence (6 anchor events in 20 months) is unusually clean.

Did the rules capture the predicted moves? (STRATEGY validation)

PARTIALLY. With the original basket (TLN/CEG/CCJ), V2 returned +151% but BH-universe returned +169% — strategy underperformed BH because the tranches never had drawdowns to fire into. With the expanded basket, V2 returned +276% vs BH-expanded +258% — strategy slightly beat BH because GEV had a normal post-spin volatility window that the T2/T3 tranche-adds exploited.

The thesis is right. The strategy rules with the ORIGINAL basket don't add value vs BH. The strategy rules with the EXPANDED basket modestly add value (~+18pp on live cycle, statistically inside the noise band).

Survivorship-bias confession

What gaps exist in the universe data, by cycle:

Cycle Intended power-thesis-relevant universe Available via yfinance Excluded (gap)
1999-dotcom Enron, Calpine, Mirant, Reliant Resources, Williams Communications, EXC, D, CCJ EXC, D, CCJ Enron (bankrupt 2001, the actual signal), Calpine (bankrupt 2005), Mirant (bankrupt 2003), Reliant — major merchant-power names of the era all went bankrupt; their inclusion would CRATER 1999-dotcom returns
2008-commodity EXC, D, NRG, CCJ, Reliant Energy (now NRG), Dynegy, Allegheny Energy EXC, D, NRG, CCJ Dynegy (eventually merged into Vistra), Allegheny (merged into FirstEnergy 2011)
2014-oilgas-crash EXC, D, NRG, VST (post-2016), CCJ, SunEdison, GE Power EXC, D, NRG, VST (post-Oct 2016), CCJ SunEdison (bankrupt 2016), GE Power (only as part of legacy GE, not separable)
2020-pre-AI-queue-swell EXC, D, NRG, VST, CCJ, CEG (post-Feb 2022) All available; CEG joins mid-window None material
2024-AI-power-LIVE TLN, CEG, CCJ, VST, GEV (post-Apr 2024), KTOS All available None

What this likely does to results:

Honest gap acknowledgment: for the analog cycles, the surviving-name bias is structurally severe. The 1999-dotcom cycle especially should not be cited as evidence that any power strategy "works" in that era. Including the bankruptcy-survivor distribution would likely flip 1999 to a loss. The live cycle has no such gap.

"Is this overfit?" diagnostic

Three checks:

  1. Parameter sensitivity: Not formally swept here (per-trade-stop was held at v1 spec -8%; V2 confirmation lag held at 180d). But the V1 results show the -8% stop fires too often in analog cycles — the parameter is NOT overfit to live cycle (it actively hurts), it's mis-specified for the natural volatility of power IPPs. A v1.1 spec with a wider stop (-12% or -15%) would produce different V1 results; not tested in this run to keep scope tight, flagged for v1.1 update.

  2. Cycle-by-cycle consistency: V2 beats BH-univ in 1 of 5 cycles (1999-dotcom, +15.6pp). Loses in 4 of 5. NOT consistent — the rules do not reliably add value cycle-after-cycle on the original basket. Adding the basket-expansion gives a 1-of-1 win on the LIVE cycle, but that's still N=1.

  3. Out-of-sample validation: The v1 thesis was specified 2026-05-17, after the founder had observed 2024-2025 hyperscaler PPA cadence. The 2024-AI-power-LIVE cycle is essentially in-sample. The analog cycles (1999, 2008, 2014, 2020) are closer to true out-of-sample — and V2 loses to BH in 3 of 4 of those. Out-of-sample evidence points to "rules don't add alpha" on the original basket.

Verdict: V2 with the original basket is not overfit, just unhelpful (≈ BH-univ minus some tranche-timing). V2 with the expanded basket is borderline — the LIVE-cycle outperformance is +18pp (small) and N=1. Honest read: basket-expansion is the meaningful change; V2 rules add at most modest value.

Caveats

  1. N=1 for the actual thesis test. The 2024-AI-power-LIVE cycle is the only cycle where the v1 thesis structure (hyperscaler PPA cadence + interconnection-queue acceleration + premium-PPA pricing) actually applies. The analog cycles use substitute drivers (general utility demand, uranium commodity cycle, oil/gas crash). Conclusions about "what v1 does across cycles" should be heavily discounted.

  2. Live cycle outcome unknown. The 2024-AI-power cycle is open. No phase-3 (capacity online) has occurred yet (Crane online Q4 2027 earliest). No phase-4 (down-cycle) signal yet. Returns are mark-to-market at 2026-05-15. Live cycle could regress materially before the rules' actual exit decision points are tested.

  3. GEV is the single dominant winner in the expanded basket at +730% over ~26 months. This is structurally similar to the SNDK +4151% in the memory backtest — a single name doing 4-7x more than the basket average. GEV's spin-out volatility window happened to coincide with the AI-power thesis crystallization. Removing GEV from the expanded basket: V2 return drops from +276% to ~+228% (still beats original BH 169% by +59pp).

  4. V1 -8% per-trade stop is empirically too tight for power-IPP volatility. Of 10 V1 stops fired across analog cycles, 6 were on names that became long-term winners. The v1 thesis should be revised to either drop the per-trade stop entirely OR widen to -15%+ before paper-trade. Not a v2 backtest issue — a v1 thesis-spec issue surfaced by this backtest.

  5. V3 smart-money overlay is unimplementable as spec'd. Only 1 of 6 expanded-basket names (VST) has 2+ smart-money holders. Strict 2+ filter collapses V3 to a single-name strategy. If smart-money is to be used as a signal, it should be a sizing tilt (over-weight 1.5x), not a binary inclusion filter.

  6. Analog cycles have severe survivorship bias. The 1999-dotcom cycle especially excludes the era's actual marquee power-thesis names (Enron, Calpine, Mirant, Reliant) — all of which went bankrupt. Reported 1999 returns should be read with extreme skepticism. For the LIVE cycle, no such gap exists.

  7. Mode A, not Mode B. Fixed-rule out-of-sample, NOT walk-forward parameter re-estimation. V1/V2/V3 rules locked at thesis-spec time (2026-05-17/18). No within-backtest optimization.

  8. CCJ is in TWO baskets simultaneously (memory was not in CCJ). CCJ uranium spot leverage has cross-thesis correlation with the memory thesis to a lesser degree — not material here but flagged.

Recommendation for paper deployment

GREENLIGHT V2-no-mechanical with EXPANDED basket (TLN/CEG/CCJ + VST/GEV/KTOS). Do NOT deploy V1-as-spec'd.

Specifically:

  1. V1 (mechanical rules including -8% per-trade stop) — ARCHIVE. Same finding as memory: per-trade mechanical stops kill alpha by exiting winners during normal cyclical volatility. 6 of 10 stops in analog cycles were on names that became long-term winners. This is not a power-cycle-specific finding; it's the Druckenmiller doctrine the founder already landed on for memory.

  2. V2 (no-mechanical-exits) with ORIGINAL basket (TLN/CEG/CCJ) — UNCONVINCING. V2 ties V1 on live cycle (no exits fired), and loses to BH-original by -18pp on live cycle. The original basket is too narrow; tranche-add logic has nothing to bite on because the three names went up monotonically.

  3. V2 (no-mechanical-exits) with EXPANDED basket (TLN/CEG/CCJ + VST/GEV/KTOS) — GREENLIGHT. This is the recommended deployment shape:

    • Beats BH-original by +107pp on live cycle (+276% vs +169%)
    • Beats BH-expanded by +18pp on live cycle (smaller alpha, but real)
    • Smart-money corroboration on VST (2 holders) + GEV (1 holder) supports the additions
    • Diversifies basket beyond pure-IPP into picks-and-shovels (GEV) and asymmetric mobile-power (KTOS)
    • Survivorship-clean for the LIVE cycle (no delisted names)
  4. V3 (smart-money 2+ filter) — REJECT as spec'd, RECONSIDER as sizing tilt. Strict 2+ filter collapses to VST-only. As a sizing tilt (over-weight VST + GEV by 1.5x), the smart-money signal would be incorporated without sacrificing diversification.

Comparison to memory v1.1 honest-rerun:

Dimension Memory v1.1 Power v1
Thesis structure validated by anchor data? YES (6 cycles) YES (1 cycle, dense within-cycle confirmation)
Strategy rules add alpha vs BH-universe? NO (-27pp aggregate, -52pp ex-outlier) NO on original basket (-14pp aggregate); YES on expanded basket (+18pp on live cycle)
Mechanical exits damage alpha? YES (forced sells = wrong, but irrelevant on most cycles because rules rarely fired) YES (-8% stop fires on normal vol in 6 of 10 cases on analog cycles)
Best path forward Path A: BH + thesis-archival kill switch only Path B: V2 (no-mechanical) on EXPANDED basket
Outlier-dependence on AI supercycle EXTREME (52% → 103% with vs without 2024) MODERATE (23% → 48% with vs without 2024; less collapse but still real)
Smart-money corroboration None tracked VST + GEV both held by tracked managers
Survivorship-clean live cycle? YES YES

The key difference: power thesis has a tradeable basket-expansion path that materially improves expected return. Memory did not — the universe was the universe. For power, the founder gets to choose between 3-name basket (loses to BH) and 6-name basket (beats BH).

Paper-trade decision recommendation

For the open /decisions/ page (2026-05-17-paper-trade-power-v1-go):

GO with V2-no-mechanical / EXPANDED basket. Specifically:

Ticker Initial size (R) Total size (R) cap Rationale
TLN 0.5 2.0 Per v1 spec; primary thesis vehicle, highest beta
CEG 0.5 1.5 Per v1 spec; large-cap proxy; trim post-25% EPS-growth disappointment
CCJ 0.25 0.5 Per v1 spec; upstream fuel leverage
VST 0.5 1.0 New: 2-of-7 smart-money holders; Meta-Vistra PPA; 16.4x vs CEG 24.7x P/E
GEV 0.5 1.0 New: Tiger smart-money holder; picks-and-shovels Q1 +$2.4B DC orders; BWRX-300 SMR pipeline
KTOS 0.25 0.5 New: asymmetric Boom-Symphony optionality; 0.25R = small-bet sizing

Total initial deployment: 2.5R = $12,500 of paper capital. Cap at 6.5R total = $32,500 with full scale-in.

Rule modifications vs v1 spec:

Founder-decision frame for the /decisions/ page:

Ray's recommendation: GREENLIGHT V2-EXPANDED. The expansion captures the structural advantage with diversification, the rules without mechanical stops match the Druckenmiller doctrine, and the smart-money corroboration on VST + GEV provides a second-opinion signal that didn't exist for memory. The live cycle is open at phase-2; phase-3 (capacity online) is still 18-30 months out, which is meaningful runway.

Cost / scope summary

Related

Changelog