xSigma stablecoin pool has attracted over 400m$ of volume over the first four months. It also has clocked more than 600m$ of total deposits, making the total processed volume over 1 billion $! All these pool interactions has helped to accumulate more than half a million dollars in the form of fees. Exiting swap fees are 138k DAI, 211k USDC and 264k USDT.
However, we need to deploy new pools, which are able to spend swap fee for SIG burn. For this, we need to move liquidity from current one. Before that, the existing accumulated fees will be donated to the existing LPs. As we do that, each SIG-LP token will instantly contain about 6% more stablecoins, earning instant return on the capital.
This bring a question of when to execute this action.
Initial obvious solution would be to announce a date and time beforehand and then drop the fees. This is wrong on two levels: first, the fees were accumulated thanks to the previous LPs, not the current; second, people will only have incentive to join right before the date and leave right after the drop, which doesn't bring any value to xSigma DEX.
What would work better is to announce a date, and then start rolling a dice over a course of a month, and when the dice lands on six, make a drop on that date. That particular day would have an instant return on capital of about 6%, which is equivalent to 2190% APY.
This is better from a system view, but the community might be worried that the dev team can lie about the dice results to pursue their own incentives. Thus, we need to have a dice that is both random for community and untamperable by the team.
We use Chainlink VRF™ as a means to create a random process not controlled by anyone. The random dice will be thrown each 24 hours by anyone willing to do so. The "dice" has 42 faces, and whenever it lands on the "7", the game will end and we will distribute the fees instantly. With these parameters, the game will end in 30 days with 50% probability (proof) and in 124 days with 95% (proof). The distribution will happen manually, but the process of determining the exact day will be untamperable and free.
To produce true randomness, user who rolls the dice needs to provide an unpredictable seed. For this, we have an input on the frontend – you can choose any value, as long as the miners and the oracles wouldn't be able to guess which value you have picked. Bonus point: choose your favorite number to be captured forever in the Randomized Payout hall of fame!