EOSIO / EOSIO/eos-token-distribution
The auction is unfair in the first 5-day period due to bidding uncertainty.
- Dominant language
- Shell
- Stars
- 191
- Forks
- 141
- PR merge metrics
- No merged PRs in 30d
Description
Bidders have no control over the maximum price they pay, and should be able to submit a `maximum_price` along with their bid. See [my steemit post](https://steemit.com/eos/@biophil/the-first-5-days-of-the-eos-token-sale-will-be-unfair-here-s-how-to-fix-it) for a rationale for this change. One of the main points is that subsequent bidders can force early bidders to pay a higher price than they are willing to, which incentivizes those early bidders to bid later or commit less ETH.
My proposed fix is this:
A bid is a pair `(committed_ETH,maximum_price)`.
The total amount to be minted is `total_EOS`.
At the end of the minting period, bids are resolved in the following way:
Sort all bids in descending order of `maximum_price`.
Iterate through the bids summing the `committed_ETH` along the way, and increment the iteration whenever `implied_price := total_committed_ETH/total_EOS` is less than the current bid's `maximum price`. If `implied_price` is ever greater than the current maximum price bid, the iteration terminates and all orders seen so far are filled at `implied_price`. Everybody receives a price no greater than their maximum price, and everybody who entered a max price greater than the final price is happy their order didn't get filled.
The algorithm terminates in finite time with a deterministic outcome because the list of bids is finite, the implied price is an increasing sequence, and the maximum prices are sorted descending.
My proposed auction allows people to submit bids with full control over their own maximum price.
Contributor guide
No contributing guide indexed for this repository
Research direction
No source file, test, or entry point is named. Start by locating the repository's existing auction and bid-handling implementation, then compare its behavior with the proposed maximum-price algorithm. Done means the auction supports maximum prices and deterministically resolves bids without charging a bidder above that limit.
Written by the indexing model from the issue text.
Assessment
- Domain
- blockchain
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100