I Gave GPT-6 Astra $10,000 to Trade Stocks. Could It Beat the S&P 500?

Nate Herk
Nate Herk
Sep 28, 2026 • 11 min read

I gave Codex and GPT-6 Astra $10,000 of real money and seven trading days to beat the S&P 500. The result was not a massive win or a spectacular blowup. It was a much more interesting lesson in what happens when an AI trading agent meets real execution problems, cautious decision-making, and a market that does not care about your deadline.

I had done a similar experiment with OpenClaw before, but that challenge had one big restriction: once the system was running, I could not touch it.

This time, I changed the rules. I could make up to two adjustments each day, but I could not stop the system from trading just because things were going badly. Even if it lost the money, the challenge would continue.

The goal was simple: finish ahead of an equivalent $10,000 investment in the S&P 500. If I lost, I would give away a VIP ticket to AIS Live on October 17 and 18.

Table of Contents

Key Takeaways

  • The AI-managed account finished near $9,900, trailing the equivalent S&P 500 investment by about $80.
  • Agent handoffs preserved context across scheduled routines, while a separate bot handled trade execution.
  • Looser trading filters increased market exposure but did not consistently improve performance against the benchmark.
  • Seven trading days and repeated strategy changes were insufficient to establish a reliable long-term investing edge.

Day Zero: Building the AI Trading System

Before the market opened for the challenge, I asked the agent to research a strategy. The brief was straightforward: we had $10,000, seven trading days, and a goal of making as much money as possible while competing against the S&P 500.

It delegated research to multiple trading agents and used their findings to put together a plan. Everything was running in Codex with GPT-6 Astra set to high.

Scheduled routines instead of one long-running conversation

The initial setup had six action-oriented wake-ups, plus two notification routines. The trading workflow covered six main stages:

  1. Before the open: Read the news, check the account, and build a stock watchlist.
  2. Early in the session: Look for the first qualifying trade.
  3. Midday: Review existing positions and consider the last new trade.
  4. Afternoon: Manage the positions already in the account.
  5. Late in the session: Close remaining positions under the initial plan.
  6. Near the close: Confirm the account’s status and record the day’s results.

That was the starting strategy, not a permanent rulebook. As the challenge progressed, I changed the approach, and the account did carry positions between sessions.

The important part: agent handoffs

A scheduled agent is not very useful if it wakes up with no idea what happened earlier. Continuity was a big part of the setup.

After each routine, the agent left a handoff message. The next routine read that message, took its next action, and left another handoff for the following run.

Diagram of connected agents with blue handoff message boxes
Each routine passes context forward so the next agent can continue the work.

All the routines also ran in the same thread. That gave me one place to inspect the research, decisions, and updates, rather than trying to piece together several disconnected conversations.

From an automation perspective, that was one of the most useful parts of the whole experiment: the schedules triggered the work, but the handoffs kept the workflow coherent.

Day One: A $9 Loss and a Very Cautious Start

The first trading day ended with about $9,991 in the account. We had lost roughly nine bucks.

That is hardly a disaster. But with only seven trading days, I was frustrated by how little had happened. I would almost have preferred a more noticeable loss if it meant the system was actually taking the kinds of opportunities I had expected it to take.

The main trade was Tesla. The agent bought nine shares, representing a little over $3,000 in stock, and placed a stop. The price dropped, and that stop triggered quickly.

There is an important distinction here: the position was worth more than $3,000, but that does not mean the planned loss on the trade was $3,000. The stop was there to limit the downside.

I used my ability to adjust the strategy. The agent activated a more active plan with three entry reviews and less restrictive filters. One specific change was lowering its minimum reward-to-risk requirement from 2:1 to 1.5:1.

In plain English, it no longer needed to identify two dollars of potential upside for every dollar of planned downside before considering a trade. That made more setups eligible, although it did not make them better trades automatically.

Day Two: The Agent Stopped Executing Trades

On the second day, we hit a problem that had nothing to do with picking stocks.

Astra stopped placing trades. It would help with research and strategy, but it refused to execute transactions automatically on my behalf. Asking it again did not change that.

So I changed the architecture.

Separating strategy from execution

I set up a Grok bot named Trader with its own email address and an incoming-email webhook. The revised workflow looked like this:

  1. A scheduled Astra routine researched the market and produced its recommendations.
  2. Astra emailed those recommendations to Trader.
  3. The incoming email triggered the Grok bot.
  4. The bot processed the trade through Alpaca.

Astra remained responsible for the research and strategy. The separate bot handled execution.

This was a change to my particular setup, not evidence that every model or trading integration will permit the same workflow. The practical lesson was that generating a recommendation and reliably executing it are two different capabilities.

Unfortunately, fixing the execution path did not suddenly produce a busy trading day. The account’s daily change was only about $0.21.

With five days left, I wanted the agent to become more active. It kept identifying stocks that looked promising, then rejecting them at a final risk or qualification gate. I pushed for more frequent reviews, potentially every 30 minutes, and fewer restrictive entry barriers.

That was a deliberate push toward more exposure. It was not a guarantee of better returns, as the next few days made pretty clear.

Day Three: Finally Positive, but Most of the Money Was Still in Cash

By the third trading day, the account had reached approximately $10,018. We were up about $18 from the starting balance.

The portfolio included:

  • Almost $2,000 in Hewlett Packard Enterprise.
  • About $1,200 in Exxon Mobil.
  • About $1,000 in Apple.

HPE was up roughly $30, Exxon Mobil was up around $7, and Apple was down about $8 at the check-in.

That was progress, but close to 60% of the account was still sitting in cash. Only around $4,000 was actually invested. Heading toward the halfway point, I wanted the agent to consider larger positions or more positions rather than leave most of the capital unused.

Why the benchmark mattered more than the dollar gain

I was not trying to claim that AI could reliably turn $10,000 into $15,000 in a week. I am not an expert day trader, and that was not the point of the experiment.

The target was the S&P 500, an index of 500 leading large U.S. companies that serves as a broad U.S. stock market benchmark.

At that check-in, the comparison suggested that a $10,000 investment tracking the S&P would have been down about five dollars. Our account was up about $18, so we were slightly ahead.

Beating the benchmark does not always mean making money. If the benchmark falls 10% and your portfolio falls 5%, you have outperformed it, even though you still lost money.

Day Four: More Exposure, Much Worse Results

Early on day four, the account was down to approximately $9,876.

The system had sold its previous holdings before the regular market opened and entered three new positions. Only about $2,000 remained in cash, meaning around 80% of the portfolio was now invested.

At the time, I was happy to see that. After two quiet days and a third day with most of the balance still in cash, the system was finally putting more money into the market.

Then the market session happened.

By the end of the day, the account was around $9,800, with a reported daily loss of roughly $225, or 2.26%. The S&P 500 was down only about 0.5%.

We had become more active, but we had also performed a lot worse than the benchmark.

There was a losing CrowdStrike position, and the account also held an S&P ETF. That second position caught my attention. The agent knew its objective was to beat the S&P, so I wanted to understand why it had allocated some of the account to the benchmark itself.

Holding a benchmark fund is not automatically inconsistent with outperforming it, since the other positions can still create a difference. But it was a decision worth questioning rather than assuming the agent had a good reason.

Only about $1,200 remained in cash. The portfolio had plenty of exposure. What it needed now was better performance.

Day Five: A Daily Win Was Not Enough to Take the Lead

On the morning of day five, the account had just $8 in cash. Nearly the entire balance was invested.

The portfolio was around $9,783 at the morning check-in, and the trade notifications were certainly more active than they had been at the start.

By the close, the account stood at $9,832.58. The reported daily gain was about $36, or 0.37%, while the S&P fell about 0.45%.

That was a clear daily win against the benchmark. It did not erase the earlier losses.

Dark comparison report showing portfolio and S&P 500 performance figures
Winning one session did not make up for the portfolio’s earlier underperformance.

The benchmark comparison put a hypothetical $10,000 S&P investment at roughly $9,925. We were still about $90 to $100 behind, with only two trading days remaining.

The account had about $63 in cash at the close. Almost everything else was invested, yet the daily gain was only around $36.

That helped put the scale of the experiment in perspective. Having $10,000 invested does not mean you should expect thousands of dollars of movement every day. In this stock-only portfolio, the daily changes were generally much smaller than that.

It also made me interested in extending the experiment. Thirty, sixty, or ninety days would tell us more than a one-week sprint, even though none of those periods alone would prove that a strategy works reliably.

Day Six: A Rate Announcement Hit the Portfolio

Day six brought a macroeconomic event into the middle of the challenge. During the session, I was reacting to a reported Federal Reserve rate increase of 25 basis points, from 3.75% to 4%.

A 25-basis-point move means 0.25 percentage points. Higher rates can make borrowing more expensive and put pressure on stock valuations. The market reaction is not automatic or uniform, but in the period I was tracking, the S&P moved down after the announcement, and our account fell too.

A lower stock price can look like an opportunity for someone with a longer time horizon. For a challenge ending the next day, a possible future recovery was not much comfort. A dip is also not a promise that a stock will rebound.

The agent sold, then put some money back to work

The system responded by selling a substantial amount of stock. For roughly an hour, the account held around $7,000 in cash. It later bought back into the market, including an 80-share purchase.

At the end-of-day check-in, the account was around $9,759, with about $3,600 in cash. The reported daily loss was roughly $85, or 0.87%, compared with a decline of about 0.45% for the S&P.

The benchmark calculation put the equivalent S&P investment near $9,857. We were still about $100 behind.

There was one trading day left. My instinct was to get more of the remaining cash into the market and give the account a chance to close that gap. Of course, that same exposure could also make the gap larger.

Day Seven: A Brief Return Above $10,000

The final morning gave me a little hope.

The account briefly showed approximately $10,012, back above the starting balance. Then it dropped sharply, reaching around $9,868 by the morning update.

The agent had exited a position before it fell further, which helped limit some of the damage. Another trade had just gone through, leaving only about $100 in cash.

At that point, there was not much left to do except keep my hands off the keyboard and let the challenge finish.

The Final Results: Astra Lost to the S&P 500

After seven trading days, the account finished at approximately $9,900.

Here is the final comparison:

  • Starting balance: $10,000.
  • AI-managed account: About $9,900, a loss of roughly $100 or 1%.
  • Equivalent S&P 500 investment: About $9,980, a loss of roughly $20 or 0.2%.
  • Performance gap: The AI account finished about $80 behind, or 0.8 percentage points.
Final comparison report with S&P 500 and portfolio figures labeled at the bottom
The account finished close to its starting balance, but the S&P 500 still won.

The last day itself was strong. The reported gain was about $182, or 1.87%, compared with 1.14% for the S&P. We beat the benchmark that day, just not across the full challenge.

The check-ins used rounded balances and daily-change figures captured at different moments, so those snapshots are not a precise transaction-by-transaction accounting. The final comparison is the important result: the AI-managed account lost the challenge.

What I Actually Learned From Letting AI Trade Real Money

More activity is not the same as a better strategy

For the first two days, I kept pushing the agent to do more. It loosened its filters, reviewed opportunities more often, and eventually invested almost the entire account.

That solved the inactivity problem. It did not solve the performance problem.

The distinction matters. An agent can follow your instruction to become more aggressive without becoming more accurate. The fourth day was a pretty clear example: more money was invested, and the losses were much larger than the benchmark’s.

The workflow needs as much attention as the stock picks

The research agent, execution bot, scheduled routines, and handoff messages all mattered. A good recommendation is not useful if the system cannot act on it, and a scheduled routine needs enough context to understand what happened before it started.

The execution restriction on day two also meant this was not simply one untouched model trading autonomously for a week. It was an evolving automation system with human adjustments.

Seven days is too short to establish a reliable edge

I felt like the system only really found its footing after the first two days. That left about five sessions with meaningful activity, and one of those included a rate-related market move.

That does not excuse the loss. The rules were seven days, and we lost. But it limits what the result can tell us about long-term viability.

We also changed the strategy during the challenge. That makes this useful as an experiment in building and adjusting an AI workflow, but less useful as a clean test of one fixed trading strategy.

Options would change the risk, not prove the system is better

This challenge involved stocks, not options. Options can create much larger percentage gains or losses because their value depends on factors including the underlying stock’s movement and the time remaining before expiration.

Adding them could make a future challenge more dramatic. It would also change the risk profile substantially. Bigger swings would not, by themselves, demonstrate better decision-making.

My plan was to keep refining the stock-trading system and extend the experiment toward 30 days. My previous 30-day stock-only experiment had beaten the S&P, and I wanted to see what this setup could do with more time. That is a reason to keep testing, not a guarantee that it will outperform.

A Deal Is a Deal

Because the account finished behind the S&P 500, I owed the promised VIP ticket to AIS Live on October 17 and 18.

The announced giveaway process was a post in my free AI Automation Society community, scheduled for about a week after publication. Members could comment on that post to become eligible, and I would contact the selected winner directly. That was the original giveaway schedule, not a promise that entry remains open.

The bigger takeaway is simple: AI can coordinate research, maintain context, and drive a trading workflow, but none of that automatically creates an investing edge. In this seven-day test, the benchmark won.

Share

Nate Herk | AI Automation

I teach practical AI automation: build agents, master Claude Code and n8n, and turn useful workflows into real business solutions.

© 2026 Nate Herk | AI Automation
Powered by Convella