What it is, why it exists, and what I expect to happen.
To create models that can outperform the S&P 500.
The experiment is to build different financial models and evaluate how they perform. Some of the models leverage machine learning that I’ve tuned, backtested, and trained. Others rely on a set of financial rules to evaluate a stock. I will continuously experiment by building new models, measuring their results, and iterating based on what I learn.
Based on their performance, some models I’ll keep, some I’ll update, and some I’ll remove entirely. If you have ideas you’d like me to try out, let me know—I’m happy to put something together and see how it goes.
Because that’s exactly what it is. I try models out and see how they perform in real time.
Behind the scenes, I do extensive tuning, backtesting, and tweaking before any model goes to production. But training models over years of historical data is like coaching a football team after the game has already been played—you know every move your opponent is going to make, so you adjust your playbook accordingly. That’s useful, but it doesn’t tell you how the team will perform in the next game.
I won’t truly know whether these models can achieve the goal until I’ve gone through months—and possibly years—of experimenting with real, forward-looking results.
The rules are straightforward:
Below is the 2026 rebalancing schedule. Each rebalance occurs every 42 trading days, calculated using the NYSE trading calendar.
| Event | Date | Day | |
|---|---|---|---|
| Portfolio Creation | March 2, 2026 | Monday | |
| Rebalance #1 | April 30, 2026 | Thursday | |
| Rebalance #2 | July 1, 2026 | Wednesday | |
| Rebalance #3 | August 31, 2026 | Monday | |
| Rebalance #4 | October 29, 2026 | Thursday | |
| Rebalance #5 | December 30, 2026 | Wednesday |
Each portfolio is rebalanced on a fixed 42-trading-day interval—roughly every two months. At the start of each window, I re-rank the S&P 500 using every active model. Stocks that still rank highly are held; those that fall out are sold and proceeds are reinvested into the new top picks.
Why every two months? I backtested a range of trading windows—biweekly, monthly, bimonthly, quarterly, and annually. Bimonthly consistently delivered the best risk-adjusted returns. That said, this is something I’ll continue to monitor and may revisit if the data suggests a better cadence.
It started during my second semester in the Master’s in Artificial Intelligence program at the University of Texas at Austin. We were given an open-ended final project in my Case Studies of Machine Learning class, and I chose to build ML models to predict stock market returns.
I learned a ton, especially how difficult the problem is. But I was still surprised by the models I was able to produce. I was early in my machine learning journey, and I’m sure my first models were full of mistakes. They were almost certainly victims of overfitting, and I call that out in my paper. That said, I’m 99% confident I avoided data leakage, which is one of the most common and damaging pitfalls in this space.
Nevertheless, the challenge was fun, it was exciting, and I never stopped learning. That class project turned into this: a living, evolving experiment.
The point of this project is to learn. Learn what works. Learn what doesn’t. Learn how to test theories and ultimately verify or debunk them in real time.
And you’ll be my witness.
Of course I want to make money, but let’s not kid ourselves. Using machine learning to predict stock market returns is one of the most researched topics in the world. Thousands of scholarly articles are published on it every year. Hedge funds with billion-dollar budgets and teams of PhDs have been working on this problem for decades.
While one of the models I’m using is something I developed on my own, I have no illusions about where I stand. I will stand on the shoulders of giants and leverage new studies and research, selectively incorporating them into this project as I go.
Stock market prediction with machine learning is one of the most studied problems in the field. My goal is not to predict stock prices, especially on a short-term basis. Day trading with ML? I believe that’s a fool’s errand.
What I intend to do is use machine learning coupled with stock fundamentals to identify and possibly predict trends, and then make smart buying and selling decisions based on those signals. Think less “predict tomorrow’s price” and more “find undervalued opportunities the market hasn’t fully recognized yet.”
Honestly? I expect to lose. And probably lose badly in the first year.
But I’m in this for the long game. I believe I will learn ten times more through failure than I ever would through early success. Every loss is a lesson. Every underperforming model is a chance to dig in, understand what went wrong, and build something better.
That’s the real experiment.
Since the S&P 500’s inception, the index has provided strong long-term gains, roughly 10% annually. It is known as the gold standard when it comes to investing. I decided if I was going to pursue this, this is where I wanted to start.