At first glance, what sticks out to you in the chart above?
Yes — that solitary purple bar on the right hand side, looming over it’s peers, conspicuous as can be. That bar in particular represents the number of on-chain token transfers of the MKR token on 18/03/2018. What this bar is telling us is that on the 18th of March (a little over a week ago), something significant happened in the world of Maker.
Curious — we decided to dig a little deeper into the data to see what we could find.
First off, you may be wondering, why should one care about the MKR token, let alone it’s on-chain transaction patterns?
MKR is a core component of the Dai stablecoin ecosystem.
The concept of a “stable” coin is used to describe any cryptocurrency that does not have price volatility relative to a fiat currency. The majority of the cryptocurrencies available today — even the largest such as Bitcoin and Ethereum — exhibit significant price volatility. A cryptocurrency with price stability — one that can be used in a variety of decentralized applications as aunit of account — is sorely needed to enable the growth and maturity of the decentralized economy.
Of the available stablecoin options, Dai and others like it offer one of the most interesting and promising avenues forward as they are decentralized. As opposed to a token like Tether, where trust in the token is based on a centralized company holding in reserve the requisite amount of USD to back up the circulating Tether, the Dai stablecoin system is run completely on the blockchain — with its stability in the hands of carefully designed crypto-economic incentives and rigorous smart-contracts.
Let’s come back to our original question at the beginning of this piece: what caused the number of on-chain transactions for the MKR token shoot up so dramatically on the 18th of March? Let’s see some summary stats for the day before, the day of the 18th, and the day after (to provide some context):
One can notice that the number of token transfers spikes on 18/03/2018, while the mean transfer amount and the maximum amount transferred on a given transaction shows a huge increase on 19/03/2018.
We thought of two different hypotheses to explain these different on-chain transaction patterns:
To explore further — we decided it might be useful to see the split of token transfers in terms of frequency of transfers into and out of specific addresses:
The above three charts visualize the addresses most often listed as the recipient in MKR on-chain token transfers for the three dates mentioned (taking the days around 3/18 to see if any continuous patterns occur).
One aspect that stands out immediately is a more diversified distribution of addresses on 19/03/18. Diving deeper into each party that transacted — we can confirm our “whale” hypothesis (#2 above) — by discovering that the following non-contract addresses were responsible for the largest portion of token volume transferred on 19/03/18:
While it is impossible to know exactly who these addresses represent — our initial classification algorithms offer a heuristic as to what type of entity they could be representing.
This evidence gives us a plausible explanation for the 19/03/18 increase in mean and max transfer amount — large “whale” addresses, most probably owned by the token team members themselves, making large MKR transactions.
We still don’t have an answer for the 18/03/18 spike in the number of on-chain transfers.
Since the 18/03/18 distribution of addresses is more concentrated, it is useful to look at which ones are most frequently sent to. The largest (in terms of frequency) is a helper ‘bot’ address(0x0016BD4cb70Bd98CA07A341DA66450b5d22A55aa) that interacts with the primary Maker smart-contracts. The second and third most frequent addresses on average were the smart-contracts themselves.
To be specific — these two Maker smart-contracts are interchangeably most often the recipients of MKR token transfers in all three days (shown with contract address and name):
● 0x14fbca95be7e99c15cc2996c6c9d841e54b79425 ( MatchingMarket )
● 0x69076e44a9c70a67d5b79d95795aba299083c275 ( GemPit )
The MatchingMarket contract provides liquidity to users wanting to trade in and out of MKR — especially from the decentralized exchange OasisDex. Meanwhile, the GemPit contract serves as the contract that effectively burns the MKR used to pay for stability fees.
Exploring the address distributions of the addresses most often listed as the sender in MKR on-chain token transfers shows a similar pattern to the charts above.
Since the largest frequency (and volume) of token transfers occurred among these specific Maker smart contracts, it makes sense to test hypothesis # 1 and check the status of the Maker-Dai ecosystem itself to see if any internal phenomena are occurring.
It is useful to get a little bit of context on the Maker-Dai stablecoin system as it has a lot of moving parts. For the purposes of this piece, we will take a slightly simplistic view of the ecosystem in order to cover the major components that we will observe in action.
The Dai stablecoin system consists of two different tokens:
The fundamental construct at the heart of the Maker-Dai system are special smart contracts called Collateralized Debt Positions (or CDP’s for short).
CDPs receive ether in a pooled form (called PETH) from users and in exchange give the user Dai tokens.
The CDP then stores this PETH as collateral for the Dai that has been issued. What this means is that the CDP essentially treats the Dai issued as a loan — creating a debt with the PETH given by the user taken as collateral, should the Dai not be returned. This PETH collateral is locked out of the user’s access until the outstanding debt (the issued Dai) is paid back.
When the user wants to get their collateral back — they pay down the debt by sending back the borrowed Dai and also pay interest on their loan in the form of a ‘stability fee’. This fee can only be paid in the MKR token.
Why does there need to be this system of collateral and stability fees in order to maintain a stable coin? Well, in the situation above, the Dai that is issued is essentially tied to a multiple of the value of Ether that was put up as collateral for it.
To keep the Dai price stable in relation to USD, when the price of the collateral (USD value of ETH) decreases, there has to be a larger amount of collateral taken per Dai token issued and vice versa when the price of the underlying collateral decreases.
Dai has a concept known as ‘Target Price’. It represents what the price of Dai “should” strive to reach at any given time and is used to calculate the amount of collateral needed per Dai issued for a CDP. Since Dai is pegged to USD at a 1:1 rate, the Target Price (in USD) starts at 1.
While the target price is set by the Maker system, the market price of Dai (what it is actually traded for) is decided by the market.
At 17:19 UTC on 18/03/18, the market price of DAI was driven to a local maxima of $1.11. Over the course of 18/03/18 we see it dramatically dip to $0.96 before stabilizing again near $1.00 on 19/03/18.
This mechanism makes it less expensive to create Dai (fewer Ether needs to be given as collateral for one Dai). This incentivizes more Dai creation (increased supply), and disincentivizes users from holding Dai — leading to a dampening of the market price to match the target price.
Seeing as the price immediately dropped after reaching it’s local maxima, we can assume that the Maker-specific arbitrage seeking bots — called ‘Keepers’ — promptly snapped into action to rebalance the Dai price.
Regardless, we still haven’t found an adequate explanation for the tremendous increase in MKR token transfers on the 18th however.
We also don’t know why the price of Dai suddenly rose on the 18th.
Let’s have a look at circulating Dai supply levels:
Herein we see a distinct pattern. From between 11:00–17:00 UTC on the 18th of March we see a reduction in DAI supply from approximately 21 million to 16 million!
During the same timeframe, we also see that the total locked up collateral (in CDPs in the form of WETH/PETH) in the Maker-Dai ecosystem declined dramatically:
Digging deeper, we finally discover that one of the largest CDP’s in the Maker-Dai ecosystem, CDP #614, was actually liquidated at 10:52:37 AM UTC — approximately the time when the dip for both Dai and WETH/PETH supply began in earnest.
What do we mean when we say that the CDP was liquidated?
While the TFRM is designed to keep the Dai price stable, there remains the possibility of the incentive structures not working as expected — especially when the price of ETH keeps dipping and its value is worth less than the amount of Dai that it is supposed to be backing.
This is what happened to CDP #614.
The Dai issued by the CDP became undercollateralized due to the ETH market price dipping and the user not paying back his/her “debt” by re-exchanging their Dai for their collateral.
In this situation, the Maker system triggers a liquidation of the CDP’s collateral, automatically selling it off to the highest bidders for Dai as fast as possible to recapitalize and ensure that the Dai that it issued to the original user is fully collateralized.
This liquidation event on the morning of 18th March appears to be the foundational event that then starts off the domino sequence of smart-contract actions that eventually lead to the number of MKR token transfers shooting up on that day.
As a result of the higher MKR token velocity on that day, the MKR token price also appears to dip slightly during the exact timeframe that the liquidity event took place:
The data points and observations above, combined with what we know about the Maker-Dai system leads us to some interesting higher level takeaways.
If we can take anything away from this data exploration — it is that the mechanisms in place to keep Dai stable and collateralized are in fact working.
Further inferences we can make from this analysis include:
Note: This piece simplifies several aspects of the Maker-Dai stablecoin system. Refer to the whitepaper for in-depth details. The mechanics of how MKR is used will also change when multi-collateral Dai is introduced.
By Sid Shekhar @sidshekhar24