Idea Summary: For the purposes of this submission, I will refer to fixed supply AMPL as fAMPL.

Currently there exists no derivatives product for AMPL other than the FTX AMPL-PERP, which is settled in USD, not AMPL.

On top of this, even though AMPL is rank #84 on CMC, outside of trading on a dex, it is only listed on FTX, Bitfinex, Hotbit, Gateio, MXC, and XT. Along with that, it is not possible to trade AMPL on such exchanges during the time of rebase.

The reason for this is that it is very difficult/cumbersome for people to interact with AMPL off chain, as it rebases. Along with this, Dervivative DEX protocols which specify fixed amounts of coins to be settled or transferred do not work with AMPL.

fAMPL is ampleforth with a fixed supply, that is, during a rebase, 1 fAMPL will still be worth what 1fAMPL was worth beforehand.

Idea Implementation/Execution:

I have a mock draft of how such a smart contract would function. It is easier to explain while having numbers to look at. Assuming that fAMPL & AMPL are both 0 decimal coin (as decimals don’t really exist for erc20s), and the circulating supply of AMPL is 1,000

One would then call the fAMPL smart contract with the function to fix, for instance, to fix 100 AMPL, one would call: fix_ampl(100)

The contract now has 100 AMPL. Within the contract is stored a number I will call the divisor. This number is initiated at smart contract creation and never changes. For now, let us say that the divisor is equal to 1e18.

The user will then receive amount*(total ampl supply)/divisor, or in this case, 100*1e18/1000, or 1e17 fAMPL. Of course one must ensure that precision is maintained when doing the math in solidity. I believe, given the 256bit integer limit, that the supply of AMPL will never increase to a certain point where fAMPL total supply will overflow.

Now let us say a rebase happens, and the current circulating supply of AMPL is now 2,000. The contract will now have 200 AMPL within it. The user can then call a function such as unfix_fampl(1e17), remembering that the user received 1e17 fAMPL. The user will then receive amount*divisor/(total ampl supply), or 1e17*2000/1e18 = 200AMPL.

fAMPL, as you can see, gives one exposure to the market cap of the coin. This allows for 24/7 trading, along with the potential for products like futures and options for AMPL, since 1 fAMPL is always equal to marketcap/supply of AMPL. This should make exchange listings much easier, and allows AMPL to easily integrate into currently existing DeFi platforms, as they will not need to change any code in order to incorporate AMPL into their ecosystem.

I see this as a way to not only increase accessibility to AMPL, but also lead to at least being able to get AMPL on some lending platforms in the shorter term.

Budget/Cost: I am not really sure what the cost of this project would be.

I have currently developed a very basic prototype of the contract and would love to work with people on it. I would not mind developing the contract for free.

eddy Unselected an answer October 24, 2020