Provyan
Home / Methodology

Methodology

Everything on this site can be reproduced from public Binance candles and the rules on this page.

Data

Daily spot candles for 94 USDT pairs from Binance, from each pair's first trading day (2017 for the oldest). A day runs 00:00 to 24:00 UTC. Besides price and volume, each candle carries the number of trades and the volume bought with market orders, which is what the order-flow and whale-footprint signals use. Only fully closed candles are used.

Signals

A signal is confirmed at the close of the day it happens, using nothing that was not known at that moment. To keep one event from being counted several times, a signal cannot fire again on the same coin within 7 days.

SignalExact rule
Volume spike on a green dayDaily volume at least 3× its previous 30-day average, and the day closes above its open.
Volume spike on a red dayDaily volume at least 3× its previous 30-day average, and the day closes below its open.
Whale footprint: large trades, buyers in controlAverage trade size in the top 5% of the previous 180 days, with the share of volume from market buys above 50%.
Whale footprint: large trades, sellers in controlAverage trade size in the top 5% of the previous 180 days, with the share of volume from market buys below 50%.
Extreme buy pressureShare of volume from market buys in the top 3% of the previous 180 days.
Extreme sell pressureShare of volume from market buys in the bottom 3% of the previous 180 days.
10% drop in a dayDaily close at least 10% below the previous close.
10% jump in a dayDaily close at least 10% above the previous close.
20% drop in a weekClose at least 20% below the close seven days earlier.
Capitulation: heavy drop on heavy volumeDaily close at least 7% below the previous close on volume at least 2.5× the previous 30-day average.
RSI drops below 3014-day RSI closes below 30 after being at or above it the day before.
RSI rises above 7014-day RSI closes above 70 after being at or below it the day before.
Golden cross50-day moving average closes above the 200-day moving average after being below it.
Death cross50-day moving average closes below the 200-day moving average after being above it.
Breakout to a 90-day highClose above the highest high of the previous 90 days.
Breakdown to a 90-day lowClose below the lowest low of the previous 90 days.
Five red days in a rowFifth consecutive daily close below the open.
Five green days in a rowFifth consecutive daily close above the open.
Volatility squeeze20-day Bollinger Band width at its narrowest of the previous 120 days.
5% drop in a dayClose at least 5% below the close one day earlier.
7% drop in a dayClose at least 7% below the close one day earlier.
15% drop in a dayClose at least 15% below the close one day earlier.
10% drop in 3 daysClose at least 10% below the close 3 days earlier.
15% drop in 3 daysClose at least 15% below the close 3 days earlier.
20% drop in 3 daysClose at least 20% below the close 3 days earlier.
15% drop in 7 daysClose at least 15% below the close 7 days earlier.
30% drop in 7 daysClose at least 30% below the close 7 days earlier.
30% drop in 30 daysClose at least 30% below the close 30 days earlier.
40% drop in 30 daysClose at least 40% below the close 30 days earlier.
50% drop in 30 daysClose at least 50% below the close 30 days earlier.
5% rise in a dayClose at least 5% above the close one day earlier.
7% rise in a dayClose at least 7% above the close one day earlier.
15% rise in a dayClose at least 15% above the close one day earlier.
10% rise in 3 daysClose at least 10% above the close 3 days earlier.
20% rise in 3 daysClose at least 20% above the close 3 days earlier.
20% rise in 7 daysClose at least 20% above the close 7 days earlier.
30% rise in 7 daysClose at least 30% above the close 7 days earlier.
50% rise in 7 daysClose at least 50% above the close 7 days earlier.
50% rise in 30 daysClose at least 50% above the close 30 days earlier.
100% rise in 30 daysClose at least 100% above the close 30 days earlier.
Bitcoin drops 5% in a dayBitcoin's daily close is at least 5% below its previous close. The outcome is measured on this coin, from its own close that day.
Bitcoin drops 10% in a dayBitcoin's daily close is at least 10% below its previous close. The outcome is measured on this coin, from its own close that day.
Bitcoin jumps 5% in a dayBitcoin's daily close is at least 5% above its previous close. The outcome is measured on this coin, from its own close that day.
Bitcoin jumps 10% in a dayBitcoin's daily close is at least 10% above its previous close. The outcome is measured on this coin, from its own close that day.

Drops, rallies and Bitcoin reactions use the same method with a simpler trigger: a price change of a given size over a given number of days, or a large daily move in Bitcoin measured on another coin. They are studied on the same footing as the signals and are sealed in the ledger in the same way.

What is measured

For each occurrence, the percentage change from that day's close to the close 1, 3, 7, 14, 30 days later. The headline figures use 7 days.

The road, not just the destination. For every holding period we also record the lowest low and the highest high before the exit, so each page shows the typical dip a holder sat through, how often it went past 10%, and the best point reached, next to the same figures for an ordinary day.

Costs. Each study is also shown after a 0.3% round trip: a 0.1% spot fee on entry and on exit, plus 0.05% slippage each way, which is realistic for these pairs at retail size. Funding costs of leveraged positions are not included.

Ordinary day (baseline). The same forward return computed from every day in the coin's history. A signal is judged by the gap between its median and this baseline median, not by its raw return, because a coin that mostly rose will show positive returns after almost anything.

By luck, one study at a time. We draw the same number of days at random from the coin's history, 10,000 times, and count how often the random draw's median is at least as far from the baseline as the signal's.

By luck, allowing for every study. Run 3,572 studies and some will look good by chance alone. So the single-study figures are corrected together with the Benjamini-Hochberg procedure, separately for each holding period, and the corrected figure is the one shown in every “by luck” column and used in the proof score. It reads as the share of findings at that level you should expect to be flukes. Both figures are in the open data.

Held over time. Occurrences are split by date into the earlier 60% and the later 40%. If the gap points in opposite directions in the two parts, the signal is marked as flipped.

Proof score

A 0 to 100 summary, only given when there are at least 10 scored cases:

70 and above reads “strong evidence”, 55 to 69 “some evidence”, 35 to 54 “weak evidence”, and below 35 “no better than chance”. The score measures how solid the historical evidence is. It is not a probability of profit: a score of 90 does not mean 90% of trades win.

Seasonality and drawdowns

Monthly returns run from the open of a month's first daily candle to the close of its last, and only full months count. Each month is compared with the coin's own share of rising months using an exact binomial test: how often a record at least that lopsided would appear if the month were no different from the others. With ten or fewer years per month, most apparent patterns do not pass.

Drawdowns are measured between record daily closes: an episode begins at a record, its depth is the lowest close before the next record, and its recovery time is the number of days until that next record.

What this cannot tell you

The live ledger

From 15 Nov 2026, every detected signal is sealed, revealed and graded in public. The rules are on the ledger page.

This is statistical information about the past. It is not financial advice.

62 signals sealed at the last closeSee them