Allocation and release
The total DEF token supply will be limited at 1 Billion. This does NOT mean that this limit will be reached. It will be up to the governing board (which is controlled by the DEF token holder) to decide whether distribution should end before this limit is reached.
Deffect means a flexible and agnostic primitive DeFi. Due to limitations such as gas approximation and mathematics, there are a number of limitations incorporated in the protocol.
Rule compliance: Generic tokens must obey the rules. The smart contract doesn't support returning “pools” to transfer and switch “from”. There is no upgrade mechanism in the contract to allow token upgrades. Any upgrades will need to be manually coordinated and transferred to new pools
A functional pool must contain at least two tokens. (If the pool creator can delete the tokens, then it is possible to delete all of them and have one or not, but of course it is not possible to swap if there is only one token and it is not possible to restore the pool 0 tokens.
The maximum number of tokens that can be in a given 900.000.000.
The maximum swap rate of 0.50 means users can only swap below 50% of token's current balance for a given pool.
The maximum swap rate of 1/3 means users can only swap below 33.33% of tokenOut's current balance for a given pool.
There is a minimum swap fee of 0.0001% (or one percentage base point) against any adverse pool rounding.
This is to prevent malicious pool controllers from placing beneficial transaction fees. (Example: a pool controller could pre-run a large transaction and set a 99% fee.)
The minimum balance of any tokens in a pool is 10 ^ 6 wei. Important: this is inconsistent with the token's decimal and can cause issues for codes with less than 6 decimals. Also note that this is only enforced on the original token binding. Future exits could bring the total account below the minimum balance threshold and the user should be aware of potential rounding errors.
Core Deffect Pools has a fixed initial token supply of 100 (i.e. the DLPT represents the pool's liquidity stake). Smart pools allow the pool creator to specify the initial supplies within these limits.
The official release is the first of the 3 planned releases of the Balanced Protocol. At the same time, emphasis is on clarity of code for inspection and verification, and not going too far to optimize for gas.
Similarly, configurable Smart pools have better functions that return the version of the Smart Pool Manager Library, Rights Manager, and Safe Math to which they were associated when deployed. Of course, you can also access the underlying Core Pool controlled by Smart Pool and call getColor () on it.
Deffect's configurable right pool is a reference implementation of a Balanced Rights Pool controlled by a smart contract. It's flexible enough to be used directly to create a customizable Smart pool. Like Core Pool (Dpool), it's created from a factory and as the name implies, its functionality can be customized to meet the needs of your project.
It is also designed to be easily extensible, and we introduce Examples of the configurable Rights Pool extension in Smart Pool Templates, Smart Pool Templates. These are projects with specific needs and custom logic that need to override and change core functionality.
Smartcontract display addresses will be updated after the project is publicly developed
As explained in the Core Concept, the core parameters of the Deffect Pool can be changed at will while in a “controlled” state - when only the pool creator can add liquidity. The only way to “open” the Pool for outside investment is to “finalize” it - then all Pool parameters are fixed. This is great for minimizing trust and security - but if you want to do a liquidity boot, dynamically adjust swap fees, handle tokens with unique attributes (such as AMPL), or do Complex investment strategy? For that, you'll need to change dynamic parameters on “live” pools - and that requires Smart Pools.
In summary, the Core Pool has “all rights” when controlled, and “no rights” once completed. A configurable right pool has any rights you give it, at any time. So, what are these rights?
Designed to be easily extensible (for example, the method signature doesn't change as more rights are added). Take a look at the current set of rights and how they can be applied to real-world use cases.
Allows the controller to pause transactions (swaps) on the underlying core pool. Like the mature core pools, Configurable Rights Pools are created when transaction is enabled. With the swap pause, the controller (or logic in the smart contract) can enable and disable the transaction. For example, a controller may want to “shorten” the contract under certain medical conditions, such as a market crash.
Swap fee changes:
Allows the controller to change the Swap Fees after the execution of the contract, within the limits set by the underlying core team (e.g. it cannot be zero or greater than 10%). With this right, cost optimization strategies can be implemented (e.g. maximizing profits or minimizing irregular losses).
The controller can call updateWeight (to directly update the weight of a token) or updateWeightsGradently (to linearly convert a set of weights over time). This allows for liquidity initiation, UMA-style perpetual synthesis and many other strategies. Note that changing the weight will change the balance.
Allows the controller to change composition of the pool. Needless to say, this requires a lot of trust in Smart pool owners, but allows for strong strategies, especially in conjunction with other rights. For example, permanent “rolling” synthesis. Adding tokens is a two-step process to minimize this risk and reduce the required reliability. Protocol issues an event when the token is “committed” (about to be added) and executes a minimum wait time before the controller can “apply” (actually add) the token.
When this right is enabled, no one can add liquidity (including the controller, other than the initial pool creation), unless the creator adds them to the whitelist. This allows private investment clubs to launch exclusive tokens, v.v.