How do you solve a problem like Wash Trading in Crypto?

This article was originally published in Hackernoon.

Throughout the past few months, we have seen numerous research pieces publicize with real data the chronic problem of wash trading that plagues our nascent industry. However, few if any, provide concrete solutions to exchanges as to how this problem could be tackled. We believe it is fair that the industry highlights the role exchanges play in this issue, and puts the onus on them to develop strategies to resolve this problem, because, at present, very few appear to have any real plan or willingness to address this problem.

What we propose in this article are some ideas that exchanges could implement to help them combat wash trading. We are not suggesting that these ideas are the silver bullet that will fix the problem, but if we can at least reduce the volume of wash trading, we can start to build fair and orderly markets in this space.

Why bother?

Wash trading is a form of market manipulation which has been banned in the US (since 1936 with the Commodities Exchange Act), and other jurisdictions to protect retail investors. Wash trading artificially inflates the activity on a given asset, thereby attracting investors who are seduced by the fear of missing out. These conventional market protections do not exist for retail investors in digital asset markets, precipitating the establishment of self-regulatory organizations (SRO) such as The onus is on exchanges and other participants to self-regulate and ensure best practices for orderly markets.

Exchanges are faced with a conflict in that their income model is heavily dependent on trading fees, therefore higher trading activity — even if illegitimate — results in higher revenues. As a result, there is little incentive in place today for them to tackle this issue. However, it is critical that this manipulation is stamped out, else many exchanges will find that there will be a flight to good quality, robust, and honest exchanges in the not so distant future.

Any exchange which allows wash trading is engaging in short-termism, and when regulation is introduced, any history of facilitating this type of trading activity will not be taken lightly.

What is Wash Trading?

Before delving into how to solve the problem, it is perhaps best to define more precisely what we are trying to tackle here. Wash trading is the act of buying and selling at the same price — by either the same party or in coordination — which results in increased trading volumes but without any risk transfer taking place. These trades are relatively easy to detect as they usually occur within the bid-ask spread and leave no visible trace in the order book. Conversely, in an orderly market, if a resting (limit) order is lifted by an aggressor, the resting order is visible to the other market participants or, if partially-filled, the remainder rests in the book.

How do bad actors Wash Trade?

Wash trading is typically achieved by sending consecutive orders to opposite sides of the book (a bid followed by an offer or vice versa) at the same (or crossing) price — and, importantly, with the same size, assuming that a sequence of disguised orders is combined into a single size. These orders must be sent in quick succession to prevent the orders unintentionally “leaking” to the market.

These consecutive orders are placed purely to print trades and increase apparent traded volume. These orders could be sent from the same account, different accounts owned by the same actor, different servers, etc., or in coordination with multiple parties, all to avoid detection by any monitoring systems that may be in place. Some exchanges do have monitoring systems in place, but these tend to report suspicious trades after the fact, which is not ideal.

Are all such trades considered Wash Trades?

You could argue there are some corner cases where orders from the same account could potentially match with each other. Perhaps an institutional trader is running multiple models trading the same instrument, and each model decides to take opposite positions — this could theoretically happen. However, the probability of this occurring at the same price and size is minimal (ignoring tick sizes and lot sizes for argument’s sake.)

Some exchanges also support the concept of hidden orders, though why they would need to sit within the bid and offer is not apparent unless to encourage this kind of pathological behaviour.

So what can exchanges do?

There are several simple ways to tackle the problem of wash trading. What we present below are some ideas which should help eliminate varying levels of this issue. We hope to inspire exchanges to take decisive action to minimize manipulative behaviour on their platforms.

Avoid Trading Games

On many of the larger exchanges, we observe wash trading as a side effect of trading games designed to encourage trading on a particular token. Bad actors weigh the cost of trading fees versus the bounty offered in the competition and then generate wash trades to try to win the game and earn the difference. This often has negative consequences for the underlying tokens — we see the price appreciate temporarily followed by a sudden reversal once the game is over. These types of games do not encourage orderly markets and should be avoided. At best, they serve as a mechanism to transfer wealth from the token issuers (who typically put up the bounty) to the exchanges (in the form of trading fees.)

Single Fee Schedule

Having tiered fee schedules can also propagate the wash trading issue (unless some mechanism as described below is implemented to prevent it.) The main argument here is that participants believe that the only way to achieve better fee schedules is to wash trade on low volume tokens, while exchanges turn a blind eye. If the exchange does not wish to implement a technical solution to disable wash trading, they should at least have a single fee schedule for all market participants, which would prevent the need to wash trade to earn better fee schedules.

Self-Trade Prevention

The easiest technical solution is to enable self-trade prevention, ensuring that orders from the same account cannot be matched with each other. As discussed above, this could be problematic for savvy traders who are running multiple models which could end up trading with each other. However, in almost all cases, the trader should be able to circumvent the issue with an internal matching engine, assuming they have a sufficiently advanced trading platform.

With this simple solution, an exchange can eliminate the lazy actors who belligerently wash trade on the same account.

Single Institutional Accounts

Exchanges can restrict traders/institutions to a single account, and ensure that Self Trade Prevention applies at the institutional account level. A robust KYC/AML process will effectively prevent traders from opening multiple accounts. You could argue that a trader, for example, could still create an account in their partner’s name or some such; but as they are forced to go through additional hoops, the percentage of the bad actors will be diminished.

Time Heuristic for Consecutive Orders

So far nothing new, this idea is quite simple. An exchange is aware when a particular order hits their gateway, and they also know how long the path takes from the gateway to the matching engine, to the market data gateway, to dissemination to the market. If a crossing order arrives within that time heuristic, the exchange should simply reject the crossing order. There is no possible way, without the market being aware of the first order, that someone could already cross at that price and size unless they queued the orders themselves. Of course, these orders must occur within the current bid-offer spread.

A simple algorithm for this could be:

  1. Determine exchange processing delay (market data gateway time to order entry time), for example by taking the median of some sample
  2. If a new order arrives, match
  3. On match; check if the delta of aggressive order entry time and resting order entry time is greater than the median computed in step 1
  4. If greater, then most likely the resting order has disseminated to the market, so the match is good
  5. If less, then most likely the resting order has not made it to market yet, and this is probably a wash trade, so reject the aggressive order

Keep in mind, a more ambitious bad actor may schedule a sequence of orders to disguise wash trading, e.g. a sequence could be: buy 10 @ 100, then sell 9 @ 99 and 1 @ 100. The critical thing to note is that the two aggressive sell orders occur within the median of the time it takes for the exchange to handle a single order and that all three orders are within the last published bid-offer spread.

This simple test will ensure that the first order hits the market and the market is aware of the price (and therefore impact) and other participants have an opportunity to react. Technically this is a simple enough solution to implement and should help prevent bad actors from being able to wash trade. There could be some false positives for some real participants sending orders, but again, the probability that two different parties send a perfect matching order pair to the exchange within a given time interval is minuscule.


While it may not be possible to eliminate all bad actors and wash trading from the crypto markets, the easily implementable rules and procedures we have outlined will go a long way towards eradicating these undesirable practices. In our view, it is unacceptable to turn a blind eye to these manipulative behaviours, as they mislead market participants and prey on the retail traders that make up the largest part of the exchanges’ customer base. Furthermore, wash trading and bad actors are holding our whole industry back from widespread adoption and pose a real risk of prohibiting the evolution of the crypto economy.

We hope that leading exchanges can use some of the ideas presented here as a starting point for improving their platforms. We commend the recent reports that have outlined suspicious trading activity and believe constructive transparency will continue to play a vital role in moving our industry forward. We hope this insight adds further clarity to the issues facing exchanges and encourages the community to implement solutions to eradicate the wash trading problem.