How to cancel limit orders involving rebase tokens on the smart contract — UniTrade

Unitradeappnews
2 min readAug 17, 2021

For tokens with elastic supply type, tokens amount shrink after a negative rebase which causes your pending order cancel requests to not work since you are technically requesting to cancel a bigger amount than then the one pending in our smart contract.

To solve this, you need to send the “deficit amount” directly to our orderBook smart contract address and then go back to our site, and cancel it.

By “directly” we mean send it straight from your wallet to our smart contract address ( we are not referring to placing a limit order here )

Our orderBook contract address: 0xc1bf1b4929da9303773ecea5e251fdec22cc6828

Finding the deficit amount

The deficit amount is the difference between the token amount presently in our smart contract and the amount of tokens initially received before the negative rebase.

To find it, use the limit order TxHash and check the number of tokens you initially sent, then take that number and subtract it by the number of tokens presently in our smart contract. You can find the amount of the token in our smart contract using this link:

https://etherscan.io/tokenholdings?a=0xc1bf1b4929da9303773ecea5e251fdec22cc6828&q=TokenSymbolHere

PLEASE NOTE:

Before copy and pasting the above link to your browser, notice the end of the link and make sure to replace where it says TokenSymbolHere with the actual token symbol you are dealing with ( example: AMPL, BASE, etc… ).

For instance if you are dealing with AMPL token, your link should look like this

https://etherscan.io/tokenholdings?a=0xc1bf1b4929da9303773ecea5e251fdec22cc6828&q=AMPL

Sending the deficit amount

Before sending the full difference amount, you need to make sure first that the amount displayed on our contract is up to date because the token supply changes after every rebase.

Step 1

Send just 1 unit of that token to our contract to initiate an interaction which will update the token amount displayed

Step 2

After the transaction is fully completed, go back to the contract link we provided earlier ( refresh the page to make sure ), take the updated quantity you will see and use that number to do the calculation we suggested earlier to find the difference.

Step 3

Send that difference to our smart contract address and wait for the transaction to be fully completed then go back to unitrade.app, connect the same wallet and cancel your order as usual.

— — -

Need more assistance? Contact the UniTrade team at https://t.me/UniTradeApp

--

--