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

Buyback accounts #538

Closed
theoreticalbts opened this issue Jan 27, 2016 · 6 comments
Closed

Buyback accounts #538

theoreticalbts opened this issue Jan 27, 2016 · 6 comments
Milestone

Comments

@theoreticalbts
Copy link
Contributor

Buyback -- as returns to holders of an asset (see #452 and #524) -- will be implemented by creating a standard account with an extension and null authority.

The account will then act autonomously by reserving all of the asset it receives, and using all other assets to place a market order each maintenance interval to attempt to clear out the market. It will then cancel its order.

There are several desirable features to using an account in this role, as opposed to a new object:

  • Leverages already-existing maker-taker logic for walking the book.
  • Leverages already-existing account history UI to allow people to monitor the buyback program's actions.
  • Gives a meaningful account_id for market orders.
  • Bounded resources: The only network resources needed are the equivalent of one market order per asset per maintenance interval. An ordinary asset creation fee should be sufficient to cover this cost. Fee circumvention is not much of an issue as the other side of each trade will still pay fees.
  • Buyback objects cannot interact, so even if assets A and B both have buyback, only one buyback order will be active at a time, so the orders can't match against each other.
@xeroc
Copy link
Contributor

xeroc commented Jan 29, 2016

Am I assuming right that

  • everyone will be able to create such an account
  • everyone will be able to use such an account
  • the account has a set of predefined markets to sell its assets on?

@theoreticalbts
Copy link
Contributor Author

You're right, it will need to have a set of predefined markets of bounded size -- maybe 4? We just need to make it a parameter.

@abitmore
Copy link
Contributor

abitmore commented Feb 5, 2016

Why not the FBA:BTS market only? You got all fees in BTS. The FBA owners own only FBA. What are other markets?

@theoreticalbts
Copy link
Contributor Author

@abitmore : I designed this to be a general primitive which may be used for more than just FBA.

@theoreticalbts
Copy link
Contributor Author

Force-pushed new version based #566 which also doesn't suffer from #575

@theoreticalbts theoreticalbts added this to the next2 milestone Feb 16, 2016
@theoreticalbts
Copy link
Contributor Author

Implemented, merged.

pmconrad pushed a commit to pmconrad/graphene that referenced this issue Dec 22, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants