-
Notifications
You must be signed in to change notification settings - Fork 11.7k
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
Bonding Curve aka Automatic Market Maker Contract #819
Comments
cc @maraoz for the rest of these questions? |
thanks @shrugs! One more note: |
I hadn't actually looked at those files, so now that makes a lot of sense. I like the |
Cool, yeah I like that too. Especially since Will get started with this approach unless anyone else objects. |
RE: license, I'm looking at this: https://softwareengineering.stackexchange.com/questions/297217/using-code-under-apache-2-0-license-in-my-program-using-mit-license Seems like the best thing to do is keep stuff from Bancor separate from the Zeppelin stuff. Seems like the best way to do it would be separate |
I can't really comment on the validity of any licensing approaches, but I like the idea of putting Power and Bancor stuff into apache compliance with a header and keeping BondingCurve under the Zeppelin license (MIT). Can you update the post at the top to describe the changes we've figured out (namely folder structure, which files are added, licensing) |
PR is in! Also note: there is a TODO to add a |
Closing due to staleness. Also, @balasan has proposed an alternative repository where this can be found. |
🎉 Description
I'm working on a PR to add a simple bonding curve contract (aka automatic market maker) based on Bancor formula. Here is the reference contract: https://github.com/relevant-community/contracts/blob/master/contracts/BondingCurve.sol
I have a few questions about structure and dependencies:
/token
? a separate/bondingcurve
folder?Planning on adding a
curation-markets
folder widthBancorFormula.sol
andBondingCurve.sol
. AddingPower.sol
function to themath
folder.BancorFormula.sol
contract with some fancy tricks to compute fraction exponents and comes along with python folder to generate constants and test them: https://github.com/bancorprotocol/contracts/tree/master/solidity/python Do we want to include this in the zeppelin repo or is it enough to link out to it?Extracting the power function into a separate
Power.sol
(licensed under Apache 2.0) file in the/math
folder.Renaming this to
Power.test.js
. The file is very lengthy — its iterating through all the constants generated via python — do we want to keep it?Adding a an Apache 2.0 License and modification notice to the
BancorFormula.sol
andPower.sol
files with links to the Bancor repo.👍 Other Information
Some background reading about bonding curves:
https://hackernoon.com/how-to-make-bonding-curves-for-continuous-token-models-3784653f8b17
https://medium.com/@simondlr/tokens-2-0-curved-token-bonding-in-curation-markets-1764a2e0bee5
and Bancor formula:
https://drive.google.com/file/d/0B3HPNP-GDn7aRkVaV3dkVl9NS2M/view
The text was updated successfully, but these errors were encountered: