This is a discussion thread for this proposal draft: https://github.com/aliatiia/YIPS/blob/master/YIPS/yip-add_trade_function_to_Ypool.md
WIP and contribution/feedback welcome, but here’s the gist for now:
public trade(input X, min_output Y) function is added to the Y facility. Anyone can call it to supply
X amounts of one stablecoin and receive at least
Y amount of another stablecoin. The quote provided is according to a stablecoin-optimized CFAMM curve. If the trade is successful, the Y pool is rebalanced if necessary. The effect on the pool yield-optimizing allocation is equivelant to having a batched transaction of
deposite(X) && withdraw(Y).
- Remove intermediaries between Y pool LPs and the trading fees they earn should they opt-in in the trading facility.
- Reduce extra-Y-protocol governance risks
- Y depositors who are also interested in trading fees should not have to absorb governance risk from this choice other than YFI governance risk.
- The incentives are aligned between YFI governors who are not participating in the trading facility and Y depositors who are, because the funds accessable by CFAMM still earns yield in the same manner than Y funds opting out of the trading facility are.
- Governance risk minimization: Y depositors should not absorb more governance risk than necessary. YFI governance suffices.
- Better UI/UX: opting-in to the trading facility is just a check box, not a whole dedicated frontend which adds confusion.
- Sustainability and incentive alignments: the fruits of network effects of the trading facilities is kept within the YFI ecosystem.