$TPRO Pool
Last updated
Last updated
Innovative Liquidity Pool with Impermanent Loss protection and Yield generation.
The TPRO Network has developed a innovative liquidity pool system designed to maximize support for all network participants. This innovative approach optimizes earnings for liquidity providers, reduces impermanent loss, and enhances the system’s resilience to market fluctuations.
The 80/20 Weighted Liquidity Pool, pioneered by Balancer, lowers entry barriers for liquidity providers, driving higher Total Value Locked (TVL) while minimizing impermanent loss. The Dynamic Fee Mechanism further boosts profitability by optimizing fees generated from the pool, and an Impermanent Loss Protection mechanism ensures additional security for liquidity providers, significantly enhancing the overall yield from investments.
All of the information presented is at the in progress stage, so the final technical implementation could change.
The TPRO Network team evaluated four different types of Balancer pools to optimize liquidity management and ensure economic efficiency. The pools under consideration were as follows:
Standard 50/50 Pool - A classic Balancer pool where liquidity is equally distributed between two assets, providing balanced exposure and straightforward liquidity provisioning.
80/20 Weighted Pool - A pool with an asymmetric weight distribution, designed to minimize impermanent loss for a primary asset while still enabling efficient trading and liquidity. This structure is particularly suitable for projects aiming to support a dominant asset.
Multi-Asset Pool - A flexible pool that can support multiple tokens with custom weightings. It offers a diversified approach to liquidity management, allowing for broader asset exposure within a single pool.
Boosted Pool - An advanced pool that integrates with external yield protocols (e.g., Aave) to generate additional returns on idle liquidity while maintaining trading efficiency. This approach combines liquidity provisioning with yield optimization.
The TPRO Network team carefully evaluated four different types of Balancer pools to optimize liquidity management and ensure economic efficiency. After thorough analysis and simulations, we selected the 80/20 Weighted Pool as the optimal solution.
This pool offers a modern and secure approach to liquidity provisioning, addressing key challenges faced by liquidity providers:
Reduced Impermanent Loss: The asymmetric 80/20 weight distribution minimizes the impact of price volatility on the primary asset, ensuring a safer environment for liquidity providers.
Lower Entry Barrier: The reduced requirement for reserve contributions makes it easier for participants to become liquidity providers, increasing accessibility.
Increased Attractiveness: By offering enhanced security and efficiency, the 80/20 Weighted Pool provides a compelling alternative to traditional liquidity models.
Furthermore, the 80/20 Weighted Pool is designed to increase the Total Value Locked (TVL) within the liquidity pool, surpassing the current performance on Uniswap. This makes it an innovative and appealing choice for both the project and its community of liquidity providers.
The implementation of this pool underscores our commitment to fostering economic efficiency, accessibility, and safety in liquidity management.
The dynamic fee mechanism in the liquidity pool aims to create a more efficient, fair and secure trading environment. Unlike static fee models, this mechanism adapts to changing market conditions, providing flexibility to the system.
The primary objectives of the dynamic fee mechanism include:
Fairness in Fee Structure: By calculating fees separately for buy and sell transactions, the mechanism addresses the distinct dynamics of each trade type. This ensures fees are proportional to the market impact of individual transactions.
Adaptability to Market Volatility: The system incorporates market volatility into its calculations, adjusting fees based on the volatility of Ethereum. During periods of heightened volatility, fees increase to mitigate risks, while in stable conditions, fees decrease to encourage trading activity.
Protection for Liquidity Providers: The dynamic fee mechanism shields all liquidity providers by increasing their income when impermanent loss rises due to volatility. Additionally, part of the collected fees funds a dedicated protection mechanism for providers who are most concerned about impermanent loss, further reducing their risk.
Support for Ecosystem Stability and Growth: By balancing the interests of traders and liquidity providers, the dynamic fee system fosters a sustainable ecosystem. Traders benefit from context-aware fees, while liquidity providers gain assurance of fair compensation and additional protection.
This dynamic approach ensures that the fee structure evolves with market conditions and participant behavior, creating a fair and adaptive framework. The hedging mechanism for impermanent loss, which complements the dynamic fee system, is discussed in detail in a separate section.
The table below shows the key parameters of the dynamic fee mechanism. Table 1. Dynamic Fee Parameters
Parameter
Description
Value
min_fee_buy
Minimum fee on $TPRO token purchase transaction.
0.01 (1%)
max_fee_buy
Maximum fee at the transaction of purchase of $TPRO.
0.05 (5%)
min_fee_sell
Minimum fee at $TPRO sale transaction.
0.01 (1%)
max_fee_sell
Maximum fee at the $TPRO sale transaction.
0.1 (10%)
min_price_tolerance_buy
The percentage change in the $TPRO price that triggers the raising of the fee on purchase transactions.
0.2 (20%)
max_price_tolerance_buy
Percentage change in the price of the $TPRO token, beyond which the maximum fee on purchase transactions.
0.5 (50%)
eth_price_min_tolerance
Percentage change in the price of ETH that triggers the mechanism for raising fees on sales transactions.
0.07 (7%)
eth_price_max_tolerance
The percentage change in the price of ETH, after which the maximum sales transaction fee is charged.
0.15 (15%)
eth_component_weight
The weight of the component reflects the volatility of the ETH price throughout the fee for sale transactions.
0.5 (50%)
min_price_tolerance_sell
Percentage change in the price of the $TPRO that triggers fee raising on sales transactions.
0.01 (1%)
max_price_tolerance_sell
The percentage change in the price of the $TPRO, beyond which the maximum fee on sales transactions.
0.05 (5%)
protection_fee_rate
The portion of the fee that is charged on from the collected fee on protection mechanism.
0.2 (20%)
Based on the above parameters, the mathematical specification of the mechanism is defined.
The mechanism for dynamic fee adjustment is divided into several components. The first component handles the fee for TPRO purchase transactions. Two key metrics are defined to support the mechanism, calculated using the following formulas:
Formula 1. Dynamic Price Thresholds for TPRO Purchase Transactions
where:
Based on these key metrics, the fee for TPRO purchase transactions is calculated as follows:
Formula 2. Dynamic Fee for TPRO Buying Transactions
where:
The chart below illustrates an example of how the fee value varies with the TPRO price.
Figure 1. Buy transaction fee.
In the case of the fee for TPRO sales, the mechanism is more elaborate. Its first component works on a similar basis. Based on the parameters and the average price of the previous day, the following metrics are determined:
Formula 3. Dynamic Price Thresholds for TPRO Sale Transactions
where:
These key metrics are used to determine the first component of fee.
Formula 4. Dynamic Fee for TPRO Sale Transactions Based on $TPRO Price
where:
Figure 2. Sale transactions fee (price component)
The second component of the fee for selling TPRO is influenced by fluctuations in the ETH price over the past 7 days. To account for this, the fee is calculated based on these price changes as follows:
Formula 5. Fee Adjustment Based on ETH Price
where:
This component is subject to specific limitations, outlined in the formula below:
Formula 6. ETH Price Component of the Fee for TPRO Sale Transactions
where:
Figure 3. Sale transactions fee (ETH component)
Considering both components, the final fee for TPRO token sales is determined using the following formula:
Formula 7. Dynamic Fee for TPRO Sale Transactions
where:
Formula 8. Fee Allocation for ETH pool in the Protection Mechanism
where:
A similar mechanism occurs for sales transactions, where a TPRO fee is charged. This division is determined by the following formula:
Formula 9. Fee Allocation for TPRO tokens pool in the Protection Mechanism
where:
The protection mechanism is a key feature of the liquidity pool, offering additional safeguards against impermanent loss for liquidity providers.
Key aspects of the mechanism include:
Fee-Based Funding: A portion of the fees collected from the dynamic fee mechanism is allocated to the protection mechanism, ensuring consistent funding for collateral payouts.
Token-Based Participation: Liquidity providers can deposit additional TPRO tokens into the collateral pool. These deposits represent shares in the pool, and the provider’s participation is determined by the amount of TPRO deposited, regardless of the liquidity they initially contributed.
Flexible Withdrawal with Lock-In Period: Deposited TPRO tokens can be withdrawn at any time but are subject to a 14-day lock before they can be collected. Previously accumulated collateral remains intact even after TPRO tokens are withdrawn.
Coverage of Impermanent Loss: When liquidity is removed, the mechanism calculates impermanent loss as the difference between the value of the liquidity pool and a hold strategy. The collateral is used to offset all or part of the loss, compensating liquidity providers.
Management of Excess Collateral: If the collateral collected is greater than the calculated loss, the excess is redistributed. A portion of the excess is allocated as a success fee for the creators of the mechanism, while the remainder is returned to the collateral pool to benefit other participants in the program.
This protection mechanism minimizes exposure to impermanent loss while fostering a collaborative and incentivized environment for liquidity providers. Its efficient handling of surplus collateral and performance-based fee structure ensures alignment between creators and participants, promoting trust and long-term engagement.
Table 2. Impermanent Loss Protection Mechanism Parameters
Parameter
Description
Value
success_fee
Part of the unrealized protection for the liquidity provider charged as remuneration on effective protection against impermanent loss.
0.1 (10%)
Based on the above parameters, the mathematical specification of the mechanism is defined.
Formula 10. Accumulated Protection Fees in ETH and TPRO
where:
Formula 11. Allocation of Protection Pool to Liquidity Providers
where:
As long as the liquidity provider remains active and the collateral is not utilized, these funds remain secured for the provider and continue to accumulate throughout the entire period their TPRO are locked in deposit.
The withdrawal of TPRO and ETH designated for liquidity providers within the protection mechanism occurs only when the user removes liquidity.
Initially, the portion of liquidity being withdrawn by the user is determined. To achieve this, a variable is calculated to represent the proportion of the user's total liquidity being withdrawn:
Formula 12. Withdrawal Ratio for Liquidity Provider
where:
Formula 13. Liquidity Provider's Estimated Hold Position
where:
The next step is to calculate the liquidity provider's position, which takes into account the assets withdrawn from the pool and the fees charged. During the liquidity withdrawal process, the entire fee charged to the liquidity provider is allocated. In addition, the system tracks the total fees paid since the user last withdrew liquidity. The lp position is calculated as follows:
Formula 14. Liquidity Provider's Position
where:
Using the estimated hold position and the liquidity provider's position, the loss incurred from providing liquidity, as opposed to simply holding TPRO and ETH, is calculated. This calculation is expressed by the following formula:
Formula 15. Liquidity Provider's Loss
where:
Once the user's loss is determined, the process of collateral payout begins. This payout occurs only if the calculated loss is greater than zero. A negative loss value indicates that the liquidity provider has not experienced any loss relative to their hold position, and therefore, no compensation is issued. In order to disburse funds, the following metrics are defined:
Formula 16. Value of Protection for Liquidity Provider
where:
The liquidity provider receives both TPRO and ETH, with the amounts of each asset calculated using the following formula:
Formula 17. Received Protection for Liquidity Provider
where:
Since the mechanism aims to offset the loss relative to the hold position, the amount of TPRO and ETH received may exceed the loss incurred. In such cases, a surplus is calculated, which is then split into a fee for the creators and a contribution to the protection pool. The surplus for both TPRO and ETH is determined using the following formula:
Formula 18. Protection Surplus
where:
Based on the surplus, a fee for the TPRO Network is calculated. The calculation is performed as follows:
Formula 19. Success Fee
where:
The remaining surplus is allocated to two pools within the protection mechanism and will be distributed among all liquidity providers in the future. Fee for protection pools from surplus is calculated as follows:
Formula 20. Surplus Protection Fee
where:
is the TPRO price that triggers the raising of the fee on purchase transactions,
is the price of the TPRO, beyond which the maximum fee on purchase transactions,
is the average TPRO price over the last 24 hours preceding the update fee,
is a parameter describing the percentage change in the TPRO price that triggers the raising of the fee on purchase transactions,
is a parameter describing the percentage change in the price of the TPRO, beyond which the maximum fee on purchase transactions.
is the fee applied to a TPRO buying transaction,
is a parameter describing the minimum fee applied to TPRO buying transactions,
is a parameter describing the maximum fee applied to TPRO buying transactions,
is the current price of the TPRO,
is the TPRO price that triggers the raising of the fee on purchase transactions,
is the price of the TPRO, beyond which the maximum fee on purchase transactions.
is the TPRO price that triggers the raising of the fee on sale transactions,
is the price of the TPRO, beyond which the maximum fee on purchase transactions,
is the average TPRO price over the last 24 hours preceding the update fee,
is a parameter describing percentage change in the price of the TPRO that triggers fee raising on sales transactions,
is a parameter describing the percentage change in the price of the TPRO, below which the maximum fee on sales transactions.
is the fee component for TPRO selling transactions based on price,
is a parameter describing the minimum fee applied to TPRO selling transactions,
is a parameter describing the maximum fee applied to TPRO selling transactions,
is the current price of the TPRO,
is the TPRO price that triggers the raising of the fee on sale transactions,
is the price of the TPRO, beyond which the maximum fee on purchase transactions.
is the fee adjusted for TPRO selling transactions based on changes in ETH price,
is the average ETH price over the last 24 hours,
is the average ETH price over the last 7 days,
is a parameter describing the maximum tolerance for changes in ETH price,
is a parameter describing the minimum tolerance for changes in ETH price,
is a parameter describing the maximum fee applied to TPRO selling transactions,
is a parameter describing the minimum fee applied to TPRO selling transactions.
is the ETH price component of the fee applied to TPRO selling transactions,
is a parameter describing the maximum fee applied to TPRO selling transactions,
is a parameter describing the minimum fee applied to TPRO selling transactions,
is the average ETH price over the last 24 hours,
is the average ETH price over the last 7 days,
is a parameter describing the maximum tolerance for changes in ETH price,
is a parameter describing the minimum tolerance for changes in ETH price,
is the fee adjusted for TPRO selling transactions based on changes in ETH price.
is the fee applied to TPRO selling transactions,
is a parameter describing the weight of the ETH component throughout the fee for sale transactions,
is the fee component based on TPRO price changes,
is the fee component based on ETH price changes.
A primary objective of the dynamic fee mechanism is to allocate fees toward the impermanent loss protection mechanism. At a given moment , when a purchase transaction occurs, the collected fee is distributed as follows:
is the portion of ETH fees allocated to the protection mechanism pool at time ,
is a parameter describing the portion of the fee that is charged on from the collected fee on protection mechanism,
is the total ETH fees collected at time ,
is the portion of ETH fees allocated to liquidity providers at time .
is the portion of TPRO fees allocated to the protection mechanism pool at time ,
is a parameter describing the portion of the fee that is charged on from the collected fee on protection mechanism,
is the total TPRO fees collected at time ,
is the portion of TPRO fees allocated to liquidity providers at time .
Fees collected by the liquidity pool for the protection mechanism are collected in separate pools of ETH and TPRO tokens. Each time a liquidity provider joins, leaves the protection program, or increases its deposit, the collected funds are redistributed to users to ensure a fair allocation of collateral. We define as the moments when the distribution of pool shares changes due to user actions. Let represent the previous moment of such a change, and denote the initial moment of the pool's creation. The amount of collected assets is calculated using the following formulas:
is the accumulated ETH fees in the protection pool by time ,
is the accumulated TPRO fees in the protection pool by time ,
is the ETH fee allocated to the protection mechanism pool at time ,
is the TPRO fee allocated to the protection mechanism pool at time .
Both TPRO and ETH are distributed following the same principles. Let describe a specific liquidity provider, the amount of ETH and TPRO reserved for liquidity provider , at time describes the formula:
is the portion of the ETH protection mechanism pool allocated to the liquidity provider at time ,
is the portion of the TPRO protection mechanism pool allocated to the liquidity provider at time ,
is the number of TPRO deposited by the specific liquidity provider,
is the total number of TPRO deposited by liquidity provider ,
is the total ETH in the protection pool by time ,
is the total TPRO in the protection pool by time ,
is the total number of liquidity providers with some deposit in the protection mechanism.
is the proportion of liquidity withdrawn by the liquidity provider,
is the number of liquidity provider tokens withdrawn by the specific liquidity provider,
is the total number of liquidity provider tokens in the pool.
A key step in calculating impermanent loss is estimating the hold position of a given liquidity provider. This involves tracking the assets contributed by the user to the liquidity pool at the time of adding liquidity. When liquidity is withdrawn, the hold position is adjusted by reducing it proportionally to the fraction of liquidity removed. This process is expressed mathematically as follows. Let denote the moment at which liquidity is added or withdrawn. By is meant the first addition of liquidity by a liquidity provider, then:
is the total hold position value of the liquidity provider at time , expressed in ETH,
is the amount of ETH provided by the liquidity provider at time ,
is the amount of TPRO provided by the liquidity provider at time ,
is the price of the TPRO at time , expressed in ETH/TPRO,
is the proportion of liquidity withdrawn by the liquidity provider.
Note: the is updated after the entire withdrawal mechanism is completed, as its value before the withdrawal is required to determine the amount of funds to be withdrawn by the user.
is the total value of the liquidity provider's position, expressed in ETH,
is the number of TPRO withdrawn by the liquidity provider in current withdrawal,
is the number of TPRO collected as fees by the liquidity provider since the last liquidity withdrawal,
is the current TPRO price, expressed in ETH/TPRO,
is the amount of ETH withdrawn by the liquidity provider in current withdrawal,
is the amount of ETH collected as fees by the liquidity provider since the last liquidity withdrawal.
is the loss incurred by the liquidity provider compared to the hold strategy, expressed in ETH,
is the total value of the liquidity provider's position, expressed in ETH,
is the total hold position value of the liquidity provider, expressed in ETH,
is the proportion of liquidity withdrawn by the liquidity provider.
is the total value of protection available for a liquidity provider, expressed in ETH,
is the ETH allocated as protection,
is the TPRO allocated as protection,
is the price of the TPRO, expressed in ETH/TPRO,
is the final value of protection applied to the liquidity provider's withdrawn liquidity.
is the amount of ETH received as protection by the liquidity provider,
is the amount of TPRO received as protection by the liquidity provider,
is the ETH allocated to the liquidity provider for protection,
is the TPRO allocated to the liquidity provider for protection,
is the loss incurred by the liquidity provider compared to the hold strategy, expressed in ETH,
is the total value of protection available for a liquidity provider, expressed in ETH,
is the value of part of protection applied based on the withdrawal ratio.
is the surplus ETH that remains after covering the loss,
is the surplus TPRO that remains after covering the loss,
is the ETH allocated to the liquidity provider for protection,
is the TPRO allocated to the liquidity provider for protection,
is the loss incurred relative to the hold position,
is the value of protection applied based on the withdrawal ratio,
is the total value of protection available for a liquidity provider, expressed in ETH,
is the proportion of liquidity withdrawn by the liquidity provider.
is the success fee in ETH deducted from the protection surplus,
is the success fee in TPRO deducted from the protection surplus,
is the surplus ETH that remains after covering the loss,
is the surplus TPRO that remains after covering the loss,
is the parameter describing the percentage of the protection surplus taken as a fee.
is the ETH fee allocated to the protection mechanism pool,
is the TPRO fee allocated to the protection mechanism pool,
is the surplus ETH that remains after covering the loss,
is the surplus TPRO that remains after covering the loss,
is the success fee in ETH deducted from the protection surplus,
is the success fee in TPRO deducted from the protection surplus.
From the funds allocated to the liquidity provider in the protection mechanism are deducted .