# Liquidation Heatmap from On-Chain Positions

> Liquidation heatmap for BTC and ETH from open on-chain positions: liquidation levels on Hyperliquid, Aave, Morpho and Compound, with collateral at each.

Markdown copy of https://voltfincrypto.com/apps/liquidation-heatmap

**Question:** At which BTC and ETH prices would open on-chain positions be liquidated, and how much collateral sits at each level?

- Kind: Dashboard in Voltfin Vantage
- Topic: [Markets and trading](https://voltfincrypto.com/topics/trading)
- Chains: Multi-chain, Hyperliquid, Ethereum, Arbitrum, Base
- Status: Planned. The data is not published yet, so this page states no figure; each figure will open its receipt when it is.

A liquidation heatmap shows the prices at which leveraged positions would be forced closed. When many positions share a liquidation price, a move to that level can set off a chain of forced selling or buying, so traders and risk teams watch where those clusters sit.

This heatmap is computed from open positions read from chain state at a pinned block. Hyperliquid reports each position's liquidation price; for Aave, Morpho Blue and Compound, the price at which each borrower's health would fall below the liquidation line is solved from their collateral, their debt and the market's liquidation threshold.

Read it as a map of where leverage sits right now. Positions open, close and add collateral every block, so each snapshot names its block and its levels move as soon as borrowers act.

## Blueprint

### Heatmap

Liquidation levels around the current price for the chosen asset.

- **Oracle price** (USD): The asset's oracle price at the snapshot block, the line the heatmap is centered on.
- **Long collateral below price** (USD): Collateral of long and long-like positions whose liquidation price lies within the selected range below the current price.
- **Short collateral above price** (USD): Collateral of short and short-like positions whose liquidation price lies within the selected range above the current price.
- **Largest nearby cluster** (USD): The price band within the range that holds the most collateral at risk, with its distance from the current price.
- **Liquidation heatmap** (USD): Collateral at risk by price band and venue across the selected range, with the current price marked.
- **Cumulative liquidations by price** (USD): Collateral that would be liquidated as price moves away from the current level, summed band by band in each direction.

### Positions

The positions behind the levels, by venue.

- **Positions counted** (count): Open BTC or ETH positions included in the snapshot across every covered venue.
- **Largest venue's share** (%): Share of the collateral at risk within the range that is held on its largest venue.
- **At risk by venue** (USD): Collateral at risk in the range per venue, split into longs and shorts.
- **Positions nearest liquidation**: The largest positions within the range, with venue, side, collateral, debt or size, liquidation price and distance from the current price.

Filters: Asset (BTC or ETH); Price range (Within a tenth, a quarter or half of the current price).

## How it will be measured

- Hyperliquid BTC and ETH perpetual positions come from its clearinghouse state per account, each with its size, side, margin and the liquidation price the venue reports.
- Aave v3 borrowers are enumerated from Supply, Borrow, Repay and Withdraw events; getUserAccountData() and each reserve's liquidation threshold give the price at which the health factor reaches one.
- Morpho Blue positions use each market's LLTV and oracle, and Compound v3 positions use liquidateCollateralFactor, with the same solve for the liquidation price.
- For a position with several collateral assets, the level is the BTC or ETH price that alone would trigger liquidation, holding the other prices at their oracle values at the snapshot block.
- Collateral at each level is bucketed into price bands and summed in USD at the snapshot's oracle prices; every band opens to the positions in it.

## Data it needs

- `lending_markets_daily` (to build): Supply, borrow, utilization and rates per lending market (Aave, Morpho, Spark, Compound, Euler and others) at day end.
- `perps_markets_daily` (to build): Volume, open interest, funding rates and fees per market on on-chain perpetual exchanges, per day.
- `liquidations` (to build): Every liquidation on major lending markets and perp venues: collateral seized, debt repaid, liquidator, and the price at the time.
- `native_prices_daily` (to build): Reference prices of major assets read from on-chain oracle feeds (Chainlink latestRoundData) at each day's last block, with each round's update time.
- Source: Hyperliquid core clearinghouse positions with liquidation prices for BTC and ETH perps
- Source: Aave v3 Supply, Borrow, Repay and Withdraw events to enumerate borrowers, then getUserAccountData() and per-reserve liquidation thresholds at the snapshot block
- Source: Morpho Blue market positions and LLTV per market
- Source: Compound v3 user collateral and borrow balances with liquidateCollateralFactor
- Source: The Chainlink price aggregators each protocol uses, read at the snapshot block

## Questions

### What is a liquidation heatmap?

A chart of the prices at which open leveraged positions would be liquidated, shaded by how much collateral would be closed at each price. Bright bands mark clusters where many positions share a level.

### How are liquidation levels calculated for lending positions?

A lending position can be liquidated when its health factor falls below one. Solving for the price at which risk-adjusted collateral equals debt gives the liquidation price for that position, using the market's own threshold and oracle.

### Does the heatmap include centralized exchange positions?

No. Centralized exchanges do not publish their traders' positions, so they cannot be read. The heatmap covers on-chain venues only, where every position is public state.

### Why do liquidation levels move?

Borrowers repay debt, add collateral and open or close positions, and funding and interest change balances over time. Each of those changes a position's liquidation price, so the heatmap is a snapshot of one block.

### Do liquidation clusters show where price will go?

No. A cluster shows where forced closing would happen if price reached it. Whether price gets there depends on the rest of the market, and positions can be adjusted before it does.

## Glossary

- **Liquidation price**: The price at which a leveraged position falls below its maintenance requirement and can be closed by force.
- **LLTV**: Liquidation loan-to-value: on Morpho Blue, the debt-to-collateral ratio above which a position can be liquidated.
- **Liquidation threshold**: On Aave, the share of a collateral's value that counts toward a borrower's health; it sets where liquidation starts.

## Related apps

- [ETH Liquidation Levels on DeFi Lending Markets](https://voltfincrypto.com/apps/eth-liquidation-levels)
- [Crypto Liquidations Today: Longs vs Shorts](https://voltfincrypto.com/apps/crypto-liquidations-today)
- [DeFi Liquidations Tracker: Lending and Perp DEXs](https://voltfincrypto.com/apps/defi-liquidations-tracker)
- [Hyperliquid Whale Tracker: Largest Open Positions](https://voltfincrypto.com/apps/hyperliquid-whale-tracker)
- [Aave Rates: Borrow and Supply APY by Market](https://voltfincrypto.com/apps/aave-rates)
- [Crypto Market Cap Rankings with On-Chain Supply](https://voltfincrypto.com/apps/crypto-market-cap-rankings)

Build it in Voltfin Studio: https://app.voltfincrypto.com/signup?next=%2F
