TheStockExperiment
DashboardThe ExperimentBlogAbout MeContact

For informational purposes only. Not investment advice. Past performance does not guarantee future results. Full disclaimer

← All posts
Tuesday, June 30, 2026

Iteration 2 Recap: The AI Rally Did the Heavy Lifting

It has been a while, and I will own that up front. Life got busy, the weekly recaps quietly fell off the calendar, and I am about to make it worse by disappearing on a two-week vacation in July. But today is rebalance day, which means the second 42-trading-day iteration is officially closed, and this is one I did not want to skip. It was a big one.

Every portfolio beat the S&P 500 again. This time it was not close.

Iteration 2 Final Summary (April 30 – June 29)

Return vs S&P 500 Result
S&P 500 +4.26%
Ensemble +30.51% +26.25 pp W
Ensemble #2 +37.77% +33.51 pp W
Growth Evaluator +20.91% +16.65 pp W
ML Model #2 +32.73% +28.47 pp W

The S&P 500 had a perfectly respectable iteration at +4.26%. The portfolios came in between +21% and +38%. Those are not typos, and I have checked them more than once. Ensemble #2, the three-model blend I stood up at the last rebalance, led the pack at +37.77%.

Now for the part where I talk myself down. Almost all of this came from one place: the AI, memory, and semiconductor complex. When that trade works, these portfolios work, because they are absolutely stuffed with those names. And this iteration, that trade did not just work, it went vertical.

Best and Worst Picks per Portfolio

Each portfolio holds 15 stocks, equal-weighted at fill. Here is how the spread shook out over the iteration:

Portfolio Top picks Bottom picks
Ensemble MU +116.1%, SNDK +89.8%, FTNT +77.7% CVNA -21.7%, PLTR -17.0%
Ensemble #2 MU +116.1%, SNDK +89.8%, AMAT +80.9% PLTR -17.0%, HAS -10.6%
Growth Evaluator MU +116.1%, SNDK +89.8%, LRCX +65.0% INTU -31.0%, PLTR -17.0%
ML Model #2 MU +116.1%, SNDK +89.8%, AMAT +80.9% OXY -17.1%, CVX -10.7%

Micron (MU) is the story of the iteration. All four portfolios held it, and it more than doubled in 42 trading days, riding the same memory-shortage wave that has HBM and DRAM pricing on a tear. You do not often see a name double inside a single iteration, and you almost never see it from a stock held by all four portfolios at once.

And then there is SanDisk. Longtime readers will remember SNDK was the star of Iteration 1 at +62%. It followed that up with another +89.8% here. At some point I have to stop being surprised by it, but that point is apparently not today. The rest of the leaderboard is a who's who of the same theme: AMAT, LRCX, FTNT, STX, WDC, TER, all up big.

The losers, tellingly, were mostly the non-tech names — Carvana, the energy holdings in ML Model #2 (OXY, CVX), Palantir cooling off after its own big run, and Intuit, which had a genuinely rough quarter at -31%. The pattern is not subtle. This iteration paid you to own semiconductors and punished almost everything else.

Where We Stand Since Launch

Two iterations in, here is the cumulative scoreboard from the March 2 launch: the S&P 500 is up about +9%, while the portfolios sit between +42% and +63%. Ensemble #2 and ML Model #2 are both north of +62%.

I will be honest, I am pleasantly surprised. When I launched this thing I was hoping to be a couple of points ahead of the index and mostly hoping not to embarrass myself. Being 30 to 50 points ahead after two iterations is not a result I would have predicted, and I am enjoying it while it lasts.

Which brings me to the nervous part. That entire lead is a bet on one theme, and it is a theme that has run very, very far, very fast. When I look at these holdings — memory, semis, AI infrastructure, all richly valued after a face-ripping rally — I do not see a lot of margin for error. If the AI trade takes a breather, and eventually it will, these portfolios are about as exposed to that as a portfolio can be. I would not be shocked to see a rough stretch ahead for the heavy AI names, and by extension for these four. The same concentration that made the last 42 days look brilliant is exactly what makes me brace for the next 42.

What Changes for Iteration 3

The rebalance runs this morning at the open. Every portfolio swaps for a freshly generated top-15, scored on yesterday's close, with capital rolled forward. Here is what moved:

Portfolio Kept Sold Bought
Ensemble 13 CVNA, HAS AMAT, META
Ensemble #2 14 HAS NEM
Growth Evaluator 11 CIEN, INTU, MSFT, PLTR EQT, META, NEM, PTC
ML Model #2 9 CVX, EOG, GLW, MPC, OXY, VLO AMD, AVGO, INTC, LRCX, MSFT, TXN

The two ensembles barely blinked — 13 and 14 of 15 names held. When the winners keep winning, the hold-bonus keeps them in the lineup, and I am fine with that. ML Model #2 was the busy one: it dumped its entire energy sleeve (CVX, EOG, MPC, OXY, VLO) and rotated straight into more chips — AMD, AVGO, INTC, TXN. So the model that was already tech-heavy decided to double down. We will see whether that is conviction or the top ticking.

The one genuinely interesting wrinkle: Growth Evaluator and Ensemble #2 both added names that are not tech at all. NEM (Newmont, gold) and EQT (natural gas) showing up suggests the rule-based scorer is starting to find value outside the AI bubble, even as the ML models pile further in. If my "rough time ahead" worry plays out, those may be the names that cushion the fall. Or they may just sit there. Time will tell.

A quick housekeeping note to close: I have not kept up with the weekly recaps the way I did through Iteration 1, and I am heading out on a two-week vacation in July, so the next few weeks will be quiet here too. I appreciate everyone who has stuck with the experiment through the gap. I fully intend to get back into a regular rhythm as the summer goes on — there is a lot I still want to write about, not least how these portfolios handle the pullback I keep warning myself about.

Thanks, as always, for reading.

← Iteration 1 Recap: Four for Four