Does anything beat buy & hold on Junk Bonds?
Every setup we tested on Junk Bonds — ranked out-of-sample, corrected for multiple testing, and forward-tracked in public from the day this page published. The honest answer is the headline.
No setup beat simply holding once tested honestly. We say so plainly.
Its best setup only beat buy-and-hold in one window — a regime artifact, not a strategy. Buy-and-hold benchmark: +5.0% CAGR over 18.5 years (+4.1% CAGR in the out-of-sample window).
Educational research from historical backtests — not investment advice. Past performance does not predict future results.
Junk Bonds: Nothing Beat Buy-and-Hold, and That Is the Honest Answer
Broad, diversified instruments like Junk Bonds are where indicator strategies go to disappoint. We ran 727 setups against JNK, and none cleared the bar once scored honestly — on data the strategy never saw. The best of the batch, Vegas Tunnel on the daily timeframe, posted an out-of-sample Sharpe of 1.19, short of the 1.53 hurdle we require before calling anything real. For an index fund this is the expected result: whatever inefficiency exists in single names tends to average away in the basket, leaving buy-and-hold's +5.0% annualized return as the number nothing here managed to beat.
Read these figures with the selection problem in mind. Test 727 indicators, keep the best, and the winner looks impressive by construction — which is exactly why the hurdle exists instead of applause for a lucky draw. Here, only 0.4% of setups outperformed buy-and-hold even in-sample, and the top candidate produced +0.5% annual alpha over 5.6 unseen years, across 50 trades with a 38.0% win rate and a -10.4% drawdown. That pattern reads as noise, not signal. Markets also change, so even a genuine past edge can fade. This page documents what failed — useful to know before assuming something works.
Every figure above is computed from our own backtests — nothing is estimated or invented. Hypothetical results; not investment advice.
The least-bad setups — shown with their failure numbers
Nothing here earned a verdict — these are the best of a losing field, published so you can see exactly how "best" still failed.
Vegas Tunnel
Mechanical rule (exactly as backtested): The EMA 144/169 'tunnel' — long while price holds above the tunnel. Signals are evaluated at daily-bar close, the position changes on the NEXT bar, 0.08% cost per side, long/flat only — no leverage, no shorting.
Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 1.19 · alpha +0.5% · 12 trades over 5.6 yrs.
Volume Oscillator
Mechanical rule (exactly as backtested): Long when volume momentum is positive and price is above its EMA. Signals are evaluated at weekly-bar close, the position changes on the NEXT bar, 0.08% cost per side, long/flat only — no leverage, no shorting.
Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 1.02 · alpha -1.8% · 13 trades over 5.6 yrs.
Volume Flow Indicator
Mechanical rule (exactly as backtested): Katsanos' Volume Flow Indicator — volume filtered by a volatility cutoff; long while VFI is positive. Signals are evaluated at daily-bar close, the position changes on the NEXT bar, 0.08% cost per side, long/flat only — no leverage, no shorting.
Out-of-sample (last ~30% of the window, never used to pick this setup): Sharpe 0.99 · alpha -0.2% · 11 trades over 5.6 yrs.
Since publication — including if it loses
The forward record is just getting started — the gap between the two is the honest score. Marked to market nightly from real prices, rules frozen at publication, as of 2026-07-02. Currently LONG.
We tested 727 setups (indicator × parameters × timeframe) on Junk Bonds. Only setups with ≥30 trades qualify (557 did). Setups are ranked by out-of-sample Sharpe — the last ~30% of history, which standard-parameter rules never saw during selection. Because picking the best of 727 tries mines even the holdout, the VALIDATED verdict additionally requires the top setup’s OOS Sharpe to clear a selection hurdle of 1.53 (√(2 ln N)/√T) AND positive alpha in both windows. Of the eligible setups, 0.4% had positive out-of-sample alpha (median OOS Sharpe 0.12) — the table below is truncated, but this summary covers all of them. Full recipe: methodology · the engine’s contract lives in the repo as STRATEGY_METHODOLOGY.md.
Top 20 of 557 eligible setups
Ranked by out-of-sample Sharpe. Full + out-of-sample columns, costs included. Hypothetical.
| # | Setup | TF | Total ret | Sharpe | Max DD | Win | Trades | α vs B&H | OOS Sharpe | OOS α | OOS trades |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Vegas Tunnel | Daily | +128.8% | 0.92 | -10.4% | 38.0% | 50 | -0.4% | 1.19 | +0.5% | 12 |
| 2 | Volume Oscillator | Weekly | +116.1% | 0.79 | -9.2% | 58.5% | 53 | -0.7% | 1.02 | -1.8% | 13 |
| 3 | Volume Flow Indicator | Daily | +157.1% | 0.77 | -16.5% | 35.3% | 34 | +0.3% | 0.99 | -0.2% | 11 |
| 4 | Chaikin Money Flow | Weekly | +120.5% | 0.53 | -21.8% | 63.6% | 44 | -0.6% | 0.89 | -0.1% | 10 |
| 5 | WMA 200 Trend | Daily | +108.7% | 0.74 | -14.7% | 36.8% | 68 | -0.9% | 0.88 | -0.2% | 16 |
| 6 | SMA 200 Trend | Daily | +96.5% | 0.75 | -12.5% | 34.0% | 47 | -1.3% | 0.88 | -0.4% | 11 |
| 7 | EMA 100 Trend | Daily | +166.9% | 0.92 | -11.0% | 46.2% | 65 | +0.5% | 0.82 | -0.3% | 21 |
| 8 | RSI (50) | Daily | +175.2% | 0.95 | -11.0% | 46.2% | 65 | +0.6% | 0.82 | -0.3% | 21 |
| 9 | Disparity (100) | Daily | +167.0% | 0.92 | -11.0% | 46.2% | 65 | +0.5% | 0.82 | -0.3% | 21 |
| 10 | Twiggs Money Flow | Weekly | +81.5% | 0.44 | -28.6% | 53.2% | 47 | -1.7% | 0.82 | -0.3% | 10 |
| 11 | On-Balance Volume | Weekly | +118.1% | 0.64 | -14.1% | 62.1% | 58 | -0.7% | 0.82 | -0.8% | 15 |
| 12 | CCI (200) | Daily | +126.0% | 0.79 | -11.3% | 34.8% | 46 | -0.5% | 0.81 | -0.5% | 13 |
| 13 | Relative Volatility Index | Weekly | +113.6% | 0.61 | -17.7% | 40.0% | 40 | -0.8% | 0.8 | -0.6% | 15 |
| 14 | T3 100 Trend | Daily | +51.1% | 0.61 | -6.8% | 43.6% | 55 | -2.7% | 0.8 | -0.9% | 19 |
| 15 | EMA 200 Trend | Daily | +154.8% | 0.89 | -10.6% | 42.0% | 50 | +0.2% | 0.78 | -0.7% | 14 |
| 16 | ZLEMA 100 Trend | Weekly | +52.7% | 0.6 | -10.0% | 64.5% | 31 | -2.6% | 0.78 | -1.1% | 10 |
| 17 | SMA 15/60 Cross | Daily | +109.4% | 0.65 | -19.5% | 59.5% | 37 | -0.9% | 0.75 | -0.7% | 12 |
| 18 | HLC Trend | Weekly | +166.8% | 0.88 | -9.2% | 47.1% | 34 | +0.5% | 0.73 | -0.7% | 10 |
| 19 | DMI Direction | Weekly | +77.6% | 0.58 | -8.5% | 62.2% | 37 | -1.8% | 0.73 | -0.9% | 13 |
| 20 | Std Error Channel | Weekly | +133.2% | 0.77 | -12.7% | 58.1% | 31 | -0.3% | 0.73 | -0.9% | 11 |
Hypothetical backtests with 0.08%/side costs. Not investment advice — see the full disclaimer.
These are historical backtests of mechanical rules. They are educational research, not investment advice, not a recommendation, and not tailored to you. Educational information only — not investment advice. Hypothetical backtested results; past performance does not guarantee future results. Trading involves risk of loss.