EDIT TO THE IDEA BELOW
The solution I suggested below for a change to Terra Station is not practical due to how bots interact with smart contracts and not the app directly. However, if Terra Station could read, sort, and filter transactions (make them searchable) individual protocols will be able to recognize certain types of transactions with the ability to blacklist a wallet address. Therefore, the ability to easily read transactions is the suggested change.
As all of you know, Terra has struggled with launches of new protocols due to bots taking advantage of high frequency trading (HFT) that leaves the typical LUNAtic in the dust and disadvantages the ‘retail’ traders that wishes to support a new protocol, but also get in at a fair price while doing so. The main issue with attempting to combat bots is the nature of what the Terra community is trying to build, a truly decentralized network and community. If a centralized agency doesn’t exist to preside over each launch and look for suspected bot activity, how can there possibly be a way to prevent bots and those with deep pockets from taking advantage of the current system?
First, it is important to analyze how wallets with suspected bot activity typically act before, and during a protocol launch. As you have probably seen from new protocols launching on Terra, they will not provide an exact time for their TGE (Token Generation Event) or launch. They will pick a window and announce the actual launch via one of their social media channels to reach as many people as possible while also hoping to prevent any malicious bot activity. See TerraLand, ApolloDao, Pylon Swaps, etc for examples of this. In theory, this is a great practice. The problem is that bots (and those with deep pockets) will take the token address of the protocol, and perform as many transactions per minute as they can during this window in an attempt to game the system by guessing the time of the launch while taking an acceptable loss of the transaction fees. These wallets are usually worth hundreds of thousands, if not millions of dollars and can afford to lose the transaction fee, even if they perform thousands of transactions in the span of a few hours.
Therefore, I suggest that we add a feature to TerraStation (App as well as Extensions) that will lock a wallet address for a set period of time IF there are 10 identical failed transactions in a row.
“Identical failed transactions” would mean any transaction towards a particular token address, smart contract, or wallet. For example, if a wallet attempted to purchase or sell $APOLLO tokens before liquidity was provided 10 times, the wallet would be barred from making an identical transaction and would need to wait a pre-determined period of time before attempting to purchase or sell the token. However, if the wallet was barred from attempting another transaction for $APOLLO tokens, it would still be able to send funds to another wallet, token address, or smart contract. Now, A bot could get around this by transferring funds to multiple wallets so, should the community deem it necessary, the wallet could be barred from ANY transaction for a set period of time. This will discourage bot activity and severely limit its capabilities.
Implementing this would not affect individuals who are attempting to support a protocol by simply purchasing tokens or providing liquidity. A warning would be added after failed 5 failed transactions that only 5 chances are remaining until the wallet address is locked from making this transaction for X amount of time (30 minutes, 1 hour, etc. The community should decide this). IF an individual is locked out of making a transaction, they will simply wait the pre-determined period of time.
I highly suggest and welcome community criticism and feedback to this topic. Something needs to be done to combat this issue and if there is a community in Crypto that can figure it out, the LUNAtic community is going to be the one.
This proposal will not cost anything as it is an upgrade to TerraStation (aside from coding time, anyone from TFL feel free to add to this as far expected time/cost), I will put up the LUNA to fund the proposal should the community decide it is worthwhile.