Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ sidebar_position: 3

# Fair Combinatorial Batch Auction

CoW Protocol collects and aggregates [intents](./intents) off-chain and auctions them off to [solvers](./solvers). The auction is combinatorial because each solver can submit multiple bids. A solver can submit multiple bids on individual orders, in which case each "bid" represents the best price this solver can provide to an individual order. However, a solver can also submit "batched" bids, that is, bids on groups of orders.
CoW Protocol collects and aggregates [intents](./intents) off-chain and auctions them off to [solvers](./solvers). The auction is combinatorial because each solver can submit multiple bids. A solver can submit multiple bids on individual orders, in which case each "bid" represents the best price this solver can provide to an individual order. However, a solver can also submit "batched" bids, that is, bids on groups of orders.

The protocol filters out ``unfair'' batched bids, which are those delivering less to an order than some available "non-batched" bids. It then selects the combination of winning bids that maximizes the surplus received by the orders that are part of the auction (subject to some computational constraints due to the combinatorial nature of the problem).
The protocol removes any "unfair" batched bids - ones that would give an order a worse outcome than a regular, single bid. Then, from the remaining options, it picks the mix of bids that gives traders the most total value possible, while staying within the system's computational limits.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would this work?

Suggested change
The protocol removes any "unfair" batched bids - ones that would give an order a worse outcome than a regular, single bid. Then, from the remaining options, it picks the mix of bids that gives traders the most total value possible, while staying within the system's computational limits.
The protocol removes any "unfair" batched bids - ones that would give an order a worse outcome than some reference bid. Then, from the remaining options, it picks the mix of bids that gives traders the most total value possible, while staying within the system's computational limits.

@acanidio-econ

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the previous paragraph talks about "bid on individual orders" (which is not 100% correct but I guess it is fine here). So how about: "The protocol removes any "unfair" batched bids - ones that would give an order a worse outcome than an available bid on only that order"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"The protocol removes any "unfair" batched bids - ones that would give an order a worse outcome than a reference bid. In most cases, the reference bid for an order is simply the best available bid containing only that order (for the general case, see [with the correct reference to the more technical explanation]"


![The Auctions](/img/concepts/batch-auctions.png)

Expand Down