Whale SOPR: tracking profits and losses of Bitcoin whales

What is SOPR?

In this article a new version of SOPR (Spent Output Profit Ratio) will be introduced. SOPR is a useful and simple measure of how many profits compared to losses transacted bitcoins are making.

There are many versions of SOPR


— Long Term Holder SOPR (or simply HODLer SOPR)

— Short Term Holder SOPR

— Entity adjusted SOPR

— aSOPR (SOPR ignoring outputs with a lifespan <1hour)

But there is no whale SOPR.

To understand how there could be so many different versions of SOPR we need to first understand how it is calculated.

When you send a bitcoin transaction, you are spending bitcoins that belong to your wallet. More precisely you are spending UTXOs that belong to your wallet that your wallet had previously gotten. These “spendings” are shown in the picture below (on the left) where each “spending” or “input” is the blockchain’s way of showing which UTXOs are being spent.

Since we also know when a given wallet received its bitcoins (UTXOs) we can find out what was the original acquisition price of bitcoins that are being spent in a given transaction, i.e. we can find out the original price of the UTXO that the input is spending.

source: https://btc2.trezor.io/blocks

This is super powerful and allows us to find out how much profit or loss market participants are realising when they send their hard saved bitcoins over the blockchain.

There are many different ways how you can then group this profit/loss information. SOPR is one of them:

Here, the sum is taken over all inputs in a given block and the original price is the original price of every UTXO that each input is spending.

A bit of a mouth full but that is how SOPR is found precisely.

In simple terms, SOPR finds the ratio of current price to the original price of the bitcoins being sent were originally acquired for.

— When SOPR =1, original prices = current price and hence bitcoins being sent are not making any profit or any loss.

— When SOPR < 1, bitcoins being sent are on average making a loss because current price < original price.

— When SOPR >1, bitcoins being sent are on average making a profit.

However, in this example, ALL transacted bitcoins are taken into account.

What if we wanted to find out if WHALES are making a profit or a loss when they transact their bitcoins

Introducing Whale SOPR

Whale SOPR finds if whales (wallets>1,000BTC) are profiting or losing value on the bitcoins that they are sending.

Comparing whale SOPR with a 0 day, 3 day, 7 day, 14 day, 30 day moving average. Data by whalemap.io

Above is a GIF showing whale SOPR with different period moving averages applied to it. As can be noticed whale SOPR is quite noisy without a moving average and is hence more sensitive to changes in price.

As a general observation, when there are more losses than profits being moved on the blockchain it is a good buying opportunity.

Comparing Normal SOPR to Whale SOPR

Comparing normal SOPR to whale SOPR with a 30 day moving average applied to both SOPRs. Data by whalemap.io

Again, looking at the picture above we can see that whale SOPR, which is shown in red, fluctuates with a larger amplitude than the conventional SOPR. Whale SOPR also takes values of less than 1 more frequently.

This enables whale SOPR to be a metric that provides trading signals more frequently than its conventional brother.

For example, taking the last 7 months, whale SOPR was able to catch bottoms in price more frequently even including BTC temporary bottoms on its way up. On the other hand, normal SOPR has given buy signals only once during this entire move up.

SOPR <1 is marked in red. Normal SOPR (30 day moving average) on the left. Whale SOPR (30 day moving average) on the right. Data by whalemap.io

Hourly versions of both SOPRs with a 3 hour moving average give similar results

SOPR <1 is marked in red. Normal SOPR (3 hour moving average) on the left. Whale SOPR (3 hour moving average) on the right. Data by whalemap.io

And this is what these same hourly SOPRs look like side by side.

Data by whalemap.io


By going into detail about how Bitcoin’s blockchain transactions work, a DIY guide on how to calculate SOPR was provided. Since conventional SOPR provides profit/losses information for all transactions, without grouping the transactions by the market participant type (HODLer, Whale), a new version of SOPR that only accounts for whale transactions was introduced. This new version of SOPR allows one to find out the ratio of current price to the original buying price of BTC that is being transacted by whales.

This new metric is now live at whalemap.io!



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store


Exploring blockchains through data science to find actionable insight