Trend following
Buy strength and stay with it until the rule says the trend has weakened.
Before you put your hard-earned money into crypto, let’s put a few popular assumptions on trial. We tested trend following, mean reversion, both combined, and a momentum ranking engine across 30 coins and their full available histories.
Historical simulations through October 15, 2026 UTC
Daily bars · Long or cash · Raw results, zero trading costs
The starting hypothesis was straightforward: crypto may respond better to trend following than to mean reversion. In this selected 30-coin sample, the trend rule produced profits much more broadly. Adding mean reversion improved the aggregate return, but increased the worst drawdown. The interesting part is how we got there, including a “do not buy” zone that turns some familiar retracement ideas on their head.
Buy strength and stay with it until the rule says the trend has weakened.
Buy after a decline and look for a recovery toward the recent trading range.
When several coins qualify, give the available slots to those with the biggest recent percentage gains.
Two numbers you’ll see throughout: CAGR is the annualized compound growth rate. Maximum drawdown is the largest fall from a previous account high. A 45% drawdown would turn a $100,000 peak into roughly $55,000 before recovery.
With ATR limit entries, 26 coins finished above their initial capital. Mean reversion managed 13.
See the individual results →Mean reversion won roughly two-thirds of closed trades, yet its median coin CAGR was −3.1%.
Follow the experiments →Six-month ranking produced a 69.7% simulated CAGR. The large drawdown belongs beside that number.
Inspect the ranked portfolio →Can a rule that works in stocks survive in crypto? Does buying weakness help, or just keep you trapped in falling coins? And how much protection do 30 different names really give you? Work through the interactive tests below and you’ll see the evidence, including the surprises. These are historical simulations with zero trading costs, not promises of future returns.
Take the highest high and lowest low over the last 48 completed daily bars, including the signal day. The high is 0% retracement; the low is 100%. Crypto trades seven days a week, so these are 48 calendar-day bars.
Trend only: buy when retracement is below 30%; exit when it reaches or exceeds 30%.
Mean reversion only: buy when retracement exceeds 85%; exit when it returns to the middle zone, from 30% through 85%, inclusive.
Combined: buy in either outer zone; exit in the middle. One position per coin. A direct jump between the two outer zones does not itself force an exit.
The original phrase “below the 85% line” refers to the price. In this inverted retracement scale, that means a retracement greater than 85%.
Illustrative range: high $100, low $60.
The middle zone is often called the “anti-Fibonacci” zone in Dan’s teaching. The calculations use fixed 30% and 85% thresholds.
If you’ve used Fibonacci retracements, you’ll recognize levels such as 23.6%, 38.2%, 61.8%, and 78.6%. Traders also commonly plot 50%, even though it isn’t a Fibonacci ratio. The idea is to look for a pullback to one of those levels, then buy an anticipated recovery.
My framework takes a different approach. The popular 38.2%, 50%, 61.8%, and 78.6% levels all fall inside our 30%–85% “do not buy” zone. We buy strength near the high, or test a much deeper decline near the low. The 23.6% level still sits in our trend zone, so this isn’t a reversal of every Fibonacci level. It’s a deliberately different way to decide where a trade belongs.
I brought this idea from my work with U.S. stocks, especially large caps and Nasdaq 100 stocks, where I’ve found it useful. That gave me a hypothesis to test in crypto. It didn’t give me permission to assume the answer.
22,194 trading days in the Dow. Batchelor and Ramyar’s Magic Numbers in the Dow tested whether price and time ratios clustered around Fibonacci ratios and round fractions. Some apparently significant results appeared, but the authors found no more than chance could explain given the number of tests.
4,915, 17,931, and 35,684 measured retracements. René Kempen’s 2016 IFTA Journal study examined three trend scales using stocks in the Dow 30, Nasdaq 100, and DAX 30, with available daily histories reaching back to 1974. Fibonacci levels did not stand out statistically in those tests. Some non-Fibonacci round levels showed localized effects that depended on the trend scale and measurement resolution.
These studies challenge the special status of Fibonacci ratios. They don’t test our 30/85 rule, and they don’t establish that every Fibonacci-based trading system loses money. Our rule has to earn its place through its own results.
I spent plenty of time on this back in the 1990s. I wish I’d known then how quickly an attractive chart idea can fall apart when you test it. A familiar line on a chart still has to answer one question: does it earn its keep?
Entry limit = signal close − 0.3 × ATR(5). ATR means average true range, a measure of recent daily price movement including gaps. Here it is the simple average of the last five true ranges. The order lasts one daily bar. A gap below the limit fills at the open; otherwise the daily low must touch the limit. Exits occur at the next open.
Keep the trend rule and remove the limit. Signals use a completed close; both buys and sells execute at the following daily open. This is the version used in the ten-position ranked portfolio.
For the trend rule, Close > H − 0.30 × (H − L) is a buy state. Equality is an exit state. The combined and mean-reversion exits include both middle-zone boundaries. A zero high–low range produces no entry; no such usable observations occurred in this data.
True range = max(High − Low, |High − previous Close|, |Low − previous Close|). A missed limit order expires; a still-valid signal can submit a newly calculated order the next day. A position filled by a limit is first reassessed at that day’s close. Standalone tests invest the coin account’s available cash on entry, with fractional quantities allowed. No stop-loss, leverage, short sales, cash interest, taxes, or forced end liquidation is modeled.
Yahoo daily crypto bars in this study are labeled at midnight UTC. A completed day’s signal becomes available at the next midnight UTC, which is 5 p.m. Pacific during daylight saving time and 4 p.m. Pacific during standard time. An unfinished daily bar is excluded from signal generation. A Yahoo aggregate open is a modeled fill reference, not an exchange-specific execution guarantee.
DOGE was the first test case. Its downloaded history began November 9, 2017, with 3,263 complete daily bars through October 15, 2026. After the lookback warmup, every full-history test below starts on December 27, 2017 with $10,000.
The limit changed which moves were captured. The DOGE trend limit filled 93 of 144 entry orders (64.6%). Its CAGR was 48.9%, versus 65.6% with next-open entries; its worst drawdown was smaller.
More winning trades did not mean faster growth. DOGE mean reversion won 66.3% of closed trades but compounded at 7.8%. Trend with the same limit won 38.7% and compounded at 48.9%.
The initial investigation also included fresh-start tests from January 1, 2022, using earlier bars only for indicator warmup. They are descriptive subperiods, not out-of-sample tests. Full-history results remain the primary comparison.
An early sensitivity charged an illustrative 0.10% per side. It was dropped from the research at Dan’s request because the cost estimates were not calibrated to actual execution. Those figures are retained here only to document the sequence; all main results use zero trading frictions.
BTC and LTC have usable tests from 2014. Most other tests begin in 2017–2019. SOL starts in May 2020 after warmup. WETH is the exception: malformed earlier bars required a reset, so its trading test begins January 5, 2022.
Mean reversion was profitable on 13 of 30 coins; it did not fail on every coin. Trend had the highest CAGR among the three limit-entry rules on 17 coins, combined on 10, and mean reversion on 3. Median statistics mix different history lengths; comparisons within each coin use identical dates.
Select a symbol to load its chart. Largest values sort first; a drawdown closer to zero is smaller.
Start with $10,000 split equally across 30 separate coin accounts on November 4, 2014. Each waits in cash until its history and warmup are available, then trades independently. Profits remain in that coin’s account. Idle cash is not reassigned, and existing holdings are not rebalanced.
Combining both zones: CAGR rose from 34.9% to 37.6%, and winning full months rose from 42.3% to 57.7%. Maximum drawdown widened from 33.6% to 44.2%.
Removing the limit: trend CAGR rose to 38.2%, with a 36.1% maximum drawdown. Individual-coin CAGR improved on 18 of 30 symbols; drawdown improved on only 8.
These checks retain the original ATR-limit rules. The 2020 shared window contains 29 coins and excludes WETH; the 2022 window contains all 30. Each common-period test starts afresh with equal allocations. Excluding wrappers removes WBTC, WETH, and BTCB when present.
These are after-the-fact exclusions, not a prospective selection method.
2014 and 2026 are partial years. Values include unrealized gains and losses. The ranked column uses the separate ten-position portfolio introduced next.
The ranking test uses one shared cash account. At each close, identify trend exits, keep the remaining positions, then rank unheld, trend-eligible coins by their gain over six calendar months. Fill available slots at the next open.
I chose six-month percentage gain because it’s a ranking measure I know from stock trading. We didn’t search dozens of lookback periods and then present the one that made crypto look best. The 48-day range and 30%/85% thresholds were also fixed for these experiments. That keeps the question clear, although this is still exploratory research without a reserved out-of-sample period.
For example, if Coin A rose 40% in six months and Coin B rose 15%, A ranks ahead of B. Both must still pass the trend-entry rule before the ranking can matter.
Score = latest completed close ÷ close six calendar months earlier − 1. Candidates must also have retracement below 30%. Negative momentum is allowed if a coin otherwise qualifies.
Held coins stay until retracement reaches 30%. A lower ranking alone does not cause a sale. Eligible coins need not have crossed the entry boundary that day.
Use 10% of prior-close portfolio equity, capped by available cash. Existing positions drift. No leverage or daily equal-weight rebalance. Ten is the maximum, not a required position count.
The ranked portfolio first entered on March 18, 2015, after six-month history became available. Earlier cash is included in the reported CAGR. Its improvement over the fixed 30-account aggregate includes different sizing and reuse of cash, as well as ranking.
The random-control median equity curve summarizes 20 paths point by point; it is not one executable portfolio. It is omitted from drawdown mode.
Twenty additional runs kept the same ten slots, trend signals, six-month history requirement, position sizing, and cash rules. Whenever candidates exceeded vacancies, they selected candidates randomly instead of using momentum.
The ranked run’s CAGR was 69.70%. Random controls ranged from 59.90% to 69.34%, with a median of 64.99%. Momentum finished above all 20 in this sample.
These are correlated simulations of the same history. They do not constitute 20 independent market trials or a statistical proof of a future ranking advantage.
Each muted dot is one fixed random seed, 0–19. The gold diamond is the momentum rule.
There were 1,139 entry-selection days, but only 284 days when eligible candidates exceeded the available slots. Rankings can change selections on those constrained days. The largest single position reached 32.1% of portfolio equity because positions were not rebalanced.
Dollar contribution depends on the capital available when a trade occurred. It is not an equal-weight standalone return.
The full-overlap price matrix averages 0.436 across its 435 unique pairs. ETH has the highest average correlation in this sample, at 0.578 with the other 29 symbols; BTC averages 0.558. LEO has the lowest average at 0.116. Each pair uses all overlapping daily percentage returns.
Daily returns move together in a perfect linear relationship. That does not require identical percentage gains.
Knowing one coin’s daily return gives no linear clue to the other’s. It doesn’t mean the assets are risk-free or fully independent.
Daily returns move in exactly opposite directions in a perfect linear relationship.
Our 0.436 average is a moderate positive correlation. It means substantial shared movement, not that coins move together on 43.6% of days. The 0.517 average on the matched 2022–2026 period is higher. The matrix shows why adding more names doesn’t automatically give you more independent bets, especially when wrapped tokens repeat the same underlying exposure.
On identical dates from January 6, 2022 through October 15, 2026, average correlation was 0.517 for coin returns and 0.209 for standalone next-open strategy returns. The strategies record zeros while in cash and have different exposure dates. We did not isolate an effect beyond that cash timing. The smaller number does not establish that invested positions behave more independently.
Dan also observed that these correlations looked much higher than in his stock research. No matched stock-universe comparison was run here, so this report does not quantify a stock-versus-crypto gap.
The complete matrix stays visible. Hover or select a cell for exact values. On small screens, the colors show the full pattern and the pair selectors below provide readable details.
Lowest to highest, excluding the coin’s correlation with itself. This ranking follows the matrix settings above; the default is full-overlap price returns. Ties in displayed values are ordered using unrounded coefficients.
Price returns are Close[t] / Close[t−1] − 1. Strategy returns are Equity[t] / Equity[t−1] − 1 from each standalone next-open account, including cash days. The initial funding-to-first-close interval is omitted. These are not the ranked portfolio’s selectively held returns.
Full-overlap mode uses each pair’s entire shared return history, with no invented prehistory or missing-value fill. Its windows differ and its matrix need not be positive semidefinite. The longest shared price-return period is April 11, 2020–October 15, 2026, with 2,379 observations. The matched price/strategy window is January 6, 2022–October 15, 2026, with 1,744 observations per cell.
Valid WETH closes remain usable for price-only correlations even where intraday lows were malformed. Its missing close in August 2018 removes two returns. The strategy keeps the earlier data quarantine. No winsorization or return trimming was used. Wrapped assets remain in the matrices, so some symbols repeat BTC or ETH exposure.
Market capitalization is the price of a coin multiplied by its circulating supply. It tells us how much of the market’s quoted value sits in each asset. It doesn’t tell us how much money you could actually buy or sell without moving the price, as LEO demonstrated.
Source: CoinGecko Global API, frozen at the research date. Shares are of the provider’s whole-market total, including stablecoins, not just our selected 30 coins. Dollar values are calculated from that total and its reported shares. This context chart is not a live market feed.
Size and correlation are different questions. Bitcoin held most of the measured market value. Ethereum was second by market cap and had the highest average correlation with the other 29 coins in our full-overlap study, at 0.578.
My practical takeaway: I’d start with a well-tested Bitcoin strategy before assuming that holding a long list of crypto symbols gives me meaningful protection. Correlations below one can still reduce portfolio volatility. This study doesn’t prove Bitcoin alone would beat every possible allocation.
Yahoo’s crypto coverage extended well beyond Bitcoin, Ethereum, and Solana. We selected 30 of the largest coins by market cap among those that were not stablecoins and had raw Yahoo quote history beginning before May 2020. We froze that list for every experiment.
Why exclude stablecoins? They are designed to track a reference value, commonly $1, rather than sustain the price trends this experiment is trying to capture. Small deviations can mean-revert and pegs can fail, but that is a different research question. Stablecoins were excluded from all 30-coin trading tests.
These are the exact symbols used. The order preserves the original selected list; it is not a fresh market-cap ranking. The first Yahoo date is a data-availability date, not necessarily a coin’s launch date. Click a name to view its chart.
Every symbol’s available usable history was tested first. The main portfolio was not truncated to 2022 merely to synchronize all 30 coins. Shorter common-date checks are labeled separately.
We chose large coins at the research date and then looked backward. That means we already knew which coins survived and became large. It can flatter historical returns. The stock-market equivalent is testing today’s S&P 500 or Nasdaq 100 members through the past while leaving out former constituents that failed, such as Enron or WorldCom. We did not reconstruct historical membership or measure how much this bias inflated the results.
WBTC and BTCB repeat Bitcoin exposure; WETH repeats Ethereum exposure. The original portfolio tests include an additional check excluding those three symbols. All main 30-symbol results retain them.
WETH contains a missing bar and malformed lows; its trading history is reset after November 17, 2021, then warmed up again. FIL’s Yahoo quotes start in 2017, before mainnet launched on October 15, 2020. Its early quotes are retained and flagged.
Fees and slippage are zero by request. The simulations do not model spreads, queue priority, capacity, or exchange-specific price impact. A touched daily limit is treated as filled. The separate LEO liquidity check illustrates why those assumptions matter, but its costs have not been applied to the return tables.
There was no reserved out-of-sample period, walk-forward selection, or forward execution test. Thresholds and ranking length were not optimized in this session. Results on these histories do not establish a universal law of crypto behavior.
Structural checks do not independently verify Yahoo’s historical prices against an exchange. For DOGE, the 3,263 completed rows had no missing dates, duplicates, null closes, or structurally invalid OHLC bars.
The research used an HTTP GET to Yahoo’s chart endpoint, requesting daily bars between Unix timestamps. Its JSON supplies timestamps, open, high, low, close, volume, and metadata. No POST body was needed for these downloads. This is the endpoint used in the session, not a promise of a supported or permanently available public API.
https://query1.finance.yahoo.com/v8/finance/chart/DOGE-USD
?interval=1d&period1=0&period2=1792108800The end timestamp is October 16, 2026 at 00:00 UTC, excluding the unfinished day from the backtests. Histories vary by symbol. The report’s data and charts are embedded, so reading it does not call Yahoo.
All performance figures are calculations from the frozen prices and trade ledgers generated in this research session. The data download contains the reported metrics, daily equity paths, individual-coin trades, correlation matrices, and the dated market-cap context. Full original prices and simulation code are supplied in the companion research package.
Trend following was the stronger starting point in this study. Mean reversion was much less consistent across coins. Momentum ranking helped in this history, while moving into cash explained much of the lower correlation between strategy returns.
For me, that makes Bitcoin the natural place to focus the next round of practical research. LEO was an interesting exception, but its liquidity didn’t pass the practical test.
We’ve already put that idea to work. In 2021, we released a Bitcoin strategy built using linear genetic programming. As of October 2026, Portfolio Boss reports that the strategy is up more than 400% since its public release.
Linear genetic programming is a form of machine learning that evolves sets of trading instructions. It generates candidates, tests them, and keeps working with the stronger candidates under the chosen research criteria. The result is a set of explicit rules you can inspect and test.
Strategy Mill takes the discovery process across hundreds or even thousands of symbols. Give it your list and research criteria, then let your computer build and filter candidates while you get on with your day. You come back to results worth examining, with the failures filtered out.
For crypto-related stock-market research, GBTC has publicly quoted history dating to 2015, and ETHE to 2019. That gives you more history to investigate than the newer funds that began trading as ETFs in 2024.
Both products traded as trusts before converting to ETFs in 2024. Their older prices can reflect premiums or discounts to their underlying holdings. Test the actual fund history, including structural changes, rather than treating it as an interchangeable coin-price series. GBTC history ↗ · ETHE history ↗
Trade smart,
Founder, Portfolio Boss
Trading since 1997. Testing the assumptions ever since.
Discount Applied Successfully!
Your savings have been added to the cart.
There was a problem reporting this post.
Please confirm you want to block this member.
You will no longer be able to:
Please note: This action will also remove this member from your connections and send a report to the site admin. Please allow a few minutes for this process to complete.