Koryu
← Research library
Research · 研究 · 01 · Origin

We ran our stock engine on crypto. It lost. Here is the anatomy.

13 Jul 20267 min readMethodologyKoryu Research

Every figure below comes from a reproducible experiment on public exchange data, with the configuration frozen before the run and published here in full. The test universe is survivor-biased in a way we quantify honestly, which makes every result an upper bound. Nothing here is a strategy recommendation or investment advice. Decisions are yours.

Before this site existed, we asked an unpopular question: would a stock-trading system that survived five years of validation work on crypto, exactly as-is? Most vendors would run that test privately, publish it only if it flattered them, and quietly re-tune until it did. We ran it once, untouched, and are leading with the result: it lost. The anatomy of the loss is the design brief for everything this site does.

The donor system, in full

The donor is a small-cap momentum breakout engine that trades US equities, and because a transplant test is meaningless if the organ is vague, here is the complete rule set as transplanted. Entry: a daily close above the highest high of the prior 20 sessions, confirmed on the close, filled at that close. Ranking: when more candidates fire than there are free slots, take the strongest 30-day return first. Portfolio: at most 4 concurrent positions, each 20% of current equity, minimum ticket $500. Protection: an initial stop at entry price times one minus 1.25 times the 14-day ATR percentage, clamped between 2% and 15%. Exit: stop touch, or the first daily close below the 12-day simple moving average. Costs: 20 basis points per side, covering fee plus slippage. Calendar: crypto trades every day, so all annualized figures use 365 days.

The transplant rule was strict: change nothing. No parameter was re-fit, no threshold nudged, no crypto-specific exception added. The point was never to launch this system on crypto. The point was to measure how much of a validated equity edge is portable, because the honest answer determines whether a crypto product can be built by porting or must be derived natively.

Three runs, one table

We ran the frozen system three ways over the same window, May 2021 through May 2026, on daily bars from a major exchange's spot USDT pairs. Run one: the top 120 pairs by liquidity, ungated. Run two: identical, plus one pre-declared regime gate, entries allowed only while BTC closed above its 50-day moving average with the 20-day average also above the 50-day. Run three: ungated again, but the universe restricted to the top 15 pairs, the majors. The benchmark facts for the window: BTC returned 1.63x, ETH 0.60x.

The results, $100,000 starting capital, all costs included. Alts ungated: final $77,712, a -4.9% annual return, Sharpe -0.09, maximum drawdown -74.4%, 517 trades, 25.5% winners, profit factor 1.10, with 293 of 517 exits at the stop. Alts gated: final $208,631, +15.8% annually, Sharpe 0.32, maximum drawdown -59.4%, 312 trades, profit factor 1.37. Majors ungated: final $163,258, +10.3% annually, Sharpe 0.33, maximum drawdown -37.9%, 34.4% winners. Read those three lines together and the whole story is visible: the mechanism loses on alts, one regime filter rescues it, and on majors it matches BTC's return with roughly half of BTC's roughly -77% peak-to-trough drawdown over the same cycle.

Failure mechanism one: the stop sits in the kill zone

Work the arithmetic on a typical altcoin. With a 14-day ATR around 8% of price, the stop formula wants 1.25 times 8%, ten percent below entry, and anything more volatile slams into the 15% clamp. Now recall what crypto daily ranges look like: moves of 10-15% inside a single day are routine on alts, driven by leverage liquidation cascades and thin weekend books rather than by trend information. An equity stop at that distance clears the noise floor; a crypto stop at that distance IS the noise floor. That is how 57% of all exits came at the stop, and why the win rate collapsed from the donor's roughly 38% on equities to 25.5% here. The stop design was not wrong in general. It was tuned to the wick distribution of a different asset class, which is a polite way of saying it was wrong here.

Failure mechanism two: four positions, one factor

On equities, four positions in different sectors genuinely spread risk. On crypto, altcoin returns are dominated by a single factor, BTC, with correlations that climb toward one precisely when it matters. Four alt breakouts are one leveraged BTC bet wearing four costumes. The consequence shows up directly in the drawdown line: a system with hard stops, conservative sizing, and a four-position cap still lost three-quarters of its equity, because all four costumes fell over together, repeatedly, through 2022. Position-count diversification is an equity intuition that does not survive contact with a one-factor market.

Failure mechanism three: the crowded trigger

A 20-day-high breakout works on equities partly because it is early relative to institutional accumulation. On crypto, everyone watches the same levels on the same charts around the clock, and the crowd that buys a breakout is also the crowd that sells it back within hours. The signature of a crowded trigger is exactly what the data shows: entries that immediately mean-revert into stops, a win rate too low for the payoff profile to carry, and better behavior on majors, where deeper books absorb the crowd, than on alts, where the crowd is the market.

What transferred: the discipline layer

One component contributed more than every tuned parameter combined: the regime gate. A two-condition trend stack on BTC, the kind of filter our equity system uses to route capital between its engines, moved the alts run from 0.78x to 2.09x and took the drawdown from -74.4% to -59.4%, while sitting out roughly 40% of trading days. We want to be precise about what that does and does not mean. It does not mean the gate is alpha; most of the gated run's return is the bull regimes the gate happened to keep, a distinction we insist on in the regime-versus-skill argument. It does mean the transferable part of a validated system is its risk architecture, not its entries, which is why the regime dial shipped on this site's first day, per the dial's published formulas, while entry signals shipped nowhere at all.

The caveat that bounds everything

The test universe was assembled from pairs that still trade today, because that is what exchange APIs offer. Every coin that collapsed and delisted between 2021 and 2026, the LUNA cohort and its thousands of smaller cousins, is invisible to the experiment, and a momentum scanner would have ranked several of them highly on the way up. Our equity self-audit measured what this class of bias can do to a headline number, and the answer was: a lot. So state the conclusion with the bias in the right direction: the untouched transplant lost money on a universe rigged in its favor. The honest number is worse. The full mechanics of that bias, and the point-in-time universe rules this site commits to because of it, are in the graveyard problem.

What happens next

The experiment's conclusions are now the roadmap. A crypto system must be derived natively: stop geometry from crypto's own wick distributions, ranking relative to BTC rather than absolute, majors and alts treated as different problems, and the regime layer promoted from overlay to first-class component. That derivation is running in public, with pre-registered validation gates and every failed branch published, per measurement vs advice. Until something passes, this site sells no predictions. The transplant bought us the right to say that with numbers instead of posture, which is exactly what it was for. Decisions are yours.

Related reading
MethodologyThe crypto graveyard problem: why every backtest you've seen is survivor-biased6 min readMethodologyCommit-reveal attestation: proof a call was made in advance6 min readThe systemThe Momentum Monitor methodology: every formula on the board6 min read
Frequently asked

Do stock trading strategies work on crypto?

Not as-is, in our test. A validated equity breakout system run untouched on the top 120 crypto pairs over five years returned -4.9% annually with a -74% maximum drawdown, while BTC itself gained 63%. The entry and stop parameters tuned for equity volatility failed on crypto's wider daily ranges.

What part of the stock system did transfer to crypto?

The regime-gating concept. Allowing entries only while BTC traded above an upward-stacked 50-day moving average turned the same losing system into a 2.09x result with a materially smaller drawdown. The discipline layer transferred; the tuned parameters did not.

Why did the stops fail on crypto?

The stop distance was sized at 1.25 times the 14-day ATR with a 15% cap, calibrated to equity noise. Crypto's routine 10-15% intraday wicks reach exactly that zone, so over half of all exits were stop-outs on moves that often meant nothing about the trend.

Was the test survivorship-biased?

Yes, and we say so prominently: the universe was assembled from currently listed pairs, so every coin that died between 2021 and 2026 is missing. That makes even our failed result an upper bound on how the system would truly have performed.

Did you re-tune the system after it failed?

No. The experiment's rule was one untouched run plus one pre-declared regime-gate variant. A crypto-native system is instead being derived from scratch, in public, behind pre-registered validation gates, and ships only if it passes them.