Produced by: DODO Research
Editor: Lisa
Author: xiaoyu
Dan, with all respect. The game was changed long ago by @1inch when they first did high-quality aggregation and @CoWSwap when they pioneered the solver model.
It's good stuff, but you are not really the first or the second.
—— @Curve Finance
The launch of UniswapX was both sensational and controversial. The most pointed question accuses UniswapX of copying CoWSwap and 1inch. Curve's official Twitter said: "The rules of the game have long been changed by 1inch's high-quality aggregation and CoWSwap, which is the pioneer of the solver model. UniswapX is good, but it is really not the first, nor the second."
The picture posted by CoWSwap directly points to its status as a pioneer in Intent Based Trading. So, what exactly is CoWSwap? What is the difference from UniswapX? While taking the aggregator’s solver model route, why do market voices accuse UniswapX of “plagiarizing” CoWSwap instead of 1inch fusion.
From the birth background, to the mechanism interpretation, data performance, to the 9 product differences with UniswapX and 1inch fusion, with the spirit of "cow", we will explore what CoWSwap is and how it is, and answer "plagiarism" Troubles.
The “thief” of Defi users: MEV attack
DeFi users have been victims of MEV attacks, such as front-running, back-running, and sandwich attacks. The CoWSwap protocol provides MEV protection and strives to reduce users' MEV losses. Before we get started, let’s briefly understand what an MEV attack is.
Just imagine this scenario: Wait, you finally get your ideal trading opportunity! Open Uniswap, and as Pending ends, you find that the wallet has received many fewer tokens than expected. Open the block explorer, and someone will raise the price before you buy it, and then sell it quickly after you buy it, and you will pocket the difference. Yes, you suffered an MEV attack.
MEV attacks occur due to the "asynchronousness" of submitting transactions to the upper chain. When a user submits a transaction on Ethereum, it is not immediately added to the next block. Instead, it first goes into the "memory pool", which is the collection of all pending transactions. Validators then pull transactions from the mempool and add them to the next block at build time. Since the mempool is public, searchers have the opportunity to pay validators to order transactions in a specific way, extracting value from users through ordering.
Image source: CoWSwap Docs
The guide of the Black Forest: MEV protection of CoWSwap
Better than the best price. —— CoWSwap
The name of CoWSwap seems to be related to "Cow", but CoW here refers to "CoW, Coincidence of Wants", which refers to a special transaction matching method. Specifically, "demand matching" is an economic phenomenon in which "two people hold what the other party needs at the same time, and the two parties can trade directly without the need for money as a medium."
In the CoWSwap protocol, the user does not need to send a transaction to submit a transaction, but the user needs to send a signed order (or, transaction intention). The order specifies the maximum and minimum output they are willing to achieve on the trade within a specific time period. The user doesn't care or need to care about how it is executed. The signed order off-chain is then handed over to the solver, who compete to find the best execution path when the order takes effect. The first solver gets the right to execute the batch. This also means that the Gas required to execute the order is borne by the Solver, and the user does not need to pay Gas if the transaction fails (for example, a path is not found to meet the promised price before the deadline).
CoWSwap's MEV protection can be summarized in the following three points:
1. Batch Auctions
A "coincidence of demand" occurs when two (or more) traders exchange cryptocurrencies with each other without having to use on-chain liquidity. The occurrence of CoW allows orders to be packaged in one batch to improve efficiency. Specifically reflected in: eliminating on-chain costs such as LP fees and Gas fees, the off-chain P2P method can also avoid slippage and possible MEV attacks on the chain.
Leupold, the technical director of CoWSwap, said: Due to the “Cambrian explosion” of various tokens in the DeFi field, market liquidity is highly fragmented. In order to create liquidity among the various token pairs, market makers need to “step in and provide liquidity.” If demand coincidences can be found within each block, the fragmented liquidity space can be reaggregated.
2. Off-chain solution
Since the third party processes trading orders on behalf of the user, hiding the visibility of the mempool, all risks of MEV are borne by the third party. If the third party has a better execution path, the order will be completed at a better price, otherwise the order will be completed according to the worst signed quote. All manage the risks and complexities of trading, handled by professional solvers.
Users only need to express "trading intention" and do not need to care about the execution process. Immature users who don't know how to "raise" their priority in the public memory pool are protected by this mechanism of CoWSwap. Don't worry about being in a "dark forest".
3. Unified clearing price
If two people trade the same asset in the same batch, the protocol enforces that there is only one price per batch of tokens. Both transactions will be settled at the “exact same price” with no first come first served concept. Even if a block has multiple transactions for the same token pair, each transaction will receive a different price depending on the order of transactions with the pool. But the CoWSwap protocol requires a unified clearing price, so reordering makes no sense. According to Leupold, this approach eliminates "various MEVs."
The mechanism of CoWSwap is quite novel. Before the concept of Intent was proposed, it roughly complied with the requirements for DEX under the concept of Intent. Various research reports also spoke highly of this architecture. But it is obvious that CoWSwap is not a celebrity. When it comes to aggregators, more people think of 1inch and so on. What's the reason?
We summarized the shortcomings of CoWSwap, which are specifically reflected in the following three points:
1. Not suitable for inactive currencies
In theory, this mechanism can present users with better prices, but it may also lead to losses for users. For actively traded tokens, there is a high probability that orders can find "demand coincidence" in the batch to optimize the price. For tokens that are not actively traded (here assumed to be ETH), the Solver may be able to trade with the maximum slippage, even exceeding the slippage that would occur in a single liquidity source.
2. Additional agreement fees
For small transactions with sufficient liquidity, Cow’s protocol revenue may cause losses to users.
3. Not supporting all tokens
CoWSwap does not support the exchange of all tokens, only tokens that comply with the ERC-20 standard. Moreover, although some tokens implement the typical ERC20 interface, when calling the transfer and transfer slave methods, the actual amount the receiver will receive will be less than the specified sending amount. This will cause problems with the settlement logic of CoWSwap. For example, $Unibot does not support transactions in CoWSwap.
See the essence through data: a closer look at CoWSwap’s market performance
The ideal is always full, but the reality is backbone. Only through data can we understand the market performance of CoWSwap. Combining the advantages and characteristics of CoWSwap, we will explore the market performance of CoWSwap from the perspectives of anti-MEV performance, transaction volume, market share, etc.
1. Anti-MEV performance
Comparing the sandwich attacks that occurred on Uniswap and Curve, the number of transactions attacked through CoWSwap routing was greatly reduced; comparing 1inch and matcha, CoWSwap had the least number of sandwich attacks and the lowest proportion of transaction volume in 2022.
A research report from the on-chain MEV analysis team @EigenPhi.
2. Transaction volume and market share
Aggregator track side-by-side comparison. CoWSwap ranks fourth in terms of transaction volume, ninth in number of users, and fifth in average transaction size. Among them, 1inch ranks first.
https://dune.com/murathan/uniswap-protocol-and-aggregators
Compare aggregator market share side by side. 1inch dominates based on its large number of users, with a market share of approximately 70%, followed by CoWSwap with a market share of approximately 10%, followed by 0xAPI, Match, and Paraswap. CoWSwap’s market share is growing.
https://dune.com/murathan/uniswap-protocol-and-aggregators
The monthly trading volume of CoWSwap fluctuates greatly. As of September 1, the total trading volume reached $27.4B.
https://dune.com/cowprotocol/cowswap
3. DAO selection
1/3 of DAO's transaction volume occurs on CoWSwap. Because DAO often requires large-amount, MEV-resistant transactions, a platform that can meet DAO's special order requirements, such as limit orders and TWAP, Milkman (On July 10, Milkman was used by AAVEDAO to monitor the transfer of 326.88 wETH and $1,397,184 $BAL replaced by B-80BAL-20WETH slippage). This proportion is still growing, and in August, CoWSwap even accounted for more than half (54%).
https://dune.com/queries/2338370/3828396
4. Balancer provides incentives
Balancer released the [BIP-295] proposal on March 24 to provide ~50-75% fee discounts for CoWSwap solvers. The transaction volume of CoW routing balancer ranks third, second only to Uniswap and Curve.
https://dune.com/sixdegree/dex-aggregators-comparison
"Plagiarism" controversy
“CoW Swap is the first DEX Aggregator offering some protection against MEV”
—— CoWSwap About
Gnosis Protocol V1, the predecessor of CoWSwap, was launched in 2020. It is the first DEX to offer ring trading through batch auctions. UniswapX and 1inch fusion adopt the same architecture as CoWswap: Signed Order - outsourcing transaction creation to a third party - (competition incentivizes third parties to return MEV to users). When UniswapX was launched, there were constant voices accusing it of plagiarizing CoWSwap. When 1inch was launched, it was nicknamed a modified version of CoWSwap.
Today we will discuss the differences between the three, summarized in nine aspects.
1. Third party name
- UniswapX: filler
- CoWSwap: solver
- 1inch fusion:resolver
The responsibilities are the same: provide solutions for orders signed by users, and package them into blocks in a transaction.
2. Execution process
- UniswapX: The filler that wins the quotation has priority for execution within a certain period of time, and then the Dutch auction takes place.
- CoWSwap: Submit all solver solutions to Driver for ranking. Once the bidding ends, all solutions have been submitted and ranked. Ranking information will be broadcast and the top ranked execution will be notified.
- 1inch fusion: Increase the number of resolvers over time while the price decays.
1inch fusion only has 1 resolver in the first minute, and it has been criticized that "the resolver will wait until the price drops before executing." User waiting time is extended.
Note: The proposal has been approved and the number of resolvers to be increased is 10.
3. Batch formation
"Leopold contends that CoW Swap's design still offers better pricing because it batches trades rather than processes them individually like UniswapX. Batching many different trade requests together provides better MEV resistance, he said." - CowSwap CTO
- CoWSwap: Pack all the outstanding orders on the chain into a batch for Dutch auction. Orders can be combined to match CoW.
- UniswapX: fillers pick up one or more orders by themselves through the API for processing.
Due to the complexity of orders, CoWSwap needs to package all outstanding orders into a batch. It is difficult to determine whether the optimal solution can be found within one block time, and there may even be no optimal solution.
4. Degree of order parameterization
- UniswapX: Users have more freedom (and potentially more complexity) to define parameters, including the decay function of the auction, the initial Dutch order price, etc.
- CoWSwap and 1inch fusion: Users only need to provide exchange tokens and slippage. CoWSwap can also set the duration of the order.
5. Third parties have different sources of liquidity
- UniswapX: Allows any liquidity source that filler can access, that is, allows private liquidity.
- CoWSwap: CoW and external liquidity sources.
- 1inch fusion: Usually a large market maker.
CoWSwap is more about finding counterparties at the same time. The 1inch market maker serves as the resolver and can choose to complete the transaction directly. UniswapX can also allow professional market makers to intervene, which is expected to solve 1inch's criticized "resolver waits until the price drops before executing" and seize 1inch's market share.
6. Degree of decentralization
- UniswapX: Absolutely permissionless, anyone can access open orders through API and send them to Reactor to compete with other filler solutions. (Unless the user specifies filler)
- CoWSwap: Either be whitelisted by creating a $1M USDC/COW pool; or be whitelisted by Cow DAO according to DAO standards.
- 1inch fusion: Based on the number of $1INCH tokens pledged and the weighted pledge years, the top ten addresses are selected as resolvers. Registration, KYC process, and maintaining a sufficient balance to cover order fees are required.
Note: CoWSwap is currently in phase 1 and is authorized by the Cow project; phase 2 requires tokens to be pledged and DAO votes to agree; phase 3 allows anyone to become a solver.
7. Quotes come from different sources
- UniswapX: Allow filler quotation (RFQ), which allows filler to initialize the initial price of the Dutch auction.
- CoWSwap, 1inch fusion: API quotes.
8. UniswapX uses RFQ and considers using reputation system
- UniswapX: allows orders to specify a filler to execute the order within a certain period of time (and then conduct a Dutch auction), thereby motivating the filler to quote a quote from the RFQ system. In order to limit filler's abuse of this exclusive right, a corresponding reputation or penalty system may be introduced.
- CoWSwap: Once a week, the Solver with the highest order completion rate last week will be rewarded to achieve incentives.
9. Uniswap X launches cross-chain aggregation function (not yet implemented)
- UniswapX: Can be extended to support cross-chain transactions. Swapping and cross-chain are combined into a single action. The exchanger does not need to interact directly with the bridge to exchange assets held on the original chain to the required assets on the target chain. .
- CoWSwap, 1inch fusion: still under discussion.
write at the end
Overall, CoWSwap is an interesting project. Outsourcing order solving to a third-party Solver is quite similar to L2's expansion "philosophy": execution off-chain, and final settlement and verification on-chain. CoWSwap cleverly enables transactions to become a huge barter economy, solving the problem of fragmentation of liquidity. The liquidity on the chain can be used for the parts that cannot be satisfied by peer-to-peer transactions.
One of the requirements for the implementation of Intent is that anyone can act as a Solver to improve efficiency in the competition. The architecture of CoWswap undoubtedly coincides with this. All the risks and complexities of managing transactions are handled by professional solvers. Protected by the CoWSwap mechanism, users do not have to worry about "walking" in the dark forest. This is consistent with the philosophy of DODO V3. In DODO V3, liquidity providers' funds are managed by a professional market-making team, without the need to personally consider strategies.
CoWSwap has achieved good results in solving the MEV problem, and its market share is also growing under the Intent narrative. At the same time, it also encountered resistance from large-scale applications such as protocol fees and not supporting all tokens. As the pioneers of the solver model, the mechanisms of UniswapX and 1inch fusion are more like innovations based on them. 1inch releases resolvers in sequence and connects with professional market makers; Uniswap's RFQ system allows users to specify fillers first instead of proposing solutions at the same time. We look forward to CoWSwap's framework promoting more innovations in the field of decentralized transaction aggregators, and we look forward to CoWSwap's long-term and outstanding development.
references
https://ld-capital.medium.com/the-future-of-mev-is-the-future-of-the-crypto-has-the-importance-of-the-mev-track-been-76bb36caf9f4
https://app.aave.com/governance/proposal/?proposalId=267
https://eigenphi.substack.com/p/sandwich-mevs-impact-on-cow-swap
https://snapshot.org/#/balancer.eth/proposal/0xd991e9f3c6edd148bd37c600d7ada3d28db1758e3cfd703c02d290f502906f05
https://blog.cow.fi/what-are-cows-on-cow-swap-e72baaa4678a
https://blockworks.co/news/cow-swap-mev-problem
https://swap.cow.fi/#/about
https://twitter.com/RaccoonHKG/status/1607030613495939074