Hi @Pinotio.com, how is the “fiat-USD” portion supposed to be recorded? If I buy CELO with USD on Coinbase, am I supposed to link to that transaction? Thank you~
Hi @thezviad,
If every proposal to exchange assets requires a complex evaluation of proposals, I don’t think many partners like Deutsche Telekom or PayU would use Granda Mento. It also seems centralized like filling out a KYC form for official review to swap on Uniswap.
Hi @0xhuman, @thezviad, @Pinotio.com, @Nadiem @victor,
Thanks for all your comments (trying my best to respond above!)
Alternative Solutions:
1)If these two proposals (CELO <> cEUR & CELO <> cUSD) were simplified to one CELO <> cUSD proposal with just 100k CELO transacted at current market prices, would you be supportive?
AP Grant Foundation Company won’t suffer if this proposal doesn’t go through, cUSD/cEUR will be transacted via mento bots (GitHub - celo-org/celo-exchange-bot) each 5 minutes to acquire cUSD/cEUR for grants (causing slippage for normal users), but I worry that we won’t have a precedent/blueprint to provide partners (happy for others to create their own Granda Mento proposal to get the ball rolling!!). For AP Grant Foundation Company and Celo Foundation, unlike partners in the Celo Ecosystem, funding is primarily from CELO (value created accrues to CELO), so there isn’t much choice to use “new capital” unless…
2)AP Grant Foundation Company could sell CELO on exchange A, buy it back on exchange B and then link to that fiat → CELO purchase as “new capital” to demonstrate how it can be done to others?
As mentioned, I’m okay with just giving up on these proposals (inconsequential as can use mento bots), but I don’t think it’s a great precedent for partners looking to try out Granda Mento. Note, unlike for AP Grant Foundation Company, these partners don’t have their funding coming primarily from CELO, so they would be primarily “new capital.” That said, I think it’d be nice for them to know that they can use the service in any direction (cUSD/cEUR → CELO or CELO → cUSD/cEUR).
Let me know what you think about #1 and #2 above. If no interest in #1 or #2, consider the proposal deleted/deprecated and won’t be proposed via celocli (which is perfectly fine and no offense would be taken).
Thank you!
Isn’t the easiest way to do this?
- continuously use programmatic sell to exchange CELO → cUSD / cEUR, and don’t just use mento, use all of the DEX routes (via swappa)
- once you have converted it all to cUSD / cEUR, then use Granda Mento to swap cUSD / cEUR to fiat
Granda Mento doesn’t take on the responsibility of pricing what is the “right” exchange rate, the market does that.
You get a simple lump sum transfer from cUSD/cEUR to fiat, in one Granda Mento conversion.
Thanks @alexcelo for replying in detailled.
Option 1) would still be incompatible with Granda Mento focusing on USD → Celo → cUSD as per the original discussion of Granda Mento: Discussion on Granda Mento: Enabling Larger Stablecoin Mints - #40 by trevor
In theory, I think you could do option 2 (although it seems complicated for foundations) but again I don’t think would be in the spirit of Discussion on Granda Mento: Enabling Larger Stablecoin Mints - #40 by trevor .
I also echo @thezviad 's point that the multisig should be a simple check, which is doable when it’s USD → CELO → cUSD. Yes, this does require the proposer to share evidence of the fiatUSD → Celo transaction and aggregate price.
I do think there is a good - separate to Granda Mento - discussion to be had on how to reduce Mento slippage because of using x*y=constant (e.g. move to a Uniswap v3 approach or an order book type DEx). There’s also a related discussion on how to size the portion of the reserve that is used for exchanges (a tricky question that involves reserve security too).
True, it is a bit unlucky that the proposals that are meant to be a showcase are not representing the intended use case. Option 2) is an okayish solution in my opinion.
Generally, we can learn a few things from the discussion:
- The roles of the multisig members needs to be defined clearly.
- Only 2-3 members of the multisig participated actively.
- The review of a proposal takes long. (Due to some open questions, I agree)
- If we want to require fresh liquidity as a condition, this could be something which is verified and confirmed by the multisig acting as an underwriter.
- The privilege to bypass the open market that is granted by Mento is huge. Hence, there is reluctance to grant it easily. Maybe we can find a way to reduce the exclusivity of Granda Mento and make it truly accessible to anyone.
There is no place anywhere you can sell 1 million CELO and not affect other users. If you market sell it on CEX you are going to tank the price of CELO, if you are going to slow sell 1 million CELO on CEX you are going to tank the price in that case too.
That is the whole point. There is no way to sell 1 million CELO without it affecting other users and Granda Mento shouldn’t be used to circumvent that.
No slippage on large USD<->cUSD trades is ok-ish (for super large amounts even that is questionable). However, no slippage on large CELO<->cXXX trades is completely unreasonable. You shouldn’t be able to “silently” liquidate 1 million CELO and not affect its price.
Option #2 is definitely reasonable. I think you will easily see that you won’t be able to do that with 1 million CELO, since there is no liquidity to sell 1 million CELO and it will instantly make this whole proposal much smaller in amounts.
OR alternatively you will have to slow sell on CEX, but at that point might as well slow sell on Mento. Because there is very tight arbitrage between Mento and CEX, it really doesn’t matter too much where you sell. But both cases will cause downward price pressure on CELO and its price will likely decrease because of this. Which is expected and what has to happen if you are liquidating 1 million CELO with current liquidity depths…
Well, I think this is something that happens in traditional markets. Big institutional players always try to get secret deals OTC or use dark pools if regulation is loose. But then, is this something we envision for the financial ecosystem we are trying to build.
If Proposer can find an entity that is willing to buy 1,000,000 CELO for 6,450,000 USD* than that would also be a valid way to use Granda mento.
- First, make private OTC deal to sell 1M CELO for whatever price you find the buyer for.
- Use the USD* that you acquire to buy CELO on open market.
- Submit Granda Mento proposal to convert CELO->cUSD at the price that you acquired it on open market.
This still is fine, because it at least shows that there is some buyer for CELO at the price that you sold at, but more importantly, real new USD* has entered the CELO market so converting it to cUSD is fine-ish.
The reality though is that those OTC deals are generally discount deals. The slippage free part and the discount is generally for the buyer not for the seller.
While I wasn’t involved in the discussions for the CIP, based on the Granda Mento CIP, it looks to me that the community approved Granda Mento for CELO → stablecoin mints. Even though I agree with the sentiment expressed by several people here that fiat>CELO>stablecoin makes more sense for the community, it seems like these proposals are in line with what the community approved, so I’m inclined to approve.
@thezviad you have a lot of context on the development of Granda Mento, so I’m interested in hearing your thoughts in particular in case I’m missing something.
As a heads up, I am traveling for US Thanksgiving and will not be at my computer regularly through EOW, but I will aim to check this thread again tomorrow night.
I am not sure where the wording changed between what we discussed vs the CIP, but here is @trevor summarizing our last video call discussion:
Quote: "Granda Mento is designed to focus on (1). “, which is: " 1. Those who own significant amounts of USD and wish to mint cUSD”.
This was the most important part of all Granda mento discussions. I didn’t pay as much attention to wording in the CIP since I assumed we all had come to very clear conclusion on Granda Mento purpose and usage.
Hi @trevor,
Can you please weigh in here? To @willkraft’s point, the CIP seems to say, "Granda Mento is a mechanism to facilitate large CELO <-> stable token (e.g. cXXX) exchanges…
Again, I’m perfectly okay rescinding this proposal, but we should update the docs to be clearer on the intended use… the proposal seems to be consistent with what’s written in Github?
"
Simple Summary
Granda Mento is a mechanism to facilitate large CELO <-> stable token (e.g. cXXX) exchanges that aren’t suitable via Mento or OTC. A new contract is created that can exchange CELO <-> stable token
for any stable token Governance explicitly enables. …
Abstract
…Granda Mento is a proposed mechanism for large volume stable token exchanges, primarily to enable minting of large quantities of stable tokens."
Hi @diwu1989, who exactly would send the fiat and how? If it touches fiat, there’s a centralized entity (e.g. KYC, etc.) involved in which case it seems that an OTC transaction with Amber, etc. would be easier/better. In my mind, I thought Mento+Granda Mento, is supposed to fulfill on-chain (“decentralized”) transactions.
Thanks for the context - that’s fair, let’s see what Trevor says. Your comment jogged my memory, and I do remember Granda Mento being sold as a way for large institutions to be able to get a lot of cUSD (which is consistent with the quote in your post).
@trevor - it’d be great to understand if there was a shift in intention that we’re not aware of.
As a heads up, I will not be close to a computer the next few days, but you can ping me on discord if needed and I should see it. Based on where we’re at right now, if needed to move forward, I’d prefer to decline unless there was a good reason for the difference between how Granda Mento was described and how it was documented in the CIP. I’m imagining it was just a simple oversight—someone may have been in a hurry to write it up and didn’t realize the implications in the moment, and then Alex & team understandably based this current proposal on that documentation—and it’d probably be best to decline this proposal and get Granda Mento back on track.
Hi everyone, sorry for the delay in my response! I’m happy to see so much discussion on the intended use of Granda Mento.
The callouts are correct that CIP-38 doesn’t seem to accurately reflect the intended use outlined by the summary of one of our initial discussions. This was an unintentional omission and was definitely an oversight on my side (likely due to the focus of the CIP being on the technical implementation & a number of months elapsing between initial discussions → launch), thanks everyone for bringing this to attention.
From this discussion it’s obvious that the intended use of Granda Mento isn’t clear & we need to make this more clear, especially following this discussion – otherwise, I doubt many people will feel too confident in using Granda Mento (which could be especially important if someone needs to first trade USD* → CELO).
Because many of the conversations around Granda Mento described it as a mechanism for USD* → CELO → cUSD conversions (like this thread), at the moment I think it’s most fair to the community and the approver signers to continue to think of that as the intended use.
While the initial discussions did call out plain CELO → cUSD exchanges as not intended for Granda Mento use, I still think it’s worth considering how future proposals like this one should be treated, because the cUSD from this proposal would directly benefit the Celo ecosystem. I’m perfectly happy if it’s decided that all genesis CELO → cXXX conversions aren’t desirable, but figure it’s worth coming to an explicit conclusion for the future.
So I’m suggesting that:
- For now we consider this exchange and the accompanying cEUR one as not approved.
- We come up with a public list of acceptable “types” of exchanges that will very likely be supported for Granda Mento use, and any additional criteria they must satisfy. We could start with USD* → CELO → cUSD exchanges that give proof of the USD* → CELO exchange, but we could even more clear with the expectations of these types of exchanges-- e.g. how recently / at what price should the CELO have been purchased? I think there are other cases that can help cXXX liquidity that would also not fit the fiat → CELO → cXXX requirement-- e.g. what if an entity with genesis CELO wants to use Granda Mento to purchase a newly supported cXXX coin for the purpose of lending to market makers, thus helping establish liquidity?
What do others think? If a list like this is desirable, how can we come up with this list so that it’s satisfactory for everyone?
Thanks @trevor . I agree.
As a first step, I think we should just clean up the approved proposal to make the *USD → cUSD use case clear and reflecting the discussions that were had.
Any further updates and use cases I would think we should probably break off into another CGP.
on making it clear that Granda Mento is for USD* → cUSD conversions (or STB → cSTB for any other stable).
As for discussion of just selling CELO → cSTB we should move that to a separate thread/cgp/etc. From my point of view, that is a really murky discussion and I am generally against it. As a food for thought, “if it is good for the community” why not just mint cSTB assets without even selling any CELO? You can quickly see how it enters “central bank” like domain where new money is printed without true free market participation. As an example, during the cEUR launch, we did just mint 5 million cEUR out of thin air to kick start its liquidity. It didn’t really need any Granda Mento to do such a thing, so it is always possible to mint cSTBs with just governance proposals without having to use Granda Mento for that.
Although it’s not relevant for the topic of the thread, you can make a point that CELO <> cUSD via Granda Mento is actually not the same as liquidating CELO on the open market (CEX, DEX, OTC, whatever).
The reason is because of the narrative of cUSD, if cUSD wins, IMO, a big chunk of the supply should be held by people that simply believe that 1 cUSD = $1, and are not looking to arbitrage it, nor they they even know how. They will have it in their wallet and simply buy goods or save with it. They may also not willing to liquidate it for less than $1, because it is not supposed to be volatile.
If they liquidate bellow $1, yes, it’s equivalent of just selling Celo. But if they don’t and they used to transact within the ecosystem, then there’s some sort of leverage that builds up. I say “leverage” because in case of a undercollateralization risk, then the problem gets bigger with the more cUSD outstanding vs total reserve assets.
And I think that you could also claim that exchanging via Mento vs Granda Mento is the exact same thing, only that with Mento you pay slippage, spread and you take liquidity shared by the whole community, but it is fundamentally the same thing from a mathematical perspective.
When you trade with Mento, other market participants can trade against you. When you trade with Granda Mento, you are bypassing free/open market.
The arguments that you apply here, can also apply to just minting cUSD with no extra backing. As long as it fits with over-collateralization percentage, what would go wrong? I.e. mint just extra cUSD till collateralization hits 4x or 3x and distribute it?
It is the same arguments that would work against it, as it would for why allowing CELO->cUSD with a statically chosen price is a bad idea. CELO->cUSD conversion price needs to be determined by free/open market.
There are alternative ways to allow for reserve to “buy” large amounts of CELO with open market participation, or to allow users to sell large amounts of CELO. Easiest is to have implementation of limit orders or limit auctions. We can have a mechanism where Reserve opens a large “buy” limit order. It can be regular limit order, it can be all-or-nothing limit order, it can also be more in auction style. There are many options for that, but big difference is that they would be available to all participants so reserve gets the best price when it “buy”-s CELO and mints cUSD.