AUR JOURNAL ยท HISTORY: 22 JULY 2025

When the Backtest Kept Finding Nothing

The program ran. The data loaded. The test finished. Then it returned the same answer again: no signals in the chosen window.

AUR historical cover for July 22, 2025 showing repeated backtests ending with no trading signals.

The test was supposed to tell us something

By July 22, Patryk had spent weeks trying to turn an ambitious idea into a working crypto trading bot. He was still learning programming as he went, without a quant team or formal software background. Roj, his AI partner, had already become teacher, code generator and debugger.

Now they were running a backtest. A backtest means taking a trading strategy and running it against older market data to see what it would have done. It is a rehearsal using the past instead of real money.

The command completed. Then the result came back: no signals in the selected window.

So Patryk ran it again

The preserved project history shows repeated runs on BTCUSDT with random test windows. Again, the backtest reported no signals.

That was different from a crash. There was no obvious syntax error to fix and no missing package shouting from the terminal. The machine could finish its job and still produce nothing useful.

This distinction mattered. Earlier in the project, silence often sent Patryk and Roj back into technical debugging. By now another possibility was becoming harder to ignore: perhaps the strategy's rules were simply too restrictive, poorly matched to the market or otherwise wrong.

Zero losses can be a terrible result

A bot that never trades can also avoid losing trades. On paper that may look safer than a bot that loses money, but it proves very little.

A trading signal is simply the strategy saying that its conditions for an action have been met. If those conditions almost never occur, the bot can sit perfectly still while appearing technically healthy.

That was the uncomfortable lesson in this small test. A program can run correctly and a strategy can still fail to give it anything worth doing.

Roj needed a new role

Until this point, many conversations with AI had been about making things work: generate the file, repair the error, explain the command, try again. That workflow had helped Patryk cross a barrier that would otherwise have stopped a non-programmer very early.

But code generation was no longer enough. If the code executed and the strategy still produced no opportunities, the useful question was no longer only "how do we fix the program?" It was "what if our assumptions are wrong?"

The preserved history does not resolve that question on July 22. It leaves it open. Five days later, Patryk would make the change explicit and ask AI not to assume that his reasoning was correct, but to challenge it and find what was actually broken.

AUR Research Lab documents research and development. This is not financial advice, a promise of returns or evidence of a validated trading edge.