To answer your original question as asked:
"How to get rid of large amounts of my own custom tokens?"
Since it is your own contract, you could just code in a function to reduce the number of tokens issued. In practice this is also called a burn function and will mean the tokens are being taken away from someone.
Alternatively, send the tokens to the null address 0x0000000000000000000000000000000000000000
which is a special account to which no one knows the key. Anything sent here is also considered 'burnt' because it becomes unreachable.
To answer how Price is determined and what hapens if tokens are dumped:
(Current Market Price) is defined as the price at which someone last purchased that asset.
You can also define it as the price that someone is willing to purchase that asset for. They should have the funds and actually go ahead with the transaction.
There are two types of exchanges; CEXs and DEXs.
A Centralized Exchange (CEX) needs to match your sell order with someone's buy order. So if your offer is to sell 1 token at 1 billion, two things can happen -
- There is no one to buy at that price. Eventually you will get bored and reduce the price to where someone will actually buy it.
- There is someone to buy at that price. However they want to buy only $1000 worth. So you will be able to sell only one millionth part of the token.
- There is someone who is willing to buy at that price and is going to place an order for $1 billion, and also has that much ready to spend in other assets. This is impossibly unlikely, but if it happens, congratulations.
What's more likely is that a scammer would slowly sell their assets to not cause a crash.
A De-centralized Exchange (DEX) works on the Liquidity Pool concept. There need not be another ready buyer (so your order will always go through).
- To start a LP, there are investors who have put their funds into liquidity pools of two assets each. The rate is determined by the ratio of funds in the respective currencies.
- So if you have a $TOK/$ETH pool, where investors have put in 1000 of your tokens and 1000 of ETH, that means the price of your token is 1000/1000 = 1 ETH.
- When you sell one token and get 1 ETH in return, the pool becomes 999/1001 so the new price of your token is 0.998 ETH. So you see the more the demand, the higher the price will go.
- In a DEX the maximum you can withdraw is the size of the pool itself, and each time you withdraw, the price of your token reduces. For your very last token in our above example, the price would be 1/1999 = 0.0005 ETH.
Here a scammer could sell their assets to the LP instantly, but in any case the amount of ETH they can get will be equal to the amount of ETH in the pool. So the scammer needs to convince many others to buy as many of the tokens as possible, to fill the other side of the pool up more.
Remember that valuation and net worth are usually notional. Jeff Bezos might be said to be worth $184.5 B because he owns Amazon shares worth that much. But that number is notional, and he can never get that amount in cash immediately. If he tries to liquidate all of it instantly, the share price would crash.
Similarly it's easy to get a notional valuation of $1 billion for yourself. Just put in 1 ETH and 0.0003 of your own token into a liquidity pool. Voila, anyone owning 1 token is a billionaire. But that wealth is notional and they cannot liquidate their wealth to get $1 B in cash.