Sub-par Programs Tend to Underperform
If a trading strategy does not perform as expected, the reason is not necessarily that the nature of the market changed or whatever anomalies that existed were arbitraged out. No single individual or group could arbitrage the market. It is simply too big. If, and it is a big if, if they could succeed as a group to successfully arbitrage the market, then stock prices would barely move. And it is not what you are seeing almost every day of the week.
I would venture that the main reason for failing to outperform would be programming for something that might not have been there in the first place or was simply coincidental over some past data. In other words, making a program and expecting that the future will be like the past. You can give it any moniker you want. It has been known since the late '60s that the majority of money managers underperform the markets (see, for instance, Jensen's 1969 paper). And this, even when the majority has the needed brainpower and access to all the latest tools (hardware and software).
Making assumptions on passed and delayed market-related data which might have little relevance to what will be coming is also another way to underperform. In a sense, saying that whatever predictability was assumed in that trading strategy was not that predictive after all. What is coming has never been seen. It is all new territory. There has never been 9 billion people with all their needs on this planet, and that is where we are going over the next 30 years.
A win rate of 51% is not distinguishable from strict randomness. A trading strategy not outperforming a benchmark is sub-par indeed. Stock prices tend to almost follow a martingale, and this implies that the expected price change will be zero. This should be viewed as no expected price change, no expected profit.
Therefore, the first thing to do is demonstrate that you are not dealing with a pure martingale, that your trading strategy has an effective long-term edge. Otherwise... you have nothing and playing on market noise. Nonetheless, you can play market noise and still win.
Developers tend to not take responsibility when designing sub-par programs and present over-fitted backtests which at first glance might show some promise based on the short-term trading methods used, but still have a poor strategy architecture. As if trying to escape the harsh reality of CAGR degradation over time either by ignoring it or not even considering compensating for it.
They treat trading as an investment vehicle when a lot of it might just be biased gambling based on some criteria which might not even have been proven to prevail over time, especially going forward. Typically, they will take credit for a backtest showing above-average returns, but will not take responsibility for other people blowing up their account using their program.
The concept of underperforming, especially using an automated solution, is deeply anchored in the stock trading strategy itself, and there, you are the designer and it is your program that is running your show. So guess what, maybe the program is sub-par, its premises and assumptions, factors, clusters, sectors, or what have you might not really behave as you see them. But this can happen anytime you digitalize a seemingly analog input having a high degree of randomness or uncertainty.
Those designing outstanding programs (outperforming market averages) will not make them public. I have not seen any hedge fund giving away their best programs. And I do not think I will see any of them doing so going forward. However, sub-par programs abound.
Quantopian announced that they have had over 12 million backtests performed over the years and some 6 million trading strategies including variations. Out of it, only a handful have been considered worthy of an allocation. So, how many sub-par programs are we talking about?