Markets › Crypto · BTCUSDT spot, Binance (daily bars)

Turtle Trading Backtest: Daily Bitcoin, 2017 to 2026

The original Turtle rules, unchanged, on nine years of daily Bitcoin, with costs, a time-shifted control and a holdout no earlier test had touched.

BTCUSDT spot (Binance) · daily bars, 00:00 to 24:00 UTC, seven days a week · Protocol v1.0 plus the 8 Oct 2026 rules

Buried · Fragile

Beat the control on fresh data. Nine years gave too few trades.

BornFrozen 12 Oct 2026 (tt_btc_spec.md), before any Turtle level was computed on Bitcoin
Died14 Oct 2026

Variants tried: 4 · Passed every gate: 0 · Holdout opened: yes (fresh, first use)

Short answer: promising, but not proven. On nine years of daily Bitcoin the original Turtle rules made money after costs in every period, including a holdout no earlier test had used, and System 1 beat a control that places the same trades on other days. Daily breakouts on one market gave too few trades to pass our gates, so all four variants were buried.How much costs took here, compared across all 54 of our tests →Did the same rules work on other markets? The cross-market scoreboard →

00The verdict in three lines

  • We ran the Turtle rules of our gold and EUR/USD tests, unchanged, on daily Bitcoin from August 2017 to September 2026: System 1 (20-day breakouts) and System 2 (55-day breakouts), each with one unit and with pyramiding, long and short, after 0.1% of costs on every fill. It is the first test on this site with a fresh holdout: no earlier test had used any Bitcoin data.
  • The most encouraging Turtle result so far. All four made money in every period, including the fresh holdout (2024 to 2026). System 1 beat the time-shifted control at the 100th percentile with one unit and the 100th with pyramiding (above every one of the 500 runs): the breakout days did better than the same trades on other days.
  • All four Buried, because there are too few trades to tell. Daily breakouts on one market gave 36 / 29 / 38 System 1 trades in the three periods (50 needed in each) and development t-statistics of 2.26 and 2.09 (2.5 needed). The long side made almost all of the money, and without the trades that span Binance outages System 1's average falls from +0.85 R to +0.49 R a trade.

01What we tested

The Turtle rules of the gold test, unchanged: N, the 20-day average true range; System 1, 20-day breakouts with the skip rule and the 55-day failsafe, exit at the opposite 10-day extreme; System 2, 55-day breakouts, exit at the opposite 20-day extreme; a 2N stop; pyramiding to four units at N/2 steps in the 4U variants; R = 2N at the first entry; long and short. Four variants, named BTC-TT-S1-1U to BTC-TT-S2-4U.

Only the market values change. Days run from 00:00 to 24:00 UTC on all seven days, because Bitcoin trades every day, so “20 days” means 20 calendar days. One tick is $0.01. The cost is 0.1% of the price on every fill (entry, each added unit and exit), the standard spot taker fee on Binance, used as a stand-in for fee and spread.

A higher bar: with the gold and EUR/USD tests, twelve Turtle variants have now been tried, so the protocol requires a development t-statistic of 2.5.

02Data and costs

BTCUSDT spot on Binance: the exchange's public 1-minute history from data.binance.vision, 110 monthly files from August 2017 to September 2026, each checked against the checksum Binance publishes, built into 3,331 UTC days. Prices are in USDT, treated as US dollars. Before the specification was written we checked the data only: missing minutes, gaps, time stamps and a comparison with the IC Markets BTCUSD price (details in the data notes). No level, signal or trade was computed before the rules were frozen.

Periods by the first entry: development August 2017 to June 2021, validation July 2021 to December 2023, holdout January 2024 to September 2026. The holdout is fresh: opened once, for this run. Engine check: the engine of the gold and EUR/USD tests got three additive options (UTC days, a cost in percent, the Bitcoin swap). Both earlier runs reproduced exactly, trade by trade, and the self-test passed, including the four Bitcoin variants trade by trade against an independent re-implementation (tt_selftest_result.txt).

03Results

Net R is the sum of the trades' results after costs. Dollars are per bitcoin per unit, summed over all units; they are dominated by the later years, when one bitcoin cost far more, so R is the fairer measure across years. The 95% range is the Wilson interval for the win rate. The drawdown includes open losses.

VariantRulesTradesNet after costsR per tradeDollars (1 BTC a unit)Winners (95% range)Profit factorDrawdown incl. open lossesVerdict
BTC-TT-S1-1USystem 1 (20/10), one unit103+87 R+0.85 R+$100,30143.7% (35% to 53%)3.07-6.8 RBuried
BTC-TT-S1-4USystem 1 (20/10), up to 4 units103+272 R+2.64 R+$278,13533.0% (25% to 43%)3.12-20.2 RBuried
BTC-TT-S2-1USystem 2 (55/20), one unit62+133 R+2.15 R+$90,25548.4% (36% to 61%)5.55-5.5 RBuried
BTC-TT-S2-4USystem 2 (55/20), up to 4 units75+513 R+6.84 R+$331,47030.7% (21% to 42%)6.97-17.2 RBuried
-010020020182020202220242026validationholdout (fresh)BTC-TT-S1-1UBTC-TT-S1-4UBTC-TT-S2-1U

Cumulative net R by month. Bitcoin over the same data: $4,261 to $83,624.

By period

VariantDevelopment Aug 2017 to Jun 2021 (trades)Validation Jul 2021 to Dec 2023 (trades)Holdout (fresh) Jan 2024 to Sep 2026 (trades)Development tValidation PF
BTC-TT-S1-1U+52 R (36)+24 R (29)+11 R (38)2.263.06
BTC-TT-S1-4U+187 R (36)+44 R (29)+41 R (38)2.092.35
BTC-TT-S2-1U+111 R (19)+13 R (20)+9 R (23)1.582.49
BTC-TT-S2-4U+434 R (22)+40 R (25)+38 R (28)1.542.42

Every variant made money in every period. None reached 50 trades in any period.

04Gold, EUR/USD and Bitcoin

VariantControl percentile, goldControl percentile, EUR/USDControl percentile, BitcoinGold: longs / shortsEUR/USD: longs / shortsBitcoin: longs / shorts
S1-1U94.097.6100.0+47.5 R / -14.4 R+5.4 R / +20.3 R+81.0 R / +6.4 R
S1-4U82.879.8100.0+128.3 R / -49.2 R-11.4 R / +37.3 R+241.4 R / +30.9 R
S2-1U98.660.092.6+75.3 R / -11.6 R+3.3 R / +11.8 R+126.3 R / +6.9 R
S2-4U97.269.688.8+256.5 R / -31.8 R+26.4 R / +55.3 R+493.0 R / +20.1 R

The same rules on three markets: on gold System 2 beat the control, on EUR/USD only System 1 with one unit, on Bitcoin both System 1 variants. Each time the side of the market's big moves made the money: longs on gold and Bitcoin, shorts on EUR/USD. No variant beat the control on all three markets.

05Where the result comes from

VariantLongs: trades / netShorts: trades / net10 best tradesNet without themAverage unitsAverage days held
BTC-TT-S1-1U51 / +81.0 R52 / +6.4 R+83.4 R+4.1 R1.0018
BTC-TT-S1-4U51 / +241.4 R52 / +30.9 R+291.8 R-19.5 R3.1913
BTC-TT-S2-1U33 / +126.3 R29 / +6.9 R+144.8 R-11.6 R1.0029
BTC-TT-S2-4U39 / +493.0 R36 / +20.1 R+564.0 R-51.0 R2.9721

System 1 with one unit stays positive without its ten best trades; the other three do not. The long side made almost all of the money in every variant.

By year (net R, trades)

YearBTC-TT-S1-1UBTC-TT-S1-4UBTC-TT-S2-1UBTC-TT-S2-4U
2017 (from Oct)+8.5 R (3)+31.4 R (3)+11.0 R (1)+42.7 R (1)
2018+6.3 R (9)+26.6 R (9)+3.8 R (6)+18.9 R (6)
2019+16.9 R (10)+61.4 R (10)+28.5 R (4)+111.4 R (5)
2020+21.8 R (8)+72.8 R (8)+67.9 R (6)+260.6 R (8)
2021+2.8 R (12)+8.9 R (12)+1.8 R (5)+0.7 R (6)
2022+3.0 R (11)+12.3 R (11)-0.9 R (8)+1.8 R (8)
2023+17.0 R (12)+17.9 R (12)+11.9 R (9)+38.9 R (13)
2024+6.2 R (14)+26.5 R (14)+6.0 R (7)+31.5 R (8)
2025-2.9 R (15)-11.5 R (15)-3.6 R (10)-13.9 R (14)
2026 (to Sep)+7.9 R (9)+26.0 R (9)+6.6 R (6)+20.6 R (6)

2025 is the only year in which every variant lost. 2020 was the best year of every variant.

06Financing

Turtle positions last weeks, and a short position in Bitcoin needs a loan or a derivative. Scenario A: 10% a year of the entry price for every calendar day held, charged to longs and shorts alike. Scenario B: today's IC Markets BTCUSD swap (long -20% a year, short 0, Friday counting three nights and covering the weekend), applied to every year: not a historical rate. The verdict uses the baseline without financing.

VariantNet, no financingNet, scenario A (10% a year)Net, scenario B (today's swap)
BTC-TT-S1-1U+87.5 R+80.5 R+78.5 R
BTC-TT-S1-4U+272.3 R+253.4 R+247.2 R
BTC-TT-S2-1U+133.2 R+125.7 R+123.0 R
BTC-TT-S2-4U+513.0 R+487.3 R+475.6 R

Financing takes less than 15% of the result in either scenario: the positions are held for about two to four weeks, and R is large next to a few weeks of charges.

07Is it the timing or the market?

The same time-shifted entry control as on gold and EUR/USD: the real entry days moved together by one random offset of at least 5% of the series, same directions, same N, stop, exits, pyramiding and costs; 500 runs with fixed seeds; the bar is the 95th percentile of the average net R per trade. On a market that rose about 20-fold this is the question that matters: the control keeps the long and short entries, only on other days.

VariantTradesReal average per tradeControl trades (mean)Control medianControl 5th to 95thPercentile (95 needed)
BTC-TT-S1-1U103+0.85 R86+0.22 R-0.04 R to +0.48 R100.0
BTC-TT-S1-4U103+2.64 R87+0.80 R-0.08 R to +1.82 R100.0
BTC-TT-S2-1U62+2.15 R48+1.11 R+0.09 R to +2.28 R92.6
BTC-TT-S2-4U75+6.84 R54+3.48 R+0.10 R to +7.91 R88.8

08The gates

VariantTrades1. PF ≥ 1.2 in validation2. ≥ 50 trades in each period3. t ≥ 2.5 on development4. Above the 95th percentile of the time-shifted control5. Positive without the 10 best trades6. Holdout net positive (fresh)
BTC-TT-S1-1U103passfailfailpasspasspass
BTC-TT-S1-4U103passfailfailpassfailpass
BTC-TT-S2-1U62passfailfailfailfailpass
BTC-TT-S2-4U75passfailfailfailfailpass

09Verdict by variant

VariantCauseGates failedVerdict
BTC-TT-S1-1UNo proven edge2, 3Buried
BTC-TT-S1-4UFragile2, 3, 5Buried
BTC-TT-S2-1UNo proven edge2, 3, 4, 5Buried
BTC-TT-S2-4UNo proven edge2, 3, 4, 5Buried

Fragile (System 1 with pyramiding): it beat the control, but it ends below zero without its ten best trades. No proven edge (System 1 without pyramiding): it beat the control and made money in every period, but with too few trades in each period and a development t-statistic below 2.5. No proven edge (System 2): below the control's 95th percentile, too few trades, and below zero without its ten best trades. Not tested: other coins, a portfolio of markets, other breakout lengths and exits, live fills.

What would change our mind: the same rules, unchanged, on Bitcoin data after September 2026 or on other markets, until there are enough trades for the gates.

TWhat this shows, and what to take into your own tests

What the results show

  • System 1 beat the time-shifted control on Bitcoin with both one unit and pyramiding (percentile 100.0 and 100.0): the breakout days did better than the same trades placed on other days, in a market that rose about 20-fold.
  • All four variants made money in every period, including a holdout from 2024 to September 2026 that no earlier test had used.
  • They still failed the protocol: nine years of daily bars gave 36 / 29 / 38 System 1 trades in the three periods (50 needed in each), and development t-statistics of 2.26 and 2.09 (2.5 needed).
  • The long side made almost all of the money; the short side ended slightly positive.

What remains unknown

  • Whether the effect holds on the next years of Bitcoin, which is the only way to get more trades on one market.
  • Whether it holds on other coins, or on a portfolio of markets, the way the Turtles traded.
  • Real fills in fast moves, and the cost of holding a short position, which a spot exchange does not offer without a loan or a derivative.

Why it did not pass

Not for lack of profit. Daily Turtle rules trade rarely, about 11 times a year for System 1, so nine years of Bitcoin are not enough trades for the significance and sample gates fixed before the run. System 1 with one unit passed four of the six gates; pyramiding and System 2 also depend on a handful of very large trades.

What you can apply to your own tests

  • A strong result with few trades is still a weak result. Count the trades per period before you look at the profit.
  • Compare against the same trades on other days: on a market that rose twentyfold almost any long trade made money; the control tells you whether the timing added anything.
  • Raise the bar as you try more variants of the same idea: here twelve Turtle variants had been tried across three markets, so the development t-statistic had to reach 2.5.

A note on the numbers: drawdown figures are measured on closed trades unless a table says it includes open losses. Open losses inside a trade are not counted in a closed-trade drawdown, so real account risk is higher, especially for systems with no stop. Backtests are not live trading.

FAQCommon questions

Does Turtle Trading work on Bitcoin?

In our backtest System 1 with one unit made +87 R after costs over 103 trades from 2017 to 2026, and beat every one of 500 runs of a time-shifted control. But it had fewer than 50 trades in each period and a development t-statistic of 2.26 against the 2.5 we require, so it did not pass.

Is the Bitcoin result just Bitcoin going up?

Partly. The long side made almost all of the money. But the control keeps the same long and short trades and only moves them to other days, and System 1 beat all 500 of those runs: the breakout timing added something. System 2 (percentile 92.6) did not.

How was the Bitcoin Turtle test run?

With the original Turtle rules unchanged, on Binance BTCUSDT 1-minute data from August 2017 to September 2026 built into daily bars from 00:00 to 24:00 UTC, 0.1% of costs on every fill, with rules written and dated before the data was run, costs included on every trade, results split into development, validation and holdout periods, a random-entry control as the benchmark, and every variant reported. Read the protocol.

10Check our arithmetic

Frozen specificationThe Bitcoin values, periods and scenarios, dated before any level was computed on Bitcoin; the rules are those of the gold specification.
tt_btc_spec.md · tt_spec.md
CodeThe engine, the independent re-implementation, the self-test and the run (node tt_run.js --market=BTC). Rebuild the data with btc_build.js from the Binance files.
tt_lib.js · tt_ref.js · tt_selftest.js · tt_run.js · btc_build.js
Shared code it usesLoaders, statistics and control helpers.
control_audit_lib.js · em_lib.js · fb_clock.js · fx_data.js · gh_lib.js · gx_lib.js · hourly_lib.js · ma_lib.js · rb_lib.js · rsi2_protocol.js
ResultsSelf-test result, the console output of the run and all numbers as one file.
tt_selftest_result.txt · tt_results.txt · tt_summary.json
Trade logs (CSV)Every trade of every variant, with units, R, dollars and both financing scenarios. Times are UTC.
BTC-TT-S1-1U · BTC-TT-S1-4U · BTC-TT-S2-1U · BTC-TT-S2-4U
Data recordThe gaps of 10 minutes or more in the Binance history. The data itself is free from data.binance.vision (spot, klines, BTCUSDT, 1m, monthly).
btc_gaps.json

Code provenance: our own code, written from the published Turtle rules and the standard true range. No third-party source code is used or published.

11Data notes

Gaps. 8,562 minutes (0.18%) are missing, in 34 gaps, mostly Binance maintenance in 2018 to 2021; the longest ran from 8 February 2018 00:28 to 9 February 09:59 UTC. Removing the trades open across a gap of 10 minutes or more (btc_gaps.json) changes no verdict, but it lowers every variant's average a lot (System 2 with one unit from +2.15 R to +0.48 R): three or four of each variant's ten best trades were open during an outage. The check is strict and leans against winners: the removed trades were held about twice as long as the others, and long-held trades are both the big winners of a trend system and the ones most likely to span an outage.

VariantTradesRemovedR per tradeVerdict
BTC-TT-S1-1U10316+0.85 R → +0.49 RBuried → Buried
BTC-TT-S1-4U10312+2.64 R → +1.29 RBuried → Buried
BTC-TT-S2-1U629+2.15 R → +0.48 RBuried → Buried
BTC-TT-S2-4U759+6.84 R → +1.53 RBuried → Buried

Time stamps. In two periods (4 to 18 December 2017, and 9 to 10 February 2018 after the outage) Binance's minutes start a few seconds off the whole minute; they were rounded to the nearest minute (21,602 minutes, one duplicate removed).

Cross-check. On the 2,065 days since February 2021 for which we also have the IC Markets BTCUSD daily close, the two prices differ by a median of 0.05% (95% of days within 0.26%).

Source. One exchange's spot prices in USDT. Short positions are not possible on spot without a loan or a derivative; the short results assume one at the same price, with the financing shown in section 06. The cost is constant across years.

12Corrections

15 Oct 2026: the cause of TT-S1-1U (System 1 without pyramiding) changed from “Fragile” to “No proven edge”. The protocol defines Fragile as a result that falls apart without a handful of trades; TT-S1-1U stays positive without its ten best trades, so its case is No proven edge (too few trades and too little significance). No number, gate or verdict changed. 22 Oct 2026, navigation: added a link to the new guide comparing trading costs across all our tests. No result changed. 22 Oct 2026, navigation: added a link to the new cross-market scoreboard, which includes this test. No result changed. 22 Oct 2026, navigation: added a link to the new guide comparing trend following and mean reversion across all our tests. No result changed.

+More tests and guides