Recently, one of the economists at CME Group published a very curious article: http://www.cmegroup.com/education/featured-reports/bitcoin-will-stunning-rally-sustain-or-sour-in-2018.html

CLARIFICATION: I should have emphasised that “cost of transaction” used in the article mentioned, and as referred below, is different from “transaction fee”. Cost of transaction is how much network is paying miners to process one transaction, on average. That includes block rewards, uncle rewards, and transaction fees.

One of the interesting points was the observation that in the past (though we only have very few data points), the cost per transaction (total mining revenue divided by the number of transactions) rising could be a sign of a price collapse. He used a chart available at blockchain.info to illustrate: https://blockchain.info/charts/cost-per-transaction?timespan=all

Bitcoin cost per transaction, in USD

What about Ethereum? I pulled some data from Etherscan: https://etherscan.io/charts

and wrote this little Python script to analyse:

import csv

import numpy as np

import matplotlib.pyplot as plt

import datetime





def readdata(filename, column, cast_func):

with open(filename) as f:

reader = csv.reader(f, delimiter=',')

reader.next() # Skip the header

return np.array([cast_func(row[column]) for row in reader])



prices = readdata('export-EtherPrice.csv', 2, float)

times = readdata('export-EtherPrice.csv', 1, lambda x: datetime.datetime.fromtimestamp(int(x)))

supply = readdata('export-Ethersupply.csv', 2, float)

fees = readdata('export-TransactionFee.csv', 2, lambda x: float(x)/10**18)

txcount = readdata('export-TxGrowth.csv', 2, float)



cost_per_tx = (supply + fees)*prices/txcount



plt.plot(times[10:],cost_per_tx[10:])

plt.plot(times[10:],prices[10:])

plt.show()

And here is what I got (green line is the price in USD, blue line is the cost per transaction in USD:

Ethereum cost per transaction in USD (blue line) vs price in USD (green line)

In order to see finer details of the cost rising and falling, plot it without the price:

Ethereum cost per transaction in USD

The peak in summer 2017 is probably ICO craze :)