Skip to content

Parity Stability Module to allow direct trading of stable currencies with RUN #4663

@dckc

Description

@dckc

What is the Problem Being Solved?

We don't currently have support for trading stable currencies in our AMM. An interim approach would be to allow them to be traded using the x*y=k curves we currently have, but that means we should think about the upgrade path to move them to something better.

Description of the Design

Various possibilities were discussed (@Chris-Hibbert @dtribble, folks from RMIT) in a meeting on Feb. 23.

Progress is being made on a stable swap mechanism that would allow various stable coins to trade against one another with low slippage.

There's a plausible design idea for integrating this with the AMM. When a trade is proposed between two coins participating in the stable curve, it's treated as a single pool by the current virtualPool framework. If a trade is proposed between a stable coin and something else supported in the AMM, it's treated as a doublePool trade (from X to RUN and RUN to Y). I think pool fees are charged inside each pool and protocol fees are charged outside, so this should continue to work.

It would be nice if we could declare that some stable coins (like USDC) are stable enough that we can issue unlimited RUN against them. In this case, we need another contract that accepts USDC (perhaps up to some limit) and mints new RUN against it. It would also be able to trade in the reverse direction, up to the amount of USDC it holds or some lower limit we may impose. To the limit of its balances, this would ensure parity between RUN and ultra stable tokens.

Another idea we considered was to use the stable curve implementation to support trading among various mutually stable currencies, like WETH and other bridged ETH equivalents. It's not obvious how to integrate this into the AMM, which uses RUN to bridge between other currency pairs, but this might be a useful additional institution.

Security Considerations

The implications are more relevant to economic stability than to software security.

Test Plan

the current state isn't clear enough to speculate about testing yet.

Metadata

Metadata

Assignees

Labels

Core EconomyOBSOLETE in favor of INTER-protocolInter-protocolOverarching Inter ProtocolenhancementNew feature or request

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions