Long Term CoW Value Capture

When sorting by profits the most close to break even are batches with only 1 trade:

Do I misinterpret the data? I would have expected: more trades per batch → higher profit

*sorry had to split it to two posts, only one image per post is allowed.

Sorry, the query is wrong in that it filters only on batches that are making a loss (where fee_value < tx_cost_usd). I created a fork of it here without that constraint.

Three things to keep in mind that this table doesn’t consider:

  1. Not all solvers optimise for CoWs yet, which means that some large batches when solved via single order solvers (ie. 1Inch) don’t yet achieve the maximum gas savings. Take this batch as an example Ethereum Transaction Hash (Txhash) Details | Etherscan : it touches the USDC<>ETH Uni pair 4 times in the same transaction, whereas it should have only touched it once. We hope that external solver competition will make those type of batches more efficient.
  2. Small trades can be filled from “internal balances” that the settlement contract holds. This is the reason why some very small batches still turn out profitable.
  3. The way the subsidy currently works is that it gives a fixed discount to each order (+ the CoW based % discount). This means batches are relatively speaking more subsidized during times of low gas (<50 gwei) and less subsidized during times of higher demand.
1 Like

Noticed the same and made a fork just for profitable batches (past 30 days): Dune

Also, the protocol is performing better in the past weeks with some days in profit (ignoring external factors) - Dune

2 Likes

By the way, for people willing to play with some numbers there’s a query for simulation purposes (just change the default values and push “Apply all parameteres”).

I also added a default simulation with 30% premium on all fees collected to be used as example so people can see how easy it may be to make the protocol profitable (still ignoring external factors like solvers revenue and more).

The multitiered version works as follow by default:

  • Tier 2, fees collected above $70 => 10% premium (1.1)
  • Tier 1, fees collect between $20 and $70 (]$20,$70]) => 30% premium (1.3)
  • Everything else ([$0,$20], default_premium) => 50% premium (1.5)

Meanwhile, there’s a V2 of this simulation (with cumulative revenues, ignoring 2021 data, possibility to change the flat premium example and using different default values): Dune

1 Like

Are there any plans extending this as this can bring fees down? I think I saw you talking about an own AMM for CoW as something which can happen in the future. Maybe starting with frequently traded assets.

Yes, we would love to eventually allow market makers to keep their own “internal balances” in the settlement layer to allow for most efficient matching of user orders even of larger size.

At the moment, securing large amounts of funds inside the settlement contract requires a large security deposit from solvers - currently in the form of “bonding pools”. This increases the barrier to entry for them. We are researching ways to combine “vouches” of multiple bonding pools for individual solutions (and having those signatures verified by the smart contract) to bring the individual capital requirements of solvers down while still allowing larger amounts to be stored inside the contract.

COW HOLDERS: want buy pressure(utility)
TRADERS: want best price
SOLVERS: want to make profit
MARKET MAKERS: want fee rebate
DEFI PROJECTS: want cheap liquidity

TLDR:
Redirect inflation offered to solvers based on veCow voting.

Thus solvers will have an incentive to offer the best price(even at loss, aka fee rebate) to traders of the most veCow-voted tokens, which should increase the competitiveness of CowSwap and attract volume.

Projects will benefit from greater liquidity at low cost, and veCow holders will be incentivized to vote, thus providing additional returns.

What do you think?
Sorry for my English I don’t write your language well yet.

Is your proposal to let veCoW token holders chose which solver to reward and with how much?

I think solvers would still want to be rewarded based on some objective metric (ie surplus), but weighing surplus payouts ie by token or token pair sounds interesting.

Exactly, instead of having a fixed reward per batch, we could have a variable portion of the rewards based on the volume of tokens traded(or other metric).

The amount of additional rewards will be depending on the tokens chosen by veCow owners, like Curve.
This would allow us to give utility to COW, reduce sell pressure with the lock, add buy pressure with the bribe and have more competitive prices than other DeX and even attract MMs via 0x for example.

2 Likes

If I understand it correctly funds in the settlement contract are accesible by every solver, so the bond is needed to secure the funds against misbehavior of any solver.
Couldn’t the funds be split in multiple settlement contracts. One for every solver / solver pool. In this case they can only rug pull the money they own and not the money of the others. This should reduce the needed security bond. Also it would increase competition as more funds in the settlement contract can reduce TX costs. So they compete against each other to hold the best trading assets in their portfolio.

EDIT:
Looking at the architecure picture again, I’m asking myelf: Isn’t the driver controlling the settlement contract? So couldn’t all solvers use the funds in the settlement contract for their batch proposal without risking funds as the driver submits the final batch?

1 Like

That’s an interesting idea.

I could think of something similar to EIP 1559 where we have a base fee + tip.

In our case base fee copuld be something to ensure we have percentage X of solvers participating in finding CoWs and submitting a batch,
When X% drops below Y base fee is increased. When X% goes above Z base fee is reduced.

On top we have the tip which could be based on some metrics like you mentioned and the vote via veCOW.

Protocol “Internal balance” (etherscan | zapper.fi) belongs to the protocol and not to solvers, splitting this balance isn’t interesting since it will create fragmentation (and potentially unbalance).

From my understanding, what was said is that it would be great to add market makers funds to the settlement layer, increasing this overall balance. The more funds available, better it is. We would reduce the amount of external swaps but it’s also a bigger challenge (and risk).

Yeah I had to look at the architecture picture to see my mistake. I did an EDIT at the end of my last post.
Adding more funds to reduce external swaps is defintely worth discorvering when we can manage the risk.

1 Like

I don’t think want to do Robinhood model. In this model, the fee is hidden and nontrasparent, so it is also likely very unfairly distributed. CoW Protocol is a credible attempt I have seen that can make the settlement prices fair (uniform in a block), without relying on order flow deals or related (which paraswap seems to be doing with its market makers cooperation). I believe an explicit fee is fairer (which should depend on the trade parameters as well).

2 Likes

agree, reducing sell pressure with a combination of some locking/staking mechanisms consequently decreases token velocity and increases the value of DAO treasury (value per token), but that needs to be part of a long-term strategy. With stronger purchasing power its easier to buy “fundamentals” (integrations, grants, extrinsic token productivity, and generally build more revenue streams) and create a “positive value loop”. I am against short-term solutions, for example LP farming rewards - that has some purpose or its just pressure from holders to increase their portfolio productivity?

2 Likes