Cheat-Proofing Token Prices and Measurements
by Brian Tinsman
3 Ways to Track Token Values in Manipulated Markets
One challenge in the blockchain/DLT industry is how to design token systems in a way that makes it harder for price movements to be manipulated or falsified.
Why is it important to have verifiably accurate market price data for token values?
Lots of traders and businesses rely on reported price figures, and the same goes for token values. Cheaters don’t need to move these reported prices very much to disrupt the system. If price reporting can be manipulated just a little bit, bad actors can profit by:
- Triggering automated trading
- Inflating a token’s value before selling
- Damaging competing investors with bad data
- Getting a better price with OTC sales (off-exchange transactions)
- Damaging token ecosystems or prices by making their token price appear more volatile (this may make their token less desirable to investors or miners)
- Causing price stability controls to misfire
Regarding this last point, the risk is especially significant for token systems that attempt to stabilize token values with algorithms that react to price changes. The more decentralized the stabilizing system, the more vulnerable the price is to manipulation. Some examples are Basecoin, Fragments, and Kowala.
Risks are also magnified with smaller market cap, lower volume tokens. These token prices are naturally more volatile and are exposed to more harm from all the factors above.
For clarity let’s separate the problems of trading-based manipulation and reporting-based manipulation. The first is about manipulating prices using trades, and the second is about manipulating prices by spreading fraudulent data.
The First Attack Vector: Pump-And-Dumps (trading-based manipulation)
Pump-and-dump schemes and other trading-based price manipulations are everywhere, including real estate and stock markets. In these scenarios, schemers make bad-faith trades to intentionally inflate prices and profit from the enthusiasm of latecomers.
On August 22, the SEC used one punch to knock out nine(!) pending bitcoin ETF proposals for this very reason. They explained there is currently no way to detect whether prices are being unfairly manipulated and no mechanism to prevent it if detected. Some of those ETFs tried to solve this problem by pricing bitcoin through government-regulated futures markets. The SEC found that these markets weren’t big enough to provide the needed protection. In other words, the SEC felt those futures markets themselves are still reasonably exposed to price manipulation.
Further, they noted that the vast majority of traders are not easily identifiable and therefore it’s not possible to punish or restrict them if they’re found to be unfairly harming others.
The picture is becoming clearer that in order for the SEC to approve ETFs (and open the floodgates of institutional investors), cryptocurrencies will need:
- All or most exchanges to report trading data according to some standards
- Rules defining what’s fair and what’s unfair
- A way to detect and shut down bad actors
- More trading volume
- Verification that the trading is coming from many identifiable traders, not just whales or sock puppets (multiple accounts held by a single trader.)
This seems like a tall order, but there’s an ocean of money at the end of this rainbow, so expect financial services companies to put a lot of resources into solving it.
A Second Attack Vector: Tainted Data (reporting-based manipulation)
A second concern is tainted data, which is becoming a bigger problem as the cryptocurrency industry matures. Who is making sure that exchanges are publishing prices that reflect reality? How likely is it that the servers publishing this data will get hacked? What would happen if bad actors got control of Coinmarketcap.com? This type of fraudulent price reporting can have a greater or lesser effect depending on each token’s ecosystem, so it’s worth thinking about during token design.
To have an accurate, open market price, a currency should:
- Be available for sellers to actually receive in transactions
- Reflect the actual value that traders place on the traded items according to their preferences
- Occur in a marketplace that:
- Has no hidden information between traders
- Has many available buyers and sellers
- Is free from excessive fees or barriers
Open market price data are usually averaged over an hourly or daily time window. Individual prices can also be weighted by transaction volume to make sure that small purchases carry less weight than large purchases in the reported average.
Ideally, we would have access to accurate price data from every fair transaction that takes place but this isn’t practical since many transactions happen outside exchanges and it’s hard to collect and verify the accuracy of published data from every exchange. This is also a common problem with other assets like stocks and forex.
The Solution: Possible Approaches
If you are running a token ecosystem and want to use supply-based price controls (such as token issuance or token burns) to keep price volatility low, here are three methods you can use to track the token’s price with the best information possible, and the pros and cons of each.
1. Average of Reported Exchange Data
Many exchanges provide live price and volume data with APIs.
This is an efficient way to gather data and can work for non-critical applications.
There are problems using it for applications that depend on good data. What if some data feeds go down? Is there a minimum number of price feeds necessary for the system to operate safely? Are some more trustworthy than others? What if the coin is only on a few exchanges, or one exchange has much higher volume than the others? What if many feeds come from countries that have local price distortions, such as we sometimes see in the Korean market? Are there safeguards to prevent improbable spikes from skewing averages? We have actually seen this happen with Coinmarketcap data. These are all questions about how much risk is acceptable to the project.
2. Price Monitoring Services
Data reporting services are becoming more common as a monitoring option.
This can be a good solution for traders, as the service providers have the resources and expertise to ensure their reporting addresses the problems with averages of reported exchange data.
This information is still centralized. If a monitoring service goes down, gets bought out by an unscrupulous owner, or gets hacked, any currency that relies on it is exposed to risk. These aren’t big risks, but they are a problem for coins that want more decentralization.
3. Game-Like Betting System
An innovative approach is to create a built-in consensus system that relies on user behavior to determine what prices to accept. The stablecoin project, Carbon, has created a system that asks users to place a bet on what the consensus estimated price will be each day. If your estimate is within the 50% of estimates closest to the median estimate, you double your coins. If it’s outside that range, you lose your coins. Then the median of all price estimates is treated as a true price.
On its face this is a pretty elegant solution. Individuals have an incentive to make estimates closest to what they think other individuals will estimate. Inherently, this method is free from the tainted data reporting problems.
There’s no direct tie to actual prices paid in transactions. So the output of this method doesn’t meet the definition of true market price, but instead attempts to create a kind of synthetic market price.
Price Consensus Games
Game-based systems offer strong benefits, but how hard would this methodology be to manipulate? It depends on the value of the coins at risk, the number of players, and the possible rewards for manipulators. At a very basic level, a cheater could just make a lot of bets on huge price estimates in order to move the median up. If the cheater can make millions doing this, they may be willing to lose millions in bad bets doing so. Luckily this type of cheating is fairly easy to defeat with some additional rules that ignore outliers or very large estimated price swings.
You can also imagine a scenario where a large group of players decide they want to push the price up and make a large number of legitimate-looking bets at a high price. If there’s low good-faith participation in this pricing game they can be confident their bad-faith estimates will overwhelm the honest players and they won’t lose their staked bets. The best way to stop this is to get more users playing the game. As the SEC reminds us, the larger the number of players, the harder it is to gather a crew that can push them around.
This is an interesting area of research with plenty of room for innovation. There’s a real need for reliable price controls in cryptocurrency and utility token projects, so look for more game-like mechanics and other solutions to emerge in the coming year.