How to Use the Liquidation Indicator

Read the indicator's sign and distribution, avoid two common misreads, and put it into a strategy.

Last updated 2026-10
Key Takeaways
  • The Liquidation Indicator is a Blave proprietary indicator of whether short or long liquidations dominate over a period, and how unusual the gap is. Positive means more short liquidations, negative more long liquidations, and 0 is not the coin's usual level.
  • 0 is not the coin's usual level: from 2024-09-15 to 2026-09-14 on 1-hour bars with a 24h timeframe, the value was above 0 for 48.8% of the time on BTC, 43.1% on ETH, 37.6% on SOL and 31.1% on DOGE.
  • The lower tail runs deeper than the upper one (BTC 1h × 24h: p1 −3.76, p99 +3.31), so do not apply thresholds symmetrically, and do not use the general ±2 / ±3 grading.
  • Raw liquidation data is sampled and undercounts big moves. No official strategy uses liquidation data today, so every use in this guide is a sketch, not backtested.

After a sharp drop, Liquidation History shows a very deep negative bar. Were lots of longs force-closed, or does this coin's value often run negative anyway? 0 is not the coin's usual level, and this point decides how you read that bar. If you are looking at liquidations by price level, that is a different estimate; see the Liquidation Map guide.

What is the liquidation indicator?

The Liquidation Indicator is a Blave proprietary indicator of whether shorts or longs were force-closed more over a period, and how unusual the gap is. A liquidation is an exchange force-closing a leveraged position: when a long is liquidated the exchange sends a sell order, and when a short is liquidated it sends a buy order.

Positive means more short liquidations, negative more long liquidations, and 0 is not the coin's usual level. The value has no upper or lower bound:

ValueMeaning
> 0More short than long liquidations within the timeframe
< 0More longs than shorts were liquidated
≈ 0The two sides cancel out, no liquidations were recorded, or data was interrupted; not the coin's usual level

The distribution is lopsided: the lower tail (long liquidations) runs deeper than the upper one. These are Blave's measured quantiles on 1-hour bars with timeframe 24h, from 2024-09-15 to 2026-09-14, one value per hour (n = 17,520):

Coinp1p50p99Share of time above 0
BTC−3.76−0.01+3.3148.8%
ETH−4.07−0.08+2.7943.1%
SOL−4.01−0.17+2.8737.6%
DOGE−4.07−0.23+2.9731.1%

The two critical points

0 is not the coin's usual level

Above 0 means more short than long liquidations; below 0 means more long than short. But a coin that has long seen more long liquidations sits systematically negative, so 0 is not this coin's "usual level".

The table above gives the share of time above 0 over that measurement period (1h bars, 24h timeframe). The same 0 sits near BTC's median, but for DOGE it already leans further toward short liquidations than most of the time.

Raw data is sampled and undercounts big moves

Public exchange liquidation feeds have a push limit, so not every liquidation in the same moment gets sent. That makes this a sample, and the more violent the move, the more it undercounts. While data is interrupted, the value looks as if nothing was liquidated, with no missing-data flag.

So do not read the depth of a single bar as an exact liquidation size; look at which end of the coin's own distribution it falls in.

Ask two questions before reading the value. Does this coin's value usually run positive or negative? Was the market moving violently at the time, so the data may be undercounted? Both answers change what the same number means.

How do you build strategies with liquidation data?

No official strategy uses liquidation data today, so all three uses below are sketches, not backtested. The thresholds in the code borrow the quantiles measured above as a starting point; they did not come from a parameter scan. For how to scan, see How to scan thresholds.

1. Asymmetric thresholds: flag concentrated liquidations

The most direct approach flags the periods when the value lands in either tail. Because the lower tail runs deeper, do not use the same absolute value for both sides. For BTC, p1 is about −3.8 and p99 about +3.3.

LONG_FLUSH_TH  = -3.8   # sketch: about BTC's p1 at 1h × 24h
SHORT_FLUSH_TH = 3.3    # sketch: about BTC's p99 at 1h × 24h

liq = fetch_liquidation(SYMBOL, INTERVAL, START, END, hdrs, timeframe='24h')
df['LIQ'] = liq['alpha']
long_flush  = df['LIQ'] <= LONG_FLUSH_TH    # concentrated long liquidations
short_flush = df['LIQ'] >= SHORT_FLUSH_TH   # concentrated short liquidations

How to trade the flags is your research: Blave has not verified whether price reverses or continues after concentrated liquidations. Quantiles also differ by coin. ETH, SOL and DOGE all have a deeper p1 than BTC, so recompute when you switch coins.

2. Use the coin's own quantiles as thresholds, not 0

Since 0 is not a balance point, a rule like "above 0 means shorts are getting liquidated" breaks down on coins like DOGE that lean negative for long stretches. Use the coin's own quantiles over a past window instead, which is less affected by that long-run lean:

# sketch: quantiles over the past 180 days; window length not scanned
lo = df['LIQ'].rolling('180D').quantile(0.01)
hi = df['LIQ'].rolling('180D').quantile(0.99)
extreme = (df['LIQ'] <= lo) | (df['LIQ'] >= hi)

With too short a window, the thresholds drift with recent conditions. Also keep the window out of the stretch right after the coin's data starts (around 2023-01 for BTC and ETH): values there are not yet stable and produce false extremes.

3. Risk control: hold off on new positions during concentrated liquidations

A more conservative use adds it to an existing strategy's entry rule: skip new positions while the value sits in either tail. It reuses the two thresholds from use 1. Replace compute_entry with your strategy's own entry condition:

# sketch: no entry while the value sits in either tail
flush = (df['LIQ'] <= LONG_FLUSH_TH) | (df['LIQ'] >= SHORT_FLUSH_TH)
entry = compute_entry(df) & ~flush

This combination is not backtested, and Blave has not verified that avoiding concentrated liquidations improves performance. It only treats "a wave just got liquidated" as a reason to pause new entries.

How do you choose the timeframe and bar interval?

The Liquidation Indicator has two settings. The timeframe is how long a stretch of liquidations it looks at: 15min, 1h, 4h, 8h, 24h or 3d, defaulting to 24h. The period sets how often a value is taken: 5min, 15min, 1h, 4h, 8h or 1d. Changing the timeframe changes the distribution; here is the same period measured with timeframe 1h (1-hour bars):

Coinp1p50p99Share of time above 0
BTC−2.620.00+2.1252.5%
ETH−2.840.00+2.1748.8%
SOL−3.070.00+2.2145.5%
DOGE−3.500.00+2.0940.3%

Compared with 24h, 1h has narrower tails, a median of 0.00 for every coin, and a share above 0 closer to half. So recompute thresholds whenever you change the timeframe; one set of numbers does not carry over. 15min, 4h, 8h and 3d were not measured here.

How should you scan thresholds?

Quantiles are only a starting point. List a row of candidate thresholds for the long side and the short side (for example p1, p2, p5 against p99, p98, p95), backtest each pair, and pick an area where results are all decent, not the single best cell.

results = []
for q_lo in [0.01, 0.02, 0.05]:
    for q_hi in [0.95, 0.98, 0.99]:
        lo = df['LIQ'].rolling('180D').quantile(q_lo)
        hi = df['LIQ'].rolling('180D').quantile(q_hi)
        extreme = (df['LIQ'] <= lo) | (df['LIQ'] >= hi)
        entry = compute_entry(df) & ~extreme
        results.append((q_lo, q_hi, backtest(entry)))   # replace backtest with your own backtest function; compare each pair after fees

Rescan whenever you change the timeframe, coin or bar interval. For why to pick a flat area instead of the peak, see Avoiding Overfitting.

Where do you read it in Data Studio?

PageWhat it showsAccess
Liquidation OverviewA dropdown switches between the short-liquidation and long-liquidation rankings, top 30 each. Tile size is the absolute value, not a liquidation amount; color is the price change over the timeframe.Log in
Liquidation HistoryBars of one coin's liquidation indicator over price, with timeframe and bar interval options and the stat fields.Last 7 days delayed for non-Pro

Which indicators pair well with it?

These are ideas for combinations, not verified conclusions:

PairUse
Liquidation + Whale HunterUse Whale Hunter to spot unusual open-interest moves, then check which tail the liquidation indicator sat in over the same period to see whether the move came with concentrated liquidations.
Liquidation + Taker IntensityThe Liquidation Indicator only sees the side that was force-closed; use Taker Intensity to see how aggressively traders were buying and selling over the same stretch, adding the voluntary half.

What should you know when pulling it via API or Blave Agent?

The Liquidation Indicator endpoint is GET /liquidation/get_alpha with symbol, period, timeframe (default 24h) and start/end dates (start_date, end_date); in Blave Agent the helper is fetch_liquidation. Only closed bars are returned, with timestamp, alpha and stat, and ranges longer than 1 year are truncated. The earliest coins (BTC, ETH) have data from 2023-01-01, with values of 0 before that; other coins may start later. Values right after data starts are not yet stable, so do not set thresholds from them.

The stat object from get_alpha describes the latest value:

FieldMeaning
up_probThe model's estimated probability of a rise 24 hours later. It is an estimate, not a guaranteed win rate.
avg_up_return /
avg_down_return
The average gain when the price was up 24 hours later, and the average loss when it was down, regardless of the Liquidation Indicator level.
exp_valueup_prob × avg_up_return + (1 − up_prob) × avg_down_return, as a decimal, not a percentage.
is_data_sufficientWhether there is enough history; when false, treat these numbers as reference only.

For the Liquidation Map, Map Change and By Exchange endpoints and fields, see How to Read the Liquidation Map.

Remember: the Liquidation Indicator is reference data, not a trading signal. Raw data is sampled, 0 is not the coin's usual level, and stat is an estimate, not a win rate. Validate any threshold with your own backtest.