Markets › Crypto · BTCUSDT spot (Binance), 1-minute

Bitcoin CME Gap Fill: Do CME Gaps Always Fill? 458 Weekends Tested

Every weekend Bitcoin CME gap from December 2017 to September 2026: how often and how fast they fill, and whether trading the fill from the Sunday reopen makes money after costs, compared with the same trade on random days.

Bitcoin (BTCUSDT, Binance spot) · 1-minute data · CME weekly close and reopen · Protocol v1.0 plus the 8 Oct 2026 rules

Buried · No proven edge

The gap filled. The stop came first.

BornFrozen 21 Oct 2026 (cg_spec.md), before any gap was computed
Died21 Oct 2026

Variants tried: 3 · Passed every gate: 0 · Gaps filled by the end of the data: 96.9% · Holdout opened: yes (already used)

Short answer: they almost always fill, eventually, but trading the fill did not pay. Of 458 Bitcoin weekend CME gaps from December 2017 to September 2026, 96.9% were filled by the end of the data and 80.3% within a week; but fading gaps of 1% or more from the Sunday reopen lost -0.213 R a trade with a stop one gap away and -0.183 R with no stop.How much costs took here, compared across all 54 of our tests →

00The short answer

  • Do CME gaps always fill? Almost: 96.9% of 458 Bitcoin weekend gaps were filled by September 2026, 56.3% within 24 hours and 80.3% within a week of the Sunday reopen. Gaps of 1% or more: 96.0% eventually, but only 38.4% within a day.
  • Can you trade it? Not with these rules. Fading the gap at the reopen (target: Friday's close) lost -0.213 R a trade with a stop one gap away, -0.125 R with two gaps and -0.183 R with no stop, over 250 trades of gaps of 1% or more.
  • Why: the price often moved further from Friday's close before it came back; with a stop, the trade did worse than the same trade on random days. Buried.

01What is a CME gap?

CME Group lists Bitcoin futures in Chicago. They trade nearly around the clock from Sunday evening to Friday afternoon, with a short daily break, and stop for the weekend: the last trade is on Friday at 17:00 New York time and trading resumes on Sunday at 18:00. Bitcoin itself trades all weekend, so if it moves, the CME chart shows a jump between Friday's close and Sunday's open: the CME gap. The meaning traders give it: price tends to come back and “fill” the gap, returning to Friday's close.

We measure the gap on Binance spot Bitcoin (BTCUSDT) at exactly those times, the way most traders chart it: Friday's close is the last spot minute before 17:00 New York, Sunday's open the first minute at 18:00. The median gap was 1.14%, and 54.6% of weekends had a gap of 1% or more.

02Do CME gaps always fill?

A gap is filled when the spot price trades back to Friday's close after the Sunday reopen.

GapsWeekendsFilled within 24 hoursWithin 7 daysWithin 30 daysBy Sep 2026Median hours to fill
All gaps45856.3%80.3%89.1%96.9%16
1% or more25038.4%70.0%83.6%96.0%43
1% or more, gap up14835.1%68.9%81.1%93.2%43
1% or more, gap down10243.1%71.6%87.3%100.0%46
0%25%50%75%100%1h2h4h8h12h1d2d3d7d14d30dtime after the Sunday reopen (log spacing)all gaps (458)gaps of 1% or more (250)

Share of gaps filled within a given time after the Sunday reopen.

So the claim is close to true, and it would be close to true for almost any price level: Bitcoin moves a lot, and a level a percent or two away is usually revisited within weeks. Every gap down of 1% or more was filled by the end of the data; 6.8% of the gaps up of that size never were (Bitcoin rose and did not come back). The trading question is different: does the fill come before the price moves far enough against you to stop you out?

03The CME gap trading strategy we tested

  • Signal: at the Sunday 18:00 reopen, a gap of 1% or more. Trade toward the gap: sell if Bitcoin opened above Friday's close, buy if below, at the reopen price.
  • Target: Friday's close, the gap filled. Stop: CG-S1 one gap beyond the entry (target and stop equally far), CG-S2 two gaps, CG-NS none.
  • Time exit: next Friday at 17:00 New York, the next CME close. Results in R (the stop distance; one gap for CG-NS).
  • Costs: 0.05% of the price on every fill (the Binance perpetual taker fee, so shorts are possible), as in our other Bitcoin tests. Periods: to mid-2021, mid-2021 to 2023, and a holdout from 2024 already used by our earlier Bitcoin tests. Control: the same trades, same direction and distances, on random other days at the same time, 500 times.
  • Engine check: hand-worked weekends (including a clock-change weekend) and an independent re-implementation, using the operating system's time-zone database, that matched every gap and every trade; in its first run one expectation written in the test itself was off by a minute (the time to fill runs to the close of the filling minute) and was corrected before any result was printed (cg_selftest_result.txt).

04Results: trading the Bitcoin CME gap fill

VariantStopTradesWin rate (95% range)Gross per tradeNet per tradeNet totalProfit factorVerdict
CG-S1Stop 1x the gap beyond the entry25041.2% (35% to 47%)-0.167 R-0.213 R-53 R0.64Buried
CG-S2Stop 2x the gap25057.2% (51% to 63%)-0.102 R-0.125 R-31 R0.68Buried
CG-NSNo stop25072.4% (67% to 78%)-0.137 R-0.183 R-46 R0.78Buried
-60 R-50 R-40 R-30 R-20 R-10 R0 R20182020202220242026CG-S1CG-S2CG-NS

Cumulative net R by month.

How the trades ended

VariantGap filled (target)StoppedClosed at Friday 17:00Median hours held
CG-S140.0%56.8%3.2%11
CG-S254.4%35.2%10.4%19
CG-NS69.2%–30.8%47

By period

Variant2017 to mid-2021 (trades)Mid-2021 to 2023 (trades)Holdout* 2024 to 2026 (trades)t, first periodPF, second period
CG-S1-14.2 R (122)-18.6 R (65)-20.5 R (63)-1.310.55
CG-S2-10.9 R (122)-13.4 R (65)-6.9 R (63)-1.440.55
CG-NS-49.3 R (122)+4.0 R (65)-0.5 R (63)-1.471.10

* Already used before this test.

05Fading the gap or a random entry?

VariantTradesReal net per tradeRandom days, medianRandom, 5th to 95thPercentile (95 needed)
CG-S1250-0.213 R-0.048 R-0.144 R to +0.060 R0.2
CG-S2250-0.125 R-0.028 R-0.098 R to +0.031 R0.6
CG-NS250-0.183 R-0.174 R-0.450 R to +0.059 R47.6

The same trades placed on random days lost less than the real ones in almost every run when a stop was used: after the Sunday reopen the price tended to move further away from Friday's close before coming back, more than at random times. Without a stop the gap trade looked like a random one.

06Year by year, gap up and gap down

YearTradesCG-S1 netCG-S2 netCG-NS net
2017 (from 22 Dec)2-0.1 R-0.5 R+1.9 R
201838-2.3 R-4.1 R-18.9 R
201933-8.4 R-0.1 R+6.3 R
202029-2.8 R-2.8 R-28.5 R
202136+1.4 R-3.8 R-4.9 R
202226-8.4 R-9.2 R+6.5 R
202323-12.3 R-3.8 R-7.7 R
202426-9.4 R-5.4 R-8.7 R
202522-7.2 R-1.0 R+7.5 R
2026 (to Sep)15-3.9 R-0.5 R+0.7 R
VariantGap down, bought: trades / net RGap up, sold: trades / net R
CG-S1102 / -31.1 R148 / -22.2 R
CG-S2102 / -15.1 R148 / -16.1 R
CG-NS102 / +22.4 R148 / -68.2 R

With a stop one gap away, only 2021 ended positive. Without a stop, buying gaps down made money and selling gaps up lost it, which partly reflects Bitcoin's rise over these years.

07The gates

VariantTrades1. PF ≥ 1.2 in validation2. ≥ 50 trades in each period3. t ≥ 2.0 on development4. Above the 95th percentile of the moved-entry control5. Positive without the 10 best trades6. Holdout net positive (already used)
CG-S1250failpassfailfailfailfail
CG-S2250failpassfailfailfailfail
CG-NS250failpassfailfailfailfail

The data-gap check

VariantTradesTouching a data gap of 10+ minutesNet per tradeVerdict
CG-S12504-0.213 R → -0.202 RBuried → Buried
CG-S22507-0.125 R → -0.121 RBuried → Buried
CG-NS25011-0.183 R → -0.132 RBuried → Buried

08Verdict by variant

VariantCauseGates failedVerdict
CG-S1No proven edge1, 3, 4, 5, 6Buried
CG-S2No proven edge1, 3, 4, 5, 6Buried
CG-NSNo proven edge1, 3, 4, 5, 6Buried

No proven edge for all three: negative before and after costs. The high fill rate is real; a profitable way to trade it from the reopen was not demonstrated.

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

What the results show

  • Bitcoin CME gaps do fill, eventually: 96.9% of the 458 weekend gaps from December 2017 to September 2026 were revisited by the end of the data, 80.3% within a week. Gaps of 1% or more took longer: 38.4% within 24 hours, a median 43 hours.
  • Trading the fill from the Sunday reopen lost money with every stop rule: -0.213 R a trade with the stop one gap away, -0.125 R with two gaps, -0.183 R with no stop, over 250 trades.
  • With a stop, fading the gap did worse than the same trade on random days (percentile 0.2 and 0.6): after the reopen the price often moved further away first, and 56.8% of the one-gap stops were hit before the fill.

What remains unknown

  • The real CME futures gap. We measured it on Binance spot at the CME times; the futures chart also moves with the futures premium.
  • Holiday weeks, when CME closes earlier or reopens later. We used the regular Friday and Sunday times.
  • Entries later in the week, or only on gaps of a certain size or direction, chosen in advance. We fixed one rule, a 1% gap and three stops.

Why it was buried

"It always fills" is nearly true and not tradable. Almost any price is revisited if you wait long enough, so a high fill rate costs nothing to observe and says little about when. What a trade needs is the fill before the stop, and from the Sunday reopen the move usually ran further first: with a stop at one gap, 56.8% of trades were stopped and only 40.0% reached the fill within the week. Without a stop 72.4% of trades won, but the gaps that did not fill that week lost more than all the small fills earned.

What you can apply to your own tests

  • Ask "before what?" whenever you hear that something always happens. Fill before the stop, before the week ends, before costs.
  • Look at the losers of a high win-rate rule. Here 72% winners still lost money.
  • Compare with the same trade at random times; a pattern that does worse than random is telling you to stand aside.

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

Do CME gaps always fill?

Almost: 96.9% of 458 Bitcoin weekend gaps since December 2017 were filled by September 2026, 56.3% within 24 hours and 80.3% within 7 days. For gaps of 1% or more, 38.4% filled within a day and the median wait was 43 hours.

What is a CME gap in Bitcoin?

CME Bitcoin futures stop trading from Friday 17:00 to Sunday 18:00 New York time while Bitcoin keeps trading. If the price moves over the weekend, the futures chart shows a gap between Friday's close and Sunday's open; traders call it the CME gap and expect the price to come back to Friday's close.

Can you trade the CME gap fill?

Not with the rules we tested: selling gaps up and buying gaps down of 1% or more at the Sunday reopen, with Friday's close as the target, lost money with every stop rule and did worse than the same trades on random days when a stop was used, because the price often moved further away first.

How long does it take for a CME gap to fill?

For all Bitcoin gaps since 2017 the median was 16 hours after the Sunday reopen; for gaps of 1% or more, 43 hours, with 16.4% still open after 30 days.

How was the CME gap tested?

On Binance spot Bitcoin 1-minute data at the CME close and reopen times, 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.

09Check our arithmetic

Frozen specificationThe CME times, the gap, the fill measures, the trade, costs, periods, gates and control, dated before any gap was computed.
cg_spec.md
CodeThe engine (its readings of the rules at the top), the independent re-implementation, the self-test and the run (node cg_run.js). Needs the Binance BTCUSDT 1-minute file (public monthly archives).
cg_lib.js · cg_ref.js · cg_selftest.js · cg_run.js
Shared code it usesStatistics and control helpers.
control_audit_lib.js · gh_lib.js · hourly_lib.js · ma_lib.js · rsi2_protocol.js
ResultsSelf-test result, the console output of the run, all numbers and every weekend gap.
cg_selftest_result.txt · cg_results.txt · cg_summary.json · cg_gaps.csv · btc_gaps.json
Trade logs (CSV)Every trade: the Friday, entry and exit (UTC), direction, Friday's close, entry, exit, the gap, R in dollars, the exit reason, hours held, gross and net R.
CG-S1 · CG-S2 · CG-NS

Code provenance: our own code, written from the rules in the specification.

10Data notes

Source. Binance spot BTCUSDT 1-minute data from the exchange's public archives, each monthly file checked against its published checksum. Spot, not futures: the CME futures gap can differ from the spot gap by the change in the futures premium over the weekend. Holidays that move the CME close or reopen are not modelled. Funding on the perpetual is not included; median holding times were 11 to 47 hours.

11Corrections

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 guide comparing trend following and mean reversion across all our tests. No result changed. 22 Oct 2026, navigation: added a link to the new guide comparing versions with and without a stop loss across our tests. No result changed.

+More tests and guides