It has been a while since our last update GMX Update 1. It has been an exciting week since… | by GMX | Medium. A large portion of our time has been spent on implementing and launching advanced orders, and it is now time to plan for the next steps for GMX.
There have been a lot of ideas shared through Telegram, Discord and this post aims to put them altogether to prioritise tasks. This post will later be turned into a medium post after taking any comments and feedback into account.
GMX Marketing
For GMX to gain market share, a few components need to come together:
- There has to be sufficient liquidity for traders from GLP
- Open interest has to increase from new or existing traders
Based on https://stats.gmx.io/, while the number of unique users per day has remained roughly the same, open interest has increased.
We have also gathered preliminary data that ~100+ new users open a position on GMX each week.
More data analysis is needed but an explanation for these two data points are that users are opening and leaving the position open across multiple days or that larger trades are being executed on GMX.
While the stats are encouraging there is definitely more that can be done to acquire more liquidity and users.
For liquidity:
1a. The explanation of GLP can be improved
1b. More users can be made aware of GLP
1c. The performance of GLP can be improved
For traders:
2a. The trading interface can be improved
2b. Traders can be incentivised to try out the platform
2c. Users can be incentivised to share about the platform
1a. Explanation of GLP
GLP can appeal to more users by explaining the mechanics more simply and through the use of more graphics. The chart of GLP can also be linked and the historical performance of GLP could be presented both without taking esGMX into account and with taking it into account including the vesting schedule.
1b. More users can be made aware of GLP
This can be done through more articles, some community members have reached out and we will be working with them on it. The articles can be published on more platforms to increase awareness and for GMX to be mentioned more in conversations about derivative exchanges. We can also look into more avenues for advertising GMX.
1c. The performance of GLP can be improved
GLP’s performance can be improved by incentivising the hedging GLP, for example, if there are more longs than shorts, there can be a positive funding rate for shorts.
2a. The trading interface can be improved
The orders feature can be made more obvious and managing orders can be made simpler, we are currently working with a frontend team to improve each page.
2b. Traders can be incentivised to try out the platform
This can be done through a trading incentives program. Users can be given esGMX as a rebate when trading on GMX. Some possible formats for this:
i. Users earn esGMX each second when they have an open position, the amount of esGMX received would be (emission rate) * (user’s position size) / (total open interest), we could also have separate calculations for long and short positions
ii. Users earn esGMX based on their trading volume for the week, the amount of esGMX received would be (total esGMX rewards for the week) * (users’s margin trading volume for the week) / (total margin trading volume for the week)
For (i), an issue might be that users who are only interested in the rewards and not actually using the platform could farm the rewards and reserve liquidity which could block actual users from opening positions. The funding rate and fees will be high in this case, so it may not be a very large issue, but something to consider. (i) will probably also take a longer time to implement.
For (ii), this could be preferrable as it is simpler to implement and does reward users for trying out the platform. A possible drawback would be that users could wash-trade to farm rewards, although since the tokens have to be vested this would probably not be very profitable when taking the opening and closing fees into account.
2c. Users can be incentivised to share about the platform
This can be done through a referral program and can be done in combination with the trading incentives program.
A user could get a 25% bonus on their weekly esGMX rewards if they join through a referral link, referrers could receive an amount matching the 25% bonus.
For example, Alice joins the platform through Bob’s referral link, Alice does some trading and receives 100 esGMX rewards for the week, because she joined through the referral link, Alice would receive a bonus of 25 esGMX and Bob would also receive 25 esGMX.
The program can be partially gamed by users referring themselves, but that is usually the case with referral programs and should not be too much of an issue.
GMX Core Improvements
To continue to grow the platform, the core features of GMX can be improved, some ways that it can be improved:
3a. Allowing for cross-margin
3b. Restructuring GLP to be based on pairs
3c. Holding yield-bearing tokens within the pool
3d. Reducing or removing the 1.5% min price movement requirement
3e. Launching GMX on a third blockchain
3a. Allowing for cross-margin
Cross-margin would allow users to use ETH, WBTC, USDC, etc as collateral, liquidations would happen only if (USD value of collateral - losses across all user’s positions + profits across all user’s positions) is equal to or below zero, if this happens the positions with the highest losses would be force closed.
A possible drawback by changing to this format is that it would be more cumbersome to manage if a user prefers isolated risks for each position. Currently, a user can open a 30x BTC long and a 5x ETH long, with cross-margin the leverage amount would be per account instead.
3b. Restructuring GLP to be based on pairs
GLP can be restructured to be based on pairs, this would allow more flexibility in the tokens that can be supported.
In order to not fragment liquidity for tokens, the pairs could be structured as follows:
i. There will be ETH-USD, WBTC-USD, etc. pairs
ii. Users can deposit into a pair using either the non-stable token or any supported stablecoin
For example, if there are two pools ETH-USD, WBTC-USD and the pools have the following amounts:
ETH-USD: $1 million worth of ETH, $1 million worth of USD
WBTC-USD: $1 million worth of WBTC, $1 million worth of USD
Internal USD pool: $1.5 million USDC, $0.5 million USDT
Internally, the USD portion will be backed by a pool of supported stablecoins, e.g. USDC, USDT
If a user wants to join the ETH pool, they can deposit either ETH or any supported stablecoin into ETH-USD, if $100,000 of ETH is deposited, the pools would now be:
ETH-USD: $1.1 million worth of ETH, $1 million worth of USD
WBTC-USD: $1 million worth of WBTC, $1 million worth of USD
Internal USD pool: $1.5 million USDC, $0.5 million USDT
If $100,000 USDC is deposited:
ETH-USD: $1.1 million worth of ETH, $1.1 million worth of USD
WBTC-USD: $1 million worth of WBTC, $1 million worth of USD
Internal USD pool: $1.6 million USDC, $0.5 million USDT
The existing GLP would then be built on top of these pairs, and this gives a lot of flexibility, because there can be some preset weights to choose from and a user can also customise their own exposure.
For example, if a user would like to hold a portfolio of 90% ETH-USD and 10% BTC-USD they would be able to specify these amounts on the interface then mint tokens which represent these portions.
Internally, the contract would split the user’s deposit into each of the pairs in the proportions specified.
Another advantage would be that new pools can be created permissionlessly, as long as the pool creator specifies a price feed to use. This would allow the platform to support a large number of tokens while allowing users the flexibility to choose which tokens they want exposure to.
3c. Holding yield-bearing tokens within the pool
More research would need to be done on whether this would be feasible, but potentially each pair can have a wrap/unwrap intermediate contract which would handle converting tokens as they enter and exit the pool.
For example, if there is a ybUSDC (yield-bearing USDC) token, when USDC is deposited into the pool the intermediate contract would be called to convert USDC to ybUSDC, the pool would then hold ybUSDC. When USDC is withdrawn from the pool through swaps or otherwise, the intermediate contract would again be called to convert ybUSDC back to USDC.
3d. Reducing or removing the 1.5% min price movement requirement
The 1.5% minimum price movement before a position can be closed in profit is frequently mentioned as an issue for high frequency traders.
While we would like to remove this requirement, careful consideration should be taken on it.
Even with faster price feeds and ignoring front-running possibilities, without this minimum price movement requirement, it is possible that a large amount of toxic order flows could get routed to GMX.
Strategies and bots that would enter a position and close with small profits could be created and could be consistently profitable on average.
This is something that should be looked into so that a better decision can be made on the parameters including the percentage amount and duration of the requirement.
We can create possible strategies and backtest this against past price movements to determine the parameters that would be safe to use.
3e. Launching GMX on a third blockchain
After some or all of the above improvements we can launch GMX on a third blockchain to view the effect of the changes. Most likely we would launch on a blockchain that supports the Ethereum Virtual Machine, e.g. Avalanche.