Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dutch auction program #69

Open
Tracked by #68
Braqzen opened this issue Jun 5, 2022 · 4 comments
Open
Tracked by #68

Dutch auction program #69

Braqzen opened this issue Jun 5, 2022 · 4 comments
Assignees
Labels
App: Auctions Label used to filter for the app issue New Feature New addition that does not currently exist

Comments

@Braqzen
Copy link
Contributor

Braqzen commented Jun 5, 2022

A Dutch auction is a type of auction where securities are priced via bids rather than the seller setting the price.
In this scenario, the seller sets a maximum price, which is lowered over time until all of the securities have been bid on.

Citation

@Braqzen Braqzen mentioned this issue Jun 5, 2022
4 tasks
@Braqzen Braqzen added New Feature New addition that does not currently exist Good First Issue Good for newcomers labels Jun 5, 2022
@bitzoic bitzoic assigned bitzoic and SwayStar123 and unassigned bitzoic Jun 6, 2022
@simonr0204
Copy link
Contributor

simonr0204 commented Jun 8, 2022

A nice mechanism to integrate into Dutch auctions is to first release the "lot" to the bidder, and hand over execution to a provided call. Then you only ask for payment at the end of the execution. It basically amounts to flashloaning the full amount to the bidder, which means anybody can participate in discovering the fair market price, even if they are capital constrained. c.f. Makerdao Liq 2.0 auctions : https://docs.makerdao.com/smart-contract-modules/dog-and-clipper-detailed-documentation#flash-lending-of-collateral

@SwayStar123
Copy link
Member

A nice mechanism to integrate into Dutch auctions is to first release the "lot" to the bidder, and hand over execution to a provided call. Then you only ask for payment at the end of the execution. It basically amounts to flashloaning the full amount to the bidder, which means anybody can participate in discovering the fair market price, even if they are capital constrained. c.f. Makerdao Liq 2.0 auctions : https://docs.makerdao.com/smart-contract-modules/dog-and-clipper-detailed-documentation#flash-lending-of-collateral

How would I delay asking for payment? Right now im just using msg_amount() to verify payment

@simonr0204
Copy link
Contributor

simonr0204 commented Jun 8, 2022

I'm not sure how it would work in Fuel. In ethereum you can just check the contract balance after execution of the external call and check it has been credited with enough to pay, but there's no equivalent for that in Fuel.

Anyway, we can add this feature later if there's a way to do it.

@Braqzen Braqzen added the App: Auctions Label used to filter for the app issue label Jun 24, 2022
@Braqzen Braqzen removed the Good First Issue Good for newcomers label Sep 13, 2022
@simonr0204
Copy link
Contributor

The mechanism described above should be possible soon when arbitrary calls become possible (see #22 )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
App: Auctions Label used to filter for the app issue New Feature New addition that does not currently exist
Projects
Status: In Progress
Development

Successfully merging a pull request may close this issue.

4 participants