Stop being the product.
Become the owner.
or
sign uplog in

I generated hundreds of crypto trading strategies and…

I generated hundreds of crypto trading strategies and open-sourced 416 of them with full reports. Only 10 passed a brutal 7-stage validation

I built a validation pipeline that runs strategies through 7 stages on real Binance data:
Stage 1: code safety scan, in-sample, out-of-sample, walk-forward, randomized starts, slippage stress and Stage 7: final holdout slice nothing else touches.

6 months of 5 minute candles per run on BTC/ETH/SOL domains (ran on my weak laptop so going past 6 months would take a few extra days, I'll do a VM run next with more data).

Then I made a generator with several ideas and let it auto create and run the gauntlet on them (In retrospect might have been inefficient. I should have fed previously passed strategies back in to guide generation but I was a bit paranoid about correlation and spawning 416 clones).

It took me a few days to run and the repo is almost everything that came out: 406 rejects plus 10 survivors, each with a report card showing in-sample and OOS returns, Sharpe, drawdown, trade count, the exact stage it died on and why.

github.com/CacheCarti/Crypto-Strategies http://github.com/CacheCarti/Crypto-Strategies

**The interesting stuff I found:**

* The single best-looking backtest in the batch `pctb_fade_sol_v3`, **+2014bps in-sample!!! :O went -112bps** the moment it ran on unseen data.
* Literal astrology meme bots I created for fun got decently high returns in backtests but obviously failed in validation. Backtests have a big element of luck because of the smaller time frame! Unreliable!! (Please do not consider the report cards showing a strategy with high PnL as a "good" strategy. I might have been luck)
* Out of all the strategies, **only one showed an in-sample Sharpe above 1.5**. But it failed validation anyway. If you're searching for the perfect backtest in this dataset it basically doesn't exist.
* 25 strategies were profitable out-of-sample and STILL got rejected. They couldn't survive walk-forward and injected slippage. Green OOS numbers by itself is just most probably luck until proven otherwise, but they definitely might be a good place to fork and improve on in the future!
* Weirdest result: some of the 10 survivors have **negative OOS returns.** They passed because they held up under perturbation and randomized starts.
* The family that dominated was kinda bizzare: `asia_drift_btc` BTC drifts during Asian session hours, **7/9 of these variants passed!** Meanwhile the families everyone actually trades went **0/9** across the board: Donchian breakouts, bollinger squeezes, RSI reversion, orderbook imbalance. Context beat TA, so is TA dead??? Lol, my generator was probably bad at writing them, someone smart could actually build a good template for TA strategies.
* Every BTC scalping variant failed: 0/18. At \~7bps a side in fees, the edge you need on 5-minute bars is brutal. Anything thinner cannot survive. It might have been my own 5 minute time windows of evaluation though.

The code is plain Python on a simple predict-style contract, so they can drop into most backtesters. Most of the rejects failed on robustness rather than logic, so they're actually decent starting points if you want to improve them. Happy to answer questions on the methodology.

If anyone improves the strategies and gets different results I'd love to see it!
#cryptocurrency
source
earnings
1,000 mlx total
$0  total
engagement
2 views
0 reactions

0 comments