Elite Swap is Complete Fork of Uniswap With Defi Dashboard and Multichain Swap Protocol.
DeFi represents a broad category of financial applications that are being developed on top of open, trust-minimized, programmable, and censorship-resistant networks to improve upon the legacy financial system or create entirely new use-cases.
Today most of these new financial experiments are deployed on Ethereum.
What is Eliteswap
Elite Swap is a protocol for exchanging ERC-20 tokens on Ethereum. It eliminates trusted intermediaries and unnecessary forms of rent extraction, allowing for fast, efficient trading.
Where it makes tradeoffs decentralization, censorship resistance, and security are prioritized. Elite Swap is open-source software licensed under GPL.
Is Elite Swap Safe
Is trading on Elite Swap safe? Eliteswap is a decentralized exchange enabling trading between self-custodied wallets. Since the exchange lacks an order book and doesn’t hold assets, it is remarkably secure compared to traditional exchanges.
How does Elite Swap work?
Elite Swap is an automated liquidity protocol. In practical terms, this means there are template smart contracts that define a standard way to make liquidity pools and corresponding markets that are compatible with each other.
- There is no order book, no centralized party, and no central facilitator of trade.
- Each pool is defined by a smart contract that includes a few functions to enable swapping tokens, adding liquidity, and more.
- At its core, each pool uses the function
x*y=kto maintain a curve along which trades can happen.
Prices are determined by the amount of each token in a pool. The smart contract maintains a constant using the following function:
x*y=k. In this case
x = token0,
y = token1,
k = constant.
For each trade, a certain amount of tokens are removed from the pool for an amount of the other token. To maintain
k, the balances held by the smart contract are adjusted during the execution of the trade, therefore changing the price.
You might be trying to swap a fee on transfer or deflationary token. If so, you have to increase your allowed slippage to account for the fee taken during the swap. Click on the gear for settings and adjust Slippage tolerance accordingly.
Otherwise, if your transaction is taking forever or stuck pending the gas included might be too low and the transaction will not be processed. You probably need to speed up or cancel the transaction in your wallet.
Fix stuck transactions in MetaMask
When you submit a transaction on Ethereum, your gas price is a bid to the network to process your transaction sooner.
If you submit with a low gas price, you can find your transaction taking a long time to process!
In this case, you can either wait until the network is willing to process transactions at this price, or you can click that button that says Speed Up.
This will let you re-submit the same transaction, but for a higher fee that should be processed faster. To cancel the transaction, simply select Cancel. Please note, a cancellation can only be attempted if the transaction is still pending.
For advice on what gas prices will be mined in a reasonable amount of time, refer to Eth Gas Station.
If you’ve tried the steps above but are still unable to cancel your transaction(s): try enabling Custom Nonce in advanced settings of your MetaMask wallet:
then send a new transaction. In the new transaction you can send TO yourself, meaning your MetaMask public address. Then in the nonce set it to the last transaction nonce that is still pending:
And set gas higher(to what is recommended on https://ethgasstation.info/). ETH amount can be left at 0.
If none of the options above work, you may need to reset your account:
The MetaMask activity feed may not align properly with the actual state your account is in. You can verify this by looking at MetaMask’s activity and compare it to etherscan.io.
If transactions are shown as pending on MetaMask, but NOT on a blockchain explorer such as Etherscan, then it is likely you will need to proceed with the steps found here.
If you speed up an approval, Elite Swap can’t detect the new transaction. Open your wallet in the interface and click “clear all” then try refreshing the page.
If you can’t find a token in the default list, find the token address using etherscan and paste that address into the search field.
Elite Swap pulls from the trustwallet asset repository on Github. https://github.com/trustwallet/assets Add your token icon to that repo and it will appear on the frontend and on info.
Elite Swap is compatible with any ERC-20 token in the ethereum ecosystem. If you want your project to be searchable in their interface you should seek to be added to a reputable token list or share a link to your token using query parameters. Once loaded via a link, the token will be added to their interface.
Another option is to open a request using github issues.
The Elite Swap team makes no guarantees or provides any timeline.
Ethereum requires gas to execute each transaction. You can also check ETH gas station for the current prices required to complete transactions. Creating a Elite Swap pool is a slightly costlier transaction because you are executing a more complex smart contract. Read more about how gas works in ethereum.
There is a 0.3% fee for swapping tokens. This fee is split by liquidity providers proportional to their contribution to liquidity reserves.
Swapping fees are immediately deposited into liquidity reserves. This increases the value of liquidity tokens, functioning as a payout to all liquidity providers proportional to their share of the pool.
Fees are collected by burning liquidity tokens to remove a proportional share of the underlying reserves.
Since fees are added to liquidity pools, the invariant increases at the end of every trade. Within a single transaction, the invariant represents
token0_pool / token1_pool at the end of the previous transaction.
At the moment there are no protocol fees.
Eliteswap Token (ELT)
- ELT, the Elite Swap Protocol token, is live!
- ELT contract address: 0x380291A9A8593B39f123cF39cc1cc47463330b1F
- 60% of the ELT genesis supply is allocated to Elite Swap community members
- To start, ELT is available through four liquidity mining pools
10 billion ELT have been minted at genesis and will become accessible over the course of 4 years. The initial four year allocation is as follows:
- 60.00% to Elite Swap community members 6,000,000,000 ELT
- 20% to team members, future employees and advisor with 4-year vesting 2,000,000,000 ELT
- 10% to investors with 4-year vesting
- 10% to airdrop
The governance treasury will retain 58% [5,800,000,000 ELT] of ELT supply to distribute on an ongoing basis through contributor grants, community initiatives, liquidity mining, and other programs.
ELT will vest to the governance treasury on a continuous basis according to the following schedule.
Governance will have access to vested ELT starting December 16 2020 12:00am UTC.
|Year||Community Treasury||Distribution %|
|Year 1||2,400,000,000 ELT||24%|
|Year 2||1,700,000,000 ELT||17%|
|Year 3||1,100,000,000 ELT||11%|
|Year 4||600,000,000 ELT||6%|
Team, investor, and advisor ELT allocations will have tokens locked up on an identical schedule.
ELT Liquidity Mining
An initial liquidity mining program will go live November 16 2020 12:00am UTC. The initial program will run until January 18 2021 10:40am UTC and target the following four pools on Elite Swap:
50,000,000 ELT will be allocated per pool to LPs proportional to liquidity, which roughly translates to 833,333 ELT per pool per day.
These ELT are not subject to vesting or lock up.
After 30 days, governance will reach its vesting cliff and Elite Swap governance will control all ELT vested to the Elite Swap treasury.
At this point, governance can vote to allocate ELT towards grants, strategic partnerships, governance initiatives, additional liquidity mining pools, and other programs.
A community-managed treasury opens up a world of infinite possibilities.
Elite Swap hope to see a variety of experimentation, including ecosystem grants and public goods funding, both of which can foster additional Elite Swap ecosystem growth.
Elite Swap governance will be live from day one, although control over the treasury will be delayed until December 16 2020 12:00am UTC. Control over the Elite Swap fee switch is subject to a 180 day time lockdelay.
These grace periods provide the Elite Swap community enough time to familiarize itself with the governance system, bring in a diverse and high-quality set of protocol delegates, and begin discussions and communications around potential governance proposals.
ELT holders are responsible for ensuring that governance decisions are made in compliance with applicable laws and regulations.
To help facilitate this, the fee switch has been initialized to a contract ELT holders can use to vote on tokens for which they will collect fees.
The community is encouraged to consult knowledgeable legal and regulatory professionals before implementing any specific proposal.
In the meantime, ELT holders will have immediate ownership of:
- Elite Swap governance
- ELT community treasury
- The protocol fee switch
- Elite Swap Default List
Initial governance parameters are as follows:
- 1% of ELT total supply (delegated) to submit a governance proposal
- 4% of ELT supply required to vote ’yes’ to reach quorum
- 7 day voting period
- 2 day timelock delay on execution
Liquidity providers in the preliminary set of targeted pools can deposit their liquidity tokens. Mining began on November 16th 2020 12am UTC.
ELT tokens can be delegated and used to vote through the governance portal.
ELT TOKEN Contracts
- ELT Token: https://etherscan.io/token/0x380291a9a8593b39f123cf39cc1cc47463330b1f
Understanding Eliteswap Returns
Elite Swap incentivizes users to add liquidity to pools by rewarding providers with fees on trades.
Market making, in general, is a complex activity which has the risk of losing money (compared to just hodling) in the case of big directional moves of the underlying asset price.
Consider the case where a liquidity provider adds 10,000 DAI and 100 WETH to a pool (for a total value of $20,000), the liquidity pool is now 100,000 DAI and 1,000 ETH in total.
Because the amount supplied is equal to 10% of the total liquidity, the contract mints and sends the market maker “liquidity tokens” which entitle them to 10% of the liquidity available in the pool. These are not speculative tokens to be traded.
They are merely an accounting or bookkeeping tool to keep track of how much the liquidity providers are owed.
If others subsequently add/withdraw coins, new liquidity tokens are minted/burned such that everyone’s relative percentage share of the liquidity pool remains the same.
Now let’s assume the price trades on Coinbase from $100 to $150. The Elite Swap contract should reflect this change as well after some arbitrage. Traders will add DAI and remove ETH until the new ratio is now 150:1.
What happens to the liquidity provider? The contract reflects something closer to 122,400 DAI and 817 ETH (to check these numbers are accurate, 122,400 * 817 = 100,000,000 (our constant product) and 122,400 / 817 = 150, our new price).
Withdrawing the 10% that we are entitled to would now yield 12,240 DAI and 81.7 ETH. The total market value here is $24,500. Roughly $500 worth of profit was missed out on as a result of the market making.
Obviously no one wants to provide liquidity out of charitable means, and the revenue isn’t dependent on the ability to flip out of good trades (there is no flipping). Instead, 0.3% of all trade volume is distributed proportionally to all liquidity providers.
By default, these fees are put back into the liquidity pool, but can be collected any time. It’s difficult to know what the trade-off is between revenues from fees and losses from directional movements without knowing the amount of in-between trades. The more chop and back and forth, the better.
To understand why the value of a liquidity provider’s stake can go down despite income from fees, we need to look a bit more closely at the formula used by Elite Swap to govern trading. The formula really is very simple. If we neglect trading fees, we have the following:
eth_liquidity_pool * token_liquidity_pool = constant_product
In other words, the number of tokens a trader receives for their ETH and vice versa is calculated such that after the trade, the product of the two liquidity pools is the same as it was before the trade.
The consequence of this formula is that for trades which are very small in value compared to the size of the liquidity pool we have:
eth_price = token_liquidity_pool / eth_liquidity_pool
Combining these two equations, we can work out the size of each liquidity pool at any given price, assuming constant total liquidity:
eth_liquidity_pool = sqrt(constant_product / eth_price)
token_liquidity_pool = sqrt(constant_product * eth_price)
So let’s look at the impact of a price change on a liquidity provider. To keep things simple, let’s imagine our liquidity provider supplies 1 ETH and 100 DAI to the Elite Swap DAI exchange, giving them 1% of a liquidity pool which contains 100 ETH and 10,000 DAI. This implies a price of 1 ETH = 100 DAI.
Still neglecting fees, let’s imagine that after some trading, the price has changed; 1 ETH is now worth 120 DAI. What is the new value of the liquidity provider’s stake? Plugging the numbers into the formulae above, we have:
eth_liquidity_pool = 91.2871
dai_liquidity_pool = 10954.4511
“Since our liquidity provider has 1% of the liquidity tokens, this means they can now claim 0.9129 ETH and 109.54 DAI from the liquidity pool. But since DAI is approximately equivalent to USD, we might prefer to convert the entire amount into DAI to understand the overall impact of the price change.
At the current price then, our liquidity is worth a total of 219.09 DAI. What if the liquidity provider had just held onto their original 1 ETH and 100 DAI? Well, now we can easily see that, at the new price, the total value would be 220 DAI. So our liquidity provider lost out by 0.91 DAI by providing liquidity to Elite Swap instead of just holding onto their initial ETH and DAI.”
“Of course, if the price were to return to the same value as when the liquidity provider added their liquidity, this loss would disappear. For this reason, we can call it an impermanent loss. Using the equations above, we can derive a formula for the size of the impermanent loss in terms of the price ratio between when liquidity was supplied and now. We get the following:”
impermanent_loss = 2 * sqrt(price_ratio) / (1+price_ratio) — 1”
- “Which we can plot out to get a general sense of the scale of the impermanent loss at different price ratios:”
- “Or to put it another way:”
- “a 1.25x price change results in a 0.6% loss relative to HODL”
- “a 1.50x price change results in a 2.0% loss relative to HODL”
- “a 1.75x price change results in a 3.8% loss relative to HODL”
- “a 2x price change results in a 5.7% loss relative to HODL”
- “a 3x price change results in a 13.4% loss relative to HODL”
- “a 4x price change results in a 20.0% loss relative to HODL”
- “a 5x price change results in a 25.5% loss relative to HODL”
- “N.B. The loss is the same whichever direction the price change occurs in (i.e. a doubling in price results in the same loss as a halving).” —>
How are prices determined?
Each pair on Elite Swap is actually underpinned by a liquidity pool. Liquidity pools are smart contracts that hold balances of two unique tokens and enforces rules around depositing and withdrawing them.
The primary rule is the constant product formula (x * y = k). When a token is withdrawn (bought), a proportional amount must be deposited (sold) to maintain the constant. The ratio of tokens in the pool, in combination with the constant product formula, ultimately determines the price that a swap executes at.
When swapping tokens on Elite Swap, it’s common to want to receive as many output tokens as possible for an exact input amount, or to pay as few input tokens as possible for an exact output amount.
In order to calculate these amounts, a contract must look up the current reserves of a pair, in order to understand what the current price is. However, it is not safe to perform this lookup and rely on the results without access to an external price.
Say a smart contract naively wants to send 10 DAI to the DAI/WETH pair and receive as much WETH as it can get, given the current reserve ratio.
If, when called, the naive smart contract simply looks up the current price and executes the trade, it is vulnerable to front-running and will likely suffer an economic loss.
To see why consider a malicious actor who sees this transaction before it is confirmed. They could execute a swap that dramatically changes the DAI/WETH price immediately before the naive swap goes through, wait for the naive swap to execute at a bad rate, and then swap to change the price back to what it was before the naive swap.
This attack is fairly cheap and low-risk, and can typically be performed for a profit.
To prevent these types of attacks, it’s vital to submit swaps that have access to knowledge about the “fair” price their swap should execute at.
In other words, swaps need access to an oracle, to be sure that the best execution they can get from Elite Swap is close enough to what the oracle considers the “true” price. While this may sound complicated, the oracle can be as simple as an off-chain observation of the current market price of a pair.
Because of arbitrage, it’s typically the case that the ratio of the intra-block reserves of a pair is close to the “true” market price. So, if a user submits a trade with this knowledge in mind, they can ensure that the losses due to front-running are tightly bounded. This is how, for example, the Elite Swap frontend ensure trade safety.
It calculates the optimal input/output amounts given observed intra-block prices and uses the router to perform the swap, which guarantees the swap will execute at a rate no less that
x% worse than the observed intra-block rate, where
x is a user-specified slippage tolerance (0.5% by default).
We are sorry that this post was not useful for you!
Let us improve this post!
Tell us how we can improve this post?