I sketched a design for a “minimalist” stablecoin: basically just a pool of ETH tranched into two types of tokens, the stablecoin “USM” + a leveraged-ETH/USD “FUM”, with create/redeem operations for both and that’s it.
This is a work in progress: the most interesting challenges so far involve 1. how much to charge for FUM when the pool goes underwater and 2. how to avoid the ETH/USD price oracle being front-run during real-time ETH price swings, or just manipulated. But I think it’s at least a base model anyone interested in stablecoins should understand.
"For a while I’ve had this question in the back of my mind and, inspired by projects I admire like MakerDAO and Uniswap, over the last week I took a crack at it. In this post I go over:
- The proposed stablecoin design, here called USM (“minimalist USD”)
- Its minimalist set of four operations:
mint
/burn
, which create/redeem the USM stablecoin, andfund
/defund
, which create/redeem a related “funding-coin”, FUM - The biggest design hurdle I hit, and my proposed solution
- A proof-of-concept implementation in ~200 lines of Python
This is really just for kicks, but a real-world implementation could be cool too as long as it doesn’t lose shitloads of innocent users’ money."