What Rally Radar can and cannot do

Rally Radar has not demonstrated a profitable trading strategy. It does appear to concentrate short-horizon movers better than random selection, and about half of that advantage remains after controlling for volatility, momentum and liquidity in the exploratory data. The first pre-registered matched holdout kept a positive estimate, but its interval spanned zero, so it could not settle the question. That makes the score useful as a candidate-ranking tool, and not evidence for mechanically trading it.

What that means in practice
  • Use it to cut 200+ pairs down to the handful worth putting on a chart, and to see which signals fired and why.
  • Do not use it to enter or size a position mechanically. The out-of-sample test of exactly that came back NOT VALIDATED, and section 1 below is why.

The strongest number here: of 1,327 signals at a net score of 85 or above, 18.5% went on to reach +10% within 24 hours, against 8.4% of random entries — and flagged coins still came out ahead of unflagged coins picked to look almost identical at the same hour — though the one pre-registered test of that was too small to confirm it. The weakest: traded mechanically with fees and slippage deducted, none of that turned into a positive expectancy anyone could rely on. Both are worked through below, with the method that produced them.

We publish this because the alternative — a large green win rate with no baseline next to it — is what every scanner shows, and it is not evidence. These figures come from two analysis scripts in the codebase, and the site's test suite fails if the numbers on this page drift from what those scripts last produced.

"Does it work?" is two questions

They get mixed together constantly, and they have different answers:

  1. Is it tradeable? If you bought every signal mechanically and exited at a fixed target or stop, would you come out ahead after fees and slippage?
  2. Does it find movers? Do the coins it flags go on to move more than the coins it did not flag?

The first decides whether the score is worth trading. The answer is no. The second decides whether the tool is worth opening. The answer is a qualified yes, and the qualification is most of the story.

1. Is the score tradeable? No.

Out-of-sample verdict — tradeability NOT VALIDATED

Not one configuration of the score made money on the training period, so there was nothing left for the later, unseen period to confirm.

The method is the ordinary one, and what matters is the order it happened in. A grid of configurations — score threshold, profit target, stop, time limit — was scored on an earlier training period. The single best training performer was then run once on later data that the selection had never seen. Choosing after seeing the later data is how almost every published backtest flatters itself, so the choice was locked first.

Every test uses 315 Binance USDC pairs on hourly candles. Each signal is a barrier trade: from the signal bar, does price reach the profit target or the stop first, within the time limit? Costs of 0.30% per round trip are deducted from every trade — 0.20% in fees, 0.10% in slippage. The configuration that won the training period was a net score of 85 or above, a +10% target, a −5% stop and a 48-hour limit.

The training period is where this really ends. Of the 75 configurations that had enough trades to evaluate, 0 had positive expectancy. The best of them lost −0.117% per trade. Taking the highest expectancy from a set of losers selects the least-bad loser, not an edge — so the out-of-sample run that followed had no hypothesis to confirm.

SampleTradesEntry daysExpectancy per trade95% interval
Training period (in-sample)69470−0.117%−0.774% to +0.448%
Test period (out-of-sample)52251+1.605%−0.140% to +3.500%
Random entry, same window6,62144+0.508%−0.539% to +1.746%

The test period does show +1.605% per trade, and it is tempting to stop reading there. Two things stop us. Its 95% interval runs from −0.140% to +3.500% — it includes zero, so the result is consistent with the score being worth nothing. And entering at random over the same weeks returned +0.508%: much of what the signals earned, an arbitrary coin also earned, because the market was rising.

Those intervals are wider than the ones a backtest usually reports, deliberately. They are computed by resampling whole entry days rather than individual trades. Hundreds of altcoins moving together on one afternoon is a single event, not hundreds of independent confirmations, and an interval that pretends otherwise looks far more convincing than the evidence deserves. Across the test period, 522 trades happened on just 51 days, and the random-entry comparison's 6,621 trades on 44.

2. Does it find movers? Partly — and about half of it is explained.

This section is exploratory. Except for the pre-registered holdout at the end, it is measured on the same data that generated the hypothesis, so it can suggest an effect but cannot confirm one.

Finding movers is a different and easier claim than trading them. Here the outcome is a touch: within the next 24 hours, does the price reach +10% above where it was when the signal fired? Of 1,327 separate signal episodes at a net score of 85 or above, 18.5% reached that target, against 8.4% for random entries. Better than double.

That raw gap is not the finding, because the score's own ingredients are volatility, momentum, volume and distance to a breakout. A tool built from those will naturally pick volatile coins on busy days, and volatile coins reach any target more often. If that is the whole story, the model is an expensive volatility filter. So each flagged coin was compared against unflagged coins priced in the same hour whose volatility, 24-hour momentum and liquidity ranked within a narrow band of its own — as close to the same coin on the same day as the data allows. Every row below is measured on the stretch running up to the 2026-07-17 cutoff described in the next section.

What is held equalEpisodesAdvantage over the comparison
Nothing — raw gap911+8.8 pp
Same day911+8.1 pp [+5.1, +11.5]
+ volatility911+6.5 pp [+4.0, +9.3]
+ momentum909+4.5 pp [+2.0, +7.4]
+ liquidity778+5.2 pp [+2.1, +8.7]

So a meaningful part of the apparent skill is the radar firing on days when everything was running, and on the kind of coin that moves anyway — but not all of it. Holding volatility, momentum and liquidity equal still leaves between +4.5 and +5.2 percentage points, on intervals that stay above zero. That is the closest thing to a positive result this project has.

The last row is not simply the row above it plus one more control. Adding liquidity leaves 133 of the 911 episodes with no comparable unflagged coin at all, so it is averaged over a smaller and easier set — which is why it sits slightly higher, and why it should not be read as liquidity handing part of the effect back. The +4.5 pp row, on almost every episode, is the more conservative reading.

To check it was not an artifact of designing the comparison after seeing the answer, one cell was pre-registered — the matched comparison above, at +10% within 24 hours — with the cutoff date 2026-07-17 written into a design document before it was run, and the code refuses to compute any other. On that held-out stretch: 411 episodes over 34 entry days, 319 of them with a comparable unflagged twin, giving +2.5 percentage points with an interval of −2.0 to +6.9.

That interval spans zero, so the holdout is inconclusive. It is worth being precise about what that means: 34 days is not enough resolution to separate a few percentage points from noise. It is not a finding that the flagged coins and their twins performed alike. The honest summary is that the effect survived the first serious attempt to explain it away, and the confirming test was too small to settle it.

3. Is it still finding movers? A live forward scoreboard.

Everything above was measured once, on a fixed stretch of history. This section is different: it is measured continuously, on what the scanner actually showed, after the fact. Each hour, the ten highest-scoring flagged pairs on the list are recorded as that hour's picks (a pair is counted once per 24 hours). Twenty-five hours later, each pick is checked: did its price trade at least +10% above the price at the time of the scan, within the 24 full hourly candles that followed? The candle the scan fell in is excluded, so nothing the scan could not have seen is credited.

Two comparisons sit beside that figure, because a hit rate on its own is not evidence. Any coin, same hours is the share of every pair on the exchange that reached the same target over the same hours — what picking at random would have done. vs. look-alike coins holds each pick against unflagged pairs that looked almost identical that hour on volatility, momentum and liquidity, using the same matching rule as section 2; the number is the percentage-point gap, with an interval that resamples whole days rather than individual picks.

WeekHours gradedPicksPicks reaching +10% in 24hAny coin, same hoursvs. look-alike coins
Loading…

This is monitoring, not a holdout. It is not a pre-registered test and it does not replace the one scheduled below; it exists so that the claim in section 2 is checked every week against new data instead of once. Weeks with fewer than two matched picks show no gap, and a week graded on a single day shows an interval that collapses onto its estimate, which is one day's worth of evidence and no more. Hours missing from a week mean the scanner was not running or the candle data had a hole; they are left out rather than filled in. Nothing here is a profitability claim: a touch means the price got there at some point, with no stop, no exit and no costs.

4. Would a model do better? A shadow ranker, graded the same way.

In October 2026 we trained one gradient-boosted classifier on six years of Binance history to predict the same target, with the features, the splits and the win rule committed before training and the 2026 holdout read once. On that holdout it beat the hand score: its top ten reached +10% in 12.5% of cases against 10.8%, a paired difference of +1.6 pp with a day-clustered interval of [+1.3, +2.0]. But the win was mostly volatility selection. One input, average true range as a share of price, carried 65.7% of the model's gain, and against look-alike coins matched on volatility, momentum and liquidity the model added less than the hand score did: +1.7 pp against +2.5 pp. It found more movers, not better reasons.

So the model does not rank the site. Instead it runs in the shadow: every scan scores it, each hour its ten highest probabilities are recorded as a second set of picks, and twenty-five hours later both sets are graded by the rules of section 3, over the same hours, with the same candidates, each with its own 24-hour cooldown. The headline is the look-alike column, not the hit rate, because the look-alike row is the one the holdout said the model loses.

The rule, fixed before the first graded hour: after at least 30 distinct entry days with both arms graded, the model earns a place on the site only if its look-alike gap is at least the hand score's and the interval on the paired difference lies entirely above zero. Anything else retires it, and this section will say so.

WeekHoursPicks reaching +10% in 24h
hand · model
vs. look-alike coins
hand, then model
Paired difference
model minus hand, per hour
Loading…

What these numbers do not say

So what is it good for?

Narrowing the field. There are more than 200 USDC pairs on Binance, and a person checking them by hand gets through a fraction of that before the setups have moved on. The evidence says a high score is a reasonable reason to look at a chart, and no reason at all to place an order without one. Treat the ranking as a shortlist, not as a recommendation — the score cannot see the news, the unlock schedule, or your exit plan.

Why publish a negative result?

Because the alternative was a large green number. The scanner tracks how its own signals resolve, and the "hit rate" that comes out of that is genuinely flattering — it is also the statistic that produced the inverted weighting mentioned above. A high hit rate with a worse-than-random payoff is not an edge, and any tool can show you one. The live counters on the scanner page are there because watching signals resolve is interesting, not because they are evidence, and they are labelled that way.

How we report

These are the rules everything published on this site follows. They are here so that the next number we publish can be judged before you read it, not after — and because a rule stated in public is harder to quietly drop than one held privately.

The next holdout run is scheduled rather than continuous, and that is deliberate. Re-running a test every time fresh data arrives means asking the same question until an answer finally flatters you, which is how a coin flip becomes a strategy. So it runs once more when the held-out stretch reaches roughly three times its current length — around November 2026 — and this page changes with whatever comes back, including if it comes back worse.

See what is ranking right now

Rally Radar scans 200+ Binance pairs every 15 minutes and shows the net score, the stage and the individual signals behind each one. No signup, no paywall.

Open the scanner →

If you want the mechanics rather than the measurement, how a scanner's score is put together breaks down the points and penalties, and screening 200+ pairs without checking charts manually covers the workflow this is meant to fit into.

← Back to the scanner

⚠ Not financial advice. This page is for educational and informational purposes only and does not constitute a recommendation to buy or sell any asset. Crypto markets are highly volatile and you may lose some or all of your capital. Always do your own research.