Another way (more abstract) to show BTC is indeed a power law in time

Giovanni Santostasi
4 min readJan 13, 2024

--

Logs of changes in price vs logs of change of in scale of time. Even if the single points are seemingly random their mean follows on a power law pattern (a straight line in a log-log graph), the slope of the pattern is n=6.1 that is similar to the one we get by fitting the log10 of price vs the log10 of time.

This graph is more technical and few people will understand it but it is another confirmation BTC behaves like a power law in time.

In other words, when BTC price changes it does so in a way that it scales up with a similar scale of time. A subsequent change of a factor of 10 in price requires a scaling up of 10 in time. This is something that is typical of scale-invariant systems that are ubiquitous in nature and technology. Networks are supposed to behave in a power law fashion and BTC is indeed a network and behaves mathematically like one. Price is the most direct and fundamental parameter for BTC given it is what attracts resources and agents to interact with it.

What I have done here is to look for all the changes or ratios in prices at different scales. This is related to the log-log plot of price and time but it is a better way of demonstrating scaling invariant properties.

So I run a Matlab code and I look at different scales of times. For example, the largest scale is from where we started to have data to today. So today we have 5514 days from the Genesis Block and the first data available is 590 days. So roughly the ratio between these 2 quantities is 10.

The log of this ratio is then our first x value. So then we ask how big was the change in price over this interval of time. The log of this change in price is our y value.

Do this for smaller and smaller scales like 5 times, 2 times, 1.5 times, and so on, and collect all the prices with differences in times given by these scales. As your intervals become smaller you will get more and more data points per scale (because you can divide the entire history into more intervals) and they will be distributed around a mean that represents the mean change in scale for the price at that scale.

Here is a breakdown of what I’m describing.

The first data I collected is 590 days since the Genesis Block (GB). The last day, today, is 5517 days. If you take the ratio between these 2 quantities you have rT1=9.35, the log10( r1) =0.97, let’s call it time scale sT1=0.97. The equivalent scale of price here is how much the price has changed over this period. The price at 590 days was $0.0495. Today is $45,067. This is a ratio rP1=91,025 (wow). If we take the log10 of this quantity we have sP1=5.95. Now let’s call n1 the ratio between sP1 and sT1, n1=sP1/sT1=6.111.

Note: the days used overlap in this example (that I used for simplicity) but the real construction shifts the ratios over alternate intervals a few days apart to avoid overlap.

Now divide the entire interval into 3 equal sections, let’s look at the price at 590 days after GB, 1804 days after GB, and 5517 days after GB. The ratio between these days is about rT2=3.057. The scale of time sT2=log10(rT2) =0.485. What is the scale of price then of these 3 intervals? We have prices for these 3 days of $0.0495, $202.02, and $45,067. If we take the ratio of these prices we have 4,073 and 208.92. Quite different numbers. But let’s calculate the average of the log10 of the 2 numbers two numbers log10(4,073)=3.61 and log10(208.92)=2.32. The mean scale of price then sP2=(3.61+2.32)/2=2.96. Then the n2=sP2/sT2=6.11. This is crazy, it is the same number! Well, now divide the data into 4 intervals, 5 intervals, 6, 10, 100, and go through this procedure.

The single changes in price over these intervals look completely random but when you average their log10 and you divide by the log10 of the scale of time of these intervals you get over and over 6.11.

The graph shows for each change in time scale these points. They look messy (some above 0 and some below 0) because the price of BTC is random locally. But when you average the values a pattern emerges and it is the red line that is a straight line. I didn’t get the line by fitting or assuming we were getting a straight line in the model.

You get a damn straight line just by taking averages of these messy points. It is pretty cool. Given the x and y axes are expressed already as logs then the straight line shows BTC price indeed scales as a power law in the scale of time.

Not sure if you followed me so far but this is just amazing. By the way, the slope for the straight line is 6.1 which is very close to the slope we get when we plot log10 of price vs log10 of time that is a more primitive way to show BTC is a power law (in that case we get 5.82).

I think this construction makes sense and I’m exploring it in more depth but let me know if you have some constructive and valid criticisms. It makes sense to me and I don’t think the n we get is so close to what we get when we look at the sequential price vs time log-log plot is a coincidence. It is the same power law shown in quite different ways (even if related of course).

--

--