After an hourly close exceeded the prior range, did price stay outside or return inside? · By CoinNudge Research · Method reviewed 2026-09-13 · Guide updated 2026-09-13 · Historical study updated · Observation range: – · Calculation historical-evidence-1.2 · Auto-refresh about every 21600 seconds
What followed crypto upside breakouts across up to 90 days?
Current answer: As of , using CoinNudge local archive; source and scope stated in each row: Actual archive coverage at this calculation: BTCUSDT 2184 hourly bars (~91.0 days); ETHUSDT 2184 hourly bars (~91.0 days); SOLUSDT 1032 hourly bars (~43.0 days); BNBUSDT 1032 hourly bars (~43.0 days); XRPUSDT 1032 hourly bars (~43.0 days); DOGEUSDT 1032 hourly bars (~43.0 days). 127 spaced reconstructed events and 125 non-overlapping matched controls across 6 fixed spot pairs. Outcome estimates are withheld below 20 complete events. Controls match symbol and UTC hour-of-week, then minimize prior volatility, local trend and BTC-regime distance; controls whose 24h windows overlap any same-symbol event window are excluded.
Historical study updated
Subscribe to research data · Check a real sample · Get Telegram alerts
Current source-backed snapshot
This reconstructed study identifies an hourly close above the preceding 24-hour high and measures the next 24 complete hours. Event estimates are published only from 20 complete observations and include moving-block bootstrap intervals. Controls match symbol and UTC hour-of-week, then minimize prior volatility, local trend and BTC-regime distance; any control whose outcome overlaps an event window is excluded. Matching reduces known imbalance but does not establish causality or an audited alert-service win rate.
Input documentation: Binance Spot candle field documentation · CoinNudge methodology
Observation window: Requested windows and actual coverage are recorded separately
Calculation cadence: Auto-refresh about every 21600 seconds
Calculation version: historical-evidence-1.2
Download current dataset: JSON · CSV · Matching candidates (7843) Raw values retain the dataset's published precision. Free fair-use limit: 60 requests per minute per IP, shared across all Research JSON and CSV endpoints.

| Market | Event group | Sample status | Complete N | Matched controls | Pending | Gaps | Event CI seed | Difference CI seed | Median 24h % | Block-bootstrap 95% low | Block-bootstrap 95% high | Positive 24h % | Median MFE % | Median MAE % | Matched-control median % | Event minus control pp | Difference 95% low | Difference 95% high | Back inside within 24h % |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| BNBUSDT | breakout | exploratory | 15 | 15 | 0 | 0 | 3851411986 | 1082697815 | — | — | — | — | — | — | — | — | — | — | — |
| BTCUSDT | breakout | descriptive | 36 | 36 | 0 | 0 | 548566871 | 1346889252 | 0.2691 | -0.5614 | 0.7473 | 58.3333 | 0.8988 | -0.9186 | -1.3448 | 1.1012 | 0.7356 | 2.0280 | 80.5556 |
| DOGEUSDT | breakout | exploratory | 14 | 14 | 0 | 0 | 2644484913 | 4054281802 | — | — | — | — | — | — | — | — | — | — | — |
| ETHUSDT | breakout | descriptive | 32 | 32 | 0 | 0 | 653030202 | 3322252429 | 0.5140 | -0.6601 | 1.1716 | 62.5000 | 2.1032 | -1.4217 | -0.7677 | 0.8419 | 0.4584 | 2.0732 | 65.6250 |
| SOLUSDT | breakout | exploratory | 17 | 17 | 0 | 0 | 4242843646 | 1747406933 | — | — | — | — | — | — | — | — | — | — | — |
| XRPUSDT | breakout | exploratory | 13 | 11 | 0 | 0 | 1870880437 | 1088941980 | — | — | — | — | — | — | — | — | — | — | — |
Actual candle coverage
Requested history is not guaranteed coverage. Missing bars remain counted.
| Market | First UTC | Last UTC | Available bars | Expected bars | Missing bars |
|---|---|---|---|---|---|
| BTCUSDT | 2026-06-14 00:00:00 UTC | 2026-09-13 00:00:00 UTC | 2184 | 2184 | 0 |
| ETHUSDT | 2026-06-14 00:00:00 UTC | 2026-09-13 00:00:00 UTC | 2184 | 2184 | 0 |
| SOLUSDT | 2026-08-01 00:00:00 UTC | 2026-09-13 00:00:00 UTC | 1032 | 2184 | 1152 |
| BNBUSDT | 2026-08-01 00:00:00 UTC | 2026-09-13 00:00:00 UTC | 1032 | 2184 | 1152 |
| XRPUSDT | 2026-08-01 00:00:00 UTC | 2026-09-13 00:00:00 UTC | 1032 | 2184 | 1152 |
| DOGEUSDT | 2026-08-01 00:00:00 UTC | 2026-09-13 00:00:00 UTC | 1032 | 2184 | 1152 |
Observation evidence
First 30 of 252 observations. JSON and CSV contain all published evidence. CSV dataset_section distinguishes summary and observation rows.
| observation_id | symbol | group | event_time | reference_price | source | reconstructed | threshold | buy_share_pct | hour_of_week | prior_24h_return_pct | prior_24h_volatility_pct | btc_prior_24h_return_pct | outcome_window_start | outcome_window_end | outcome_status | return_24h_pct | mfe_24h_pct | mae_24h_pct | returned_inside | pair_id | matched_control_time | match_distance | calculation_version |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| BNBUSDT:1785686400 | BNBUSDT | breakout | 2026-08-02 16:00:00 UTC | 586.2400 | Binance Spot | true | 586.1500 | 57.7545 | 88 | 1.6948 | 1.2205 | 0.1620 | 2026-08-02 16:00:00 UTC | 2026-08-03 16:00:00 UTC | complete | 1.0746 | 1.2708 | -0.8887 | true | breakout-outcomes:BNBUSDT:0 | 2026-08-09 16:00:00 UTC | 0.3274 | historical-evidence-1.2 |
| BNBUSDT:1785772800 | BNBUSDT | breakout | 2026-08-03 16:00:00 UTC | 592.5400 | Binance Spot | true | 590.9900 | 61.5830 | 112 | 1.0746 | 1.1778 | 0.9282 | 2026-08-03 16:00:00 UTC | 2026-08-04 16:00:00 UTC | complete | 0.1249 | 0.3645 | -0.7662 | true | breakout-outcomes:BNBUSDT:1 | 2026-08-17 16:00:00 UTC | 0.5274 | historical-evidence-1.2 |
| BNBUSDT:1785891600 | BNBUSDT | breakout | 2026-08-05 01:00:00 UTC | 596.1100 | Binance Spot | true | 594.9600 | 70.2852 | 145 | 1.2071 | 1.3369 | 0.9880 | 2026-08-05 01:00:00 UTC | 2026-08-06 01:00:00 UTC | complete | -0.0772 | 1.5752 | -0.7247 | true | breakout-outcomes:BNBUSDT:2 | 2026-09-02 01:00:00 UTC | 1.1418 | historical-evidence-1.2 |
| BNBUSDT:1786172400 | BNBUSDT | breakout | 2026-08-08 07:00:00 UTC | 594.6800 | Binance Spot | true | 594.4000 | 62.1206 | 55 | 1.2945 | 1.0082 | 1.0924 | 2026-08-08 07:00:00 UTC | 2026-08-09 07:00:00 UTC | complete | 1.5067 | 2.9125 | -0.1581 | false | breakout-outcomes:BNBUSDT:3 | 2026-08-15 07:00:00 UTC | 0.4060 | historical-evidence-1.2 |
| BNBUSDT:1786280400 | BNBUSDT | matched-control | 2026-08-09 13:00:00 UTC | 604.3100 | Binance Spot | true | 612 | 51.2305 | 85 | 1.3909 | 1.3210 | -0.0742 | 2026-08-09 13:00:00 UTC | 2026-08-10 13:00:00 UTC | complete | -0.2763 | 1.1981 | -0.5477 | — | breakout-outcomes:BNBUSDT:10 | — | 0.5838 | historical-evidence-1.2 |
| BNBUSDT:1786291200 | BNBUSDT | matched-control | 2026-08-09 16:00:00 UTC | 608.5300 | Binance Spot | true | 611.5500 | 45.1852 | 88 | 0.5602 | 1.0455 | 0.2272 | 2026-08-09 16:00:00 UTC | 2026-08-10 16:00:00 UTC | complete | -1.2193 | 0.4256 | -1.4609 | — | breakout-outcomes:BNBUSDT:0 | — | 0.3274 | historical-evidence-1.2 |
| BNBUSDT:1786312800 | BNBUSDT | matched-control | 2026-08-09 22:00:00 UTC | 608.6300 | Binance Spot | true | 611.5500 | 50.9156 | 94 | 1.1585 | 0.9994 | 0.2769 | 2026-08-09 22:00:00 UTC | 2026-08-10 22:00:00 UTC | complete | -1.5461 | 0.4091 | -1.8583 | — | breakout-outcomes:BNBUSDT:8 | — | 0.9358 | historical-evidence-1.2 |
| BNBUSDT:1786442400 | BNBUSDT | breakout | 2026-08-11 10:00:00 UTC | 607.1900 | Binance Spot | true | 606.6600 | 50.8797 | 130 | 0.4699 | 1.2967 | -1.0270 | 2026-08-11 10:00:00 UTC | 2026-08-12 10:00:00 UTC | complete | 1.0722 | 2.2003 | -0.2816 | false | breakout-outcomes:BNBUSDT:4 | 2026-09-01 10:00:00 UTC | 0.2815 | historical-evidence-1.2 |
| BNBUSDT:1786532400 | BNBUSDT | matched-control | 2026-08-12 11:00:00 UTC | 613.9600 | Binance Spot | true | 620.5500 | 60.3808 | 155 | 0.9620 | 1.5289 | -0.1399 | 2026-08-12 11:00:00 UTC | 2026-08-13 11:00:00 UTC | complete | -0.5619 | 0.2850 | -0.8356 | — | breakout-outcomes:BNBUSDT:9 | — | 0.2306 | historical-evidence-1.2 |
| BNBUSDT:1786546800 | BNBUSDT | matched-control | 2026-08-12 15:00:00 UTC | 609.4600 | Binance Spot | true | 620.5500 | 38.9277 | 159 | 0.2995 | 1.2564 | -0.6377 | 2026-08-12 15:00:00 UTC | 2026-08-13 15:00:00 UTC | complete | 0.0689 | 0.9074 | -0.2773 | — | breakout-outcomes:BNBUSDT:5 | — | 0.9859 | historical-evidence-1.2 |
| BNBUSDT:1786586400 | BNBUSDT | matched-control | 2026-08-13 02:00:00 UTC | 611.0800 | Binance Spot | true | 620.5500 | 41.1867 | 2 | -1.2045 | 1.2896 | -0.5605 | 2026-08-13 02:00:00 UTC | 2026-08-14 02:00:00 UTC | complete | 0.0327 | 0.6399 | -0.9950 | — | breakout-outcomes:BNBUSDT:11 | — | 0.6599 | historical-evidence-1.2 |
| BNBUSDT:1786748400 | BNBUSDT | matched-control | 2026-08-14 23:00:00 UTC | 606.8000 | Binance Spot | true | 612.9000 | 46.7769 | 47 | -0.6549 | 0.8147 | -1.0123 | 2026-08-14 23:00:00 UTC | 2026-08-15 23:00:00 UTC | complete | 0.4103 | 0.9970 | -0.0428 | — | breakout-outcomes:BNBUSDT:7 | — | 4.3284 | historical-evidence-1.2 |
| BNBUSDT:1786777200 | BNBUSDT | matched-control | 2026-08-15 07:00:00 UTC | 611.8800 | Binance Spot | true | 612.3500 | 59.0365 | 55 | 0.5637 | 0.8362 | 0.2232 | 2026-08-15 07:00:00 UTC | 2026-08-16 07:00:00 UTC | complete | -1.0786 | 0.1585 | -1.2290 | — | breakout-outcomes:BNBUSDT:3 | — | 0.4060 | historical-evidence-1.2 |
| BNBUSDT:1786780800 | BNBUSDT | matched-control | 2026-08-15 08:00:00 UTC | 611.5700 | Binance Spot | true | 612.3500 | 46.8821 | 56 | 0.6749 | 0.8322 | 0.2458 | 2026-08-15 08:00:00 UTC | 2026-08-16 08:00:00 UTC | complete | -0.9713 | 0.2093 | -1.1789 | — | breakout-outcomes:BNBUSDT:12 | — | 1.4822 | historical-evidence-1.2 |
| BNBUSDT:1786982400 | BNBUSDT | matched-control | 2026-08-17 16:00:00 UTC | 607.1600 | Binance Spot | true | 608.2000 | 45.0775 | 112 | -0.0461 | 0.8674 | 1.6685 | 2026-08-17 16:00:00 UTC | 2026-08-18 16:00:00 UTC | complete | -0.6110 | 0.1383 | -1.1793 | — | breakout-outcomes:BNBUSDT:1 | — | 0.5274 | historical-evidence-1.2 |
| BNBUSDT:1787151600 | BNBUSDT | breakout | 2026-08-19 15:00:00 UTC | 608.7600 | Binance Spot | true | 605.8500 | 56.0345 | 159 | 1.0038 | 0.5688 | 1.8683 | 2026-08-19 15:00:00 UTC | 2026-08-20 15:00:00 UTC | complete | 5.4997 | 6.6102 | -0.0049 | false | breakout-outcomes:BNBUSDT:5 | 2026-08-12 15:00:00 UTC | 0.9859 | historical-evidence-1.2 |
| BNBUSDT:1787241600 | BNBUSDT | breakout | 2026-08-20 16:00:00 UTC | 652.5600 | Binance Spot | true | 649 | 62.1198 | 16 | 5.8234 | 3.1570 | 5.7135 | 2026-08-20 16:00:00 UTC | 2026-08-21 16:00:00 UTC | complete | 4.0686 | 5.1474 | -1.0175 | true | breakout-outcomes:BNBUSDT:6 | 2026-08-27 16:00:00 UTC | 2.0283 | historical-evidence-1.2 |
| BNBUSDT:1787353200 | BNBUSDT | breakout | 2026-08-21 23:00:00 UTC | 691.1800 | Binance Spot | true | 686.1500 | 59.5204 | 47 | 5.7060 | 3.3387 | 7.9585 | 2026-08-21 23:00:00 UTC | 2026-08-22 23:00:00 UTC | complete | 0.3603 | 5.0493 | -1.3571 | false | breakout-outcomes:BNBUSDT:7 | 2026-08-14 23:00:00 UTC | 4.3284 | historical-evidence-1.2 |
| BNBUSDT:1787522400 | BNBUSDT | breakout | 2026-08-23 22:00:00 UTC | 703.2800 | Binance Spot | true | 701.7900 | 61.8667 | 94 | 1.5244 | 2.3267 | 1.2715 | 2026-08-23 22:00:00 UTC | 2026-08-24 22:00:00 UTC | complete | 0.0853 | 1.9281 | -1.4703 | true | breakout-outcomes:BNBUSDT:8 | 2026-08-09 22:00:00 UTC | 0.9358 | historical-evidence-1.2 |
| BNBUSDT:1787742000 | BNBUSDT | breakout | 2026-08-26 11:00:00 UTC | 706.8000 | Binance Spot | true | 701.4300 | 60.6413 | 155 | 1.0494 | 1.7174 | -0.7341 | 2026-08-26 11:00:00 UTC | 2026-08-27 11:00:00 UTC | complete | 0.0439 | 1.2719 | -2.0798 | true | breakout-outcomes:BNBUSDT:9 | 2026-08-12 11:00:00 UTC | 0.2306 | historical-evidence-1.2 |
| BNBUSDT:1787846400 | BNBUSDT | matched-control | 2026-08-27 16:00:00 UTC | 711.3500 | Binance Spot | true | 715.7900 | 58.6740 | 16 | 2.0588 | 1.7171 | 2.9363 | 2026-08-27 16:00:00 UTC | 2026-08-28 16:00:00 UTC | complete | -2.1424 | 1.2146 | -2.1649 | — | breakout-outcomes:BNBUSDT:6 | — | 2.0283 | historical-evidence-1.2 |
| BNBUSDT:1787922000 | BNBUSDT | matched-control | 2026-08-28 13:00:00 UTC | 705.1900 | Binance Spot | true | 719.9900 | 41.2869 | 37 | -0.0666 | 1.5385 | 0.1750 | 2026-08-28 13:00:00 UTC | 2026-08-29 13:00:00 UTC | complete | -2.3894 | 0.3262 | -2.8078 | — | breakout-outcomes:BNBUSDT:14 | — | 0.8242 | historical-evidence-1.2 |
| BNBUSDT:1788094800 | BNBUSDT | breakout | 2026-08-30 13:00:00 UTC | 696.4100 | Binance Spot | true | 696.2500 | 69.1623 | 85 | 1.1724 | 0.8898 | 1.5484 | 2026-08-30 13:00:00 UTC | 2026-08-31 13:00:00 UTC | complete | -1.4517 | 1.0956 | -2.4870 | true | breakout-outcomes:BNBUSDT:10 | 2026-08-09 13:00:00 UTC | 0.5838 | historical-evidence-1.2 |
| BNBUSDT:1788242400 | BNBUSDT | matched-control | 2026-09-01 06:00:00 UTC | 693.9500 | Binance Spot | true | 694.8300 | 45.8719 | 126 | 1.0646 | 1.2895 | 1.4920 | 2026-09-01 06:00:00 UTC | 2026-09-02 06:00:00 UTC | complete | -0.6989 | 0 | -2.7884 | — | breakout-outcomes:BNBUSDT:13 | — | 1.0990 | historical-evidence-1.2 |
| BNBUSDT:1788256800 | BNBUSDT | matched-control | 2026-09-01 10:00:00 UTC | 686.0200 | Binance Spot | true | 694.8300 | 46.8061 | 130 | -0.0597 | 1.5406 | -0.7592 | 2026-09-01 10:00:00 UTC | 2026-09-02 10:00:00 UTC | complete | -0.3615 | 0.5393 | -1.6647 | — | breakout-outcomes:BNBUSDT:4 | — | 0.2815 | historical-evidence-1.2 |
| BNBUSDT:1788310800 | BNBUSDT | matched-control | 2026-09-02 01:00:00 UTC | 683.9700 | Binance Spot | true | 694.8300 | 53.1774 | 145 | -1.3429 | 1.2001 | -1.8293 | 2026-09-02 01:00:00 UTC | 2026-09-03 01:00:00 UTC | complete | 0.4869 | 0.8699 | -0.6184 | — | breakout-outcomes:BNBUSDT:2 | — | 1.1418 | historical-evidence-1.2 |
| BNBUSDT:1788400800 | BNBUSDT | breakout | 2026-09-03 02:00:00 UTC | 690.1000 | Binance Spot | true | 689.9200 | 58.7517 | 2 | 1.0825 | 1.2960 | 0.4363 | 2026-09-03 02:00:00 UTC | 2026-09-04 02:00:00 UTC | complete | 4.6660 | 5.7673 | -0.0478 | false | breakout-outcomes:BNBUSDT:11 | 2026-08-13 02:00:00 UTC | 0.6599 | historical-evidence-1.2 |
| BNBUSDT:1788595200 | BNBUSDT | breakout | 2026-09-05 08:00:00 UTC | 738.2500 | Binance Spot | true | 727.7100 | 58.5618 | 56 | 3.3240 | 2.1691 | -1.1740 | 2026-09-05 08:00:00 UTC | 2026-09-06 08:00:00 UTC | complete | 2.4883 | 5.7420 | -0.0122 | false | breakout-outcomes:BNBUSDT:12 | 2026-08-15 08:00:00 UTC | 1.4822 | historical-evidence-1.2 |
| BNBUSDT:1788847200 | BNBUSDT | breakout | 2026-09-08 06:00:00 UTC | 750.9400 | Binance Spot | true | 750.2000 | 50.9229 | 126 | 0.3206 | 2.0006 | -1.4813 | 2026-09-08 06:00:00 UTC | 2026-09-09 06:00:00 UTC | complete | 0.0919 | 1.3916 | -1.1466 | true | breakout-outcomes:BNBUSDT:13 | 2026-09-01 06:00:00 UTC | 1.0990 | historical-evidence-1.2 |
| BNBUSDT:1789131600 | BNBUSDT | breakout | 2026-09-11 13:00:00 UTC | 723.8200 | Binance Spot | true | 718.1200 | 52.9237 | 37 | 2.5735 | 1.6094 | 1.4786 | 2026-09-11 13:00:00 UTC | 2026-09-12 13:00:00 UTC | complete | 1.7200 | 2.4578 | -0.9229 | false | breakout-outcomes:BNBUSDT:14 | 2026-08-28 13:00:00 UTC | 0.8242 | historical-evidence-1.2 |
Historical reconstruction is not proof of information available then or an executed return.
How to read this page
- After an hourly close exceeded the prior range, did price stay outside or return inside?
- BTC, ETH, SOL, BNB, XRP and DOGE; up to 90 days of reconstructed hourly history.
- Read actual coverage and missing values before comparing outcomes.
- Download the evidence; distinguish historical reconstruction from locally recorded events.
What can this page tell you quickly?
- Best for
- After an hourly close exceeded the prior range, did price stay outside or return inside?
- Measured scope
- BTC, ETH, SOL, BNB, XRP and DOGE; up to 90 days of reconstructed hourly history.
- Update schedule
- Recalculated every six hours; completed-window studies exclude the ongoing UTC day.
- Do not infer
- No guaranteed trading edge, complete point-in-time history or automatic entitlement to every data family.
Does a return inside the range mean the trade lost money?
Not necessarily. The failure definition concerns one structural condition: a later hourly close revisited or crossed the original breakout level. Price might subsequently rally, or a trader might exit before that close. No entry and exit execution is simulated here.
Likewise, a positive 24-hour reference return is not a winning strategy. Fees, spread, latency, position sizing and a specified exit rule would be needed before discussing executable profitability.
How are repeated breakouts and controls handled?
The study spaces events at least 24 hours apart within each symbol and event group. A control must share the symbol and UTC hour-of-week, then is selected by distance across prior 24-hour volatility, local return and BTC 24-hour return. A control is rejected if its 24-hour outcome overlaps any event outcome window.
A selected control is still an observational comparison, not proof of a no-signal state or causal counterfactual. Pair IDs, matching inputs and match distance remain in the downloadable evidence so researchers can impose stricter gates.
What is a reliable way to read the outcome table?
First check complete, matched-control, pending and gap counts. Outcome percentages and medians are withheld below 20 complete events. Published medians include a moving-block bootstrap 95% interval, while event-minus-control estimates additionally require 20 valid pairs. Then compare return, adverse excursion and failure frequency together.
The current six-symbol basket excludes many smaller and delisted assets. Historical candles were reconstructed after the events and should not be cited as proof that CoinNudge detected those events in real time.
How can I audit and cite this measurement?
| Check | What to verify | Why it changes interpretation |
|---|---|---|
| Scope | BTC, ETH, SOL, BNB, XRP and DOGE; up to 90 days of reconstructed hourly history. | Do not generalize a named sample to the whole crypto market. |
| Formula | On six fixed Binance USDT spot pairs, require a continuous trailing 26-bar sequence. An event closes above the highest high of the preceding 24 hourly bars. Within each market and group, retain at most one observation every 24 hours. Compare the event close with the close 24 hours later; highs/lows in the intervening 24 bars supply long-reference MFE/MAE. Failed breakout means at least one future hourly close is at or below the original level. | A similarly named indicator can use a different convention. |
| Data time | Observation window versus materialization time | A fresh computation is not necessarily a fresh source observation. |
| Delivery | Public evidence versus subscribed Market Events v1 | Inspect the data catalog before assuming commercial inclusion. |
What is measured, and what is not?
| Measured claim | Evidence on this page | Boundary |
|---|---|---|
| After an hourly close exceeded the prior range, did price stay outside or return inside? | The current table and downloadable rows using breakout-outcomes. | BTC, ETH, SOL, BNB, XRP and DOGE; up to 90 days of reconstructed hourly history. |
| Results can be checked against an explicit computation. | On six fixed Binance USDT spot pairs, require a continuous trailing 26-bar sequence. An event closes above the highest high of the preceding 24 hourly bars. Within each market and group, retain at most one observation every 24 hours. Compare the event close with the close 24 hours later; highs/lows in the intervening 24 bars supply long-reference MFE/MAE. Failed breakout means at least one future hourly close is at or below the original level. | Archive availability and revisions constrain historical reproducibility. |
Method and data boundary
On six fixed Binance USDT spot pairs, require a continuous trailing 26-bar sequence. An event closes above the highest high of the preceding 24 hourly bars; retain at most one event per symbol/group every 24 hours. Outcome uses the next 24 complete hourly bars. Statistics require 20 complete events. The 95% CI is a 1,000-resample circular moving-block bootstrap of the median with block size 3, published uint32 xorshift32 seeds and linear interpolation at (999 × q). Controls match symbol and UTC hour-of-week exactly, then minimize the published equally weighted normalized L1 distance over prior 24h return/5, prior volatility/2 and BTC prior return/5. Missing components cost 10; caliper is null; controls are selected without replacement in symbol/time order. Same-symbol event-window overlaps are excluded; ties use distance, absolute time gap, then earliest control time. The JSON links the complete candidate pool and a SHA-256 digest of its ordered observation IDs.
BTC, ETH, SOL, BNB, XRP and DOGE; up to 90 days of reconstructed hourly history. Historical results are descriptive, not executed profits or guaranteed future behavior.
Sources and verification
- Binance Spot candle field documentationField definitions; statistical selection and outcome formulas are CoinNudge's own disclosed methods.
- CoinNudge methodologyShared boundaries, data time semantics and calculation contracts.
Frequently asked questions
After an hourly close exceeded the prior range, did price stay outside or return inside?
This reconstructed study identifies an hourly close above the preceding 24-hour high and measures what followed over the next 24 complete hours. It publishes signed price changes, favorable and adverse excursions, and the fraction of qualified breakouts that closed back inside the original level. Non-breakout observations provide a descriptive comparison, not a matched causal control. The model is intentionally separate from CoinNudge's live breakout alert rules, so these results are not an audited alert-service win rate.
How often do the numbers change?
A bounded background calculation runs at most every six hours. Look at the actual observation interval as well as the calculation time; missing and pending data are not filled with zero.