DOWGO / dowgo-token-contracts

repo for dowgo token contracts
0 stars 0 forks source link

Management & transaction fees (contract) #1

Open antoine-dowgo opened 1 year ago

antoine-dowgo commented 1 year ago

Lorsque l'on passe de la version Alpha à la Beta, pour que DOWGO puisse se rémunérer nous allons ponctionner un pourcentage de ce qui est investi via nos smarts contracts par les clients.

1 - Transaction fee

0.5% du montant investi par le contrat va être prélever lors de l'investissement par le client / achat des DOWGO Tokens. Pas de prélèvement lors de la vente (rachat par les détenteur de DOWGO Tokens).

2 - Management fee

0.75% du montant investi par nos contrats vont être prélevés mensuellement sur le cash restant sur le contrat = 0.0625% /mois. C'est le montant prélevé pour rémunérer le management de DOWGO SAS.

antoine-dowgo commented 1 year ago

Require to add Treasury variable on contract (admin only)

antoine-dowgo commented 1 year ago

@oscar-dowgo should these fees be fixed or should the admins be able to change them?

antoine-dowgo commented 1 year ago

and about the management fee:

0.75% du montant investi par nos contrats vont être prélevés mensuellement sur le cash restant sur le contrat = 0.0625% /mois.

this is a % of the target usdc reserve (10%) or of the usdc equivalent of the total supply?

oscar-dowgo commented 1 year ago

1- For the Beta Version, fees can be fixed. We will see for afterward for admins/DAO to be able to change them.

2- 0.0625% per month of the token's total assets under management. Take it every 1st of the month on the cash reserve of the contract.

antoine-dowgo commented 1 year ago

Calculating exact month periods might be a little gas intensive... OpenZeppelin is creating a DateTime util but I wonder what the gas cost is...

https://forum.openzeppelin.com/t/limit-nft-minting-by-month/17329/9 https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3255

If we are planning to deploy on Polygon that's not a big problem. Otherwise for the Beta, if we stay on mainnet, we could do weekly or every 4 weeks

antoine-dowgo commented 1 year ago

Another note on managements fees: Since the admin can withdraw USDC from the contract anytime they want, fees could completely be implemented off-chain. The point of putting them on the smart contract is for the sake of transparency and later to be integrated in a DAO.

So that's also something to think about in terms of what do we want to prove for the Beta

oscar-dowgo commented 1 year ago

1- we have to take into account that the beta will remain on the mainnet, so we have to minimize the costs: -> let take 0.0625% fee, every 4 weeks -> let implement off-chain fees for more flexibility and gas efficiency

2- after beta release, we will work on Climate Token and implement all futures to prepare for DAO -> Polygon smart contracts to reduce gas and increase token price accuracy -> on-chain everything : fees and governance

antoine-dowgo commented 1 year ago

Ok sounds good.

let implement off-chain fees for more flexibility and gas efficiency

For both transaction fees and management fees or only for management fees?

And then if we do off-chain fees, where do we store them? On a separate admin address?

antoine-dowgo commented 1 year ago

For both transaction fees and management fees or only for management fees?

imo it makes sens to have transaction fees onchain since they are on a per-transaction basis and not very costly and then have management fees off-chain since they on a monthly basis and dependant of the total supply at the first of the month. Still begs the question of where we store them... I think a separate admin address would make sens

oscar-dowgo commented 1 year ago

Ok

I think after launching the DAO:

X Token = DOWGO Beta / DOWGO Climate US / DOWGO Climate EU ...

to be discuss after Beta released

antoine-dowgo commented 1 year ago

Update from https://github.com/DOWGO/dowgo-scripts/issues/9

1% Transaction fee and NO Management fee