Daily Bitcoin Buying and Selling Numbers How to Track Them?

7 replies 59 views
chris.altHero Member
Posts: 458 · Reputation: 2287
#1May 15, 2026, 03:29 PM
Just to make it clear: I’m not talking about the total transaction volume. It’s pretty clear that for every Bitcoin bought, there’s one sold. But there’s a distinction between "buying" and "selling": - Buying: This means placing a buy order on an exchange, which can either be executed right away (market order) or intended for short-term execution. This is key since there are fake orders, which I’ll touch on later. - Selling: This is like placing a sell order with the same intent. Sometimes I wanna figure out how many orders of each type (Buy or Sell) are made daily. I’m trying to get a sense of the difference between these two quantities (in BTC). The challenge is that we’d need real-time order book data for a solid estimate. Unfortunately, that kind of info isn’t usually available to the public. Plus, there’s the issue of fake orders that get deleted or set far from the actual price just to manipulate emotions (think "buy walls" and "sell walls"). If those were taken down the same day, it’d be easy to spot them with access to the real-time order book, but some stick around longer. So for an estimate, I thought of this approach: - Use hourly candles from the market data of a major exchange. - For each candle, look at the volume and whether it’s green or red. - If it’s green, add that volume to "Purchases"; if it’s red, add it to "Sales". Sure, this method isn’t perfect, but it gets better with more precision.
2 Reply Quote Share
im_altSenior Member
Posts: 130 · Reputation: 817
#2May 17, 2026, 08:47 PM
One thing I still don’t understand clearly how this things works why the selling of bitcoin in large quantities affects the price, because if you look at it someone is selling and another is buying, no bitcoin is lost in the process then why is that when there is a panic sell the price often get affected if for every bitcoin sold is directly linked to a new purchase.
6 Reply Quote Share
chris.altHero Member
Posts: 458 · Reputation: 2287
#3May 17, 2026, 08:59 PM
This is the effect of market orders  (includes also de facto market orders, i.e. limit orders with a limit which already matches an existing order). Imagine the price is at 70000, and you create a market buy order for 1 BTC. There are only 0.5 BTC at 70000, and the next sell order is 0.5 BTC for 71000. So with your market order you'll buy both the 70000 order and the 71000 order. The result of you buy is that the spot price will climb from 70000 to 71000. Market sell orders have the opposite effect: the price will go down. Exactly that is what I want to achieve with this thread: to know the number of "buy" and "sell" market orders and defacto market orders.
3 Reply Quote Share
SwiftMinerSenior Member
Posts: 259 · Reputation: 1036
#4May 20, 2026, 05:54 AM
Even if you're kinda close to it, I think the biggest flaw is that green candles don't necessarily mean buying volume exceeded selling volume and red candles don't necessarily mean the opposite. Every trade has both a buyer and a seller butt price moves because one side is more aggressive. Personally I think a better method is to use taker buy vs taker sell volume if the exchange provides it since it gonna show which side initiated the trades. Another thing is candles only show executed trades not all orders placed. Many buy and sell orders can be  canceled before execution, so candle data cannot accurately measure total buy and sell orders added to the order book.
3 Reply Quote Share
chris.altHero Member
Posts: 458 · Reputation: 2287
#5May 20, 2026, 06:59 AM
That's a good idea - thank you for the correct term. I also found the metric "Cumulative Volume Delta" which seems to be exactly what I'm searching, but until now I have only found public data for the past. There is one catch though: Imagine the following situation: - Trader 1 puts a limit buy order on 70000 - Trader 2 sells via market order into that limit order. Price of last trade: $70000. - Trader 3 puts a limit buy order on 71000. There are no lower sell orders. - Trader 4 sells via market order into that limit order. Price of last trade: $71000. We have now two "taker sales" but the spot price increased $1000. I wonder how common this situation is on high-volume exchanges - it could however be quite common if we take into account that often orders are placed in a tiny distance (66,777 vs 66,776.99 for example). We can still say that there is "more interest to buy" in this case, because trader 3 created a higher limit order than trader 1. And no seller placed an order between 70000 and 71000. The "candle method" I show in the OP takes this into account, while the "Cumulative Volume Delta" and "Maker Volume" method does not. But yeah, the candle method is less precise ... Yes but that's not that important, because what I want to know is about the really executed orders (i.e. really existing "buys" and "sales"), and there are many fake orders placed all the time. In reality, to make my definitions of "buy/purchase" and "sale" more precise, perhaps we can use the following definition: - Buy / Purchase: if the price of an executed order is higher than the previous executed order (even if it was triggered by a market sell order). - Sale: if the price of an executed order is lower than the previous executed order (even if it was triggered by a market buy order).
4 Reply Quote Share
SwiftMinerSenior Member
Posts: 259 · Reputation: 1036
#6May 21, 2026, 01:31 PM
Well this should make more sense. In your example both trades are technically seller initiated yet the price actually rises because buyers are willing to bid higher. I think where there is kinda an issue is that once you define a "buy" as any trade executed at a higher price than the previous trade you're no longer measuring order flow but rather price movement. And it's  gonna work if your goal is to estimate bullish vs bearish pressure. And it's actually similar to how some volume indicators work by assigning volume to up-ticks and down-ticks. It won't tell you who initiated the trade but it does capture if the  executed volume is occurring at increasingly higher or lower prices which seems kinda closer to what you're trying to measure.
3 Reply Quote Share
alexwalletSenior Member
Posts: 347 · Reputation: 1933
#7May 21, 2026, 07:42 PM
I'm slowly trying to understand this request. If the goal is to capture real trading volume, why not capture it from trade history (per-second, for example)? As far as I know, trade history also has red and green colors to indicate taker activity. If green, takers are buying; if red, takers are selling.
0 Reply Quote Share
chris.altHero Member
Posts: 458 · Reputation: 2287
#8May 22, 2026, 12:01 AM
That's actually what I need, I think. I've not found data on that indicator though. According to Google, I should search for "net volume" or "cumulative volume delta". It seems there are indeed no public charts about that, the best source are the APIs. With AI help I wrote a python script to get the data from Bitstamp. I paste it below if someone is interested. It prints the trades in the following format: I'll later tweak it a little bit, because it currently seems to not use the uptick/downtick method but the origin of the order which "triggered" the trade (buy or sell market/limit order). Here for example we have an example for a buy order lower than the previous sell order: Here's the script: save it (e.g. gettrades.py) and use it with up to 2 arguments: 1) number of trades to display (default: 100, if you put 0 all fetched trades will be displayed) 2) currency pair (default: btcusd - respect that format so Bitstamp's API recognizes it)
0 Reply Quote Share
?Reply
Sign in to reply to this topic

Related topics