About

At the moment we are developing an alternative bot with its own launcher that accesses servers with a code with the function of encryption API request, which allows you to make transactions as a real person not to be banned on DEX exchanges without a delay

Selenium Team is developing an alternative trading bot that offers the following features:

Request API Key Encryption Function

Selenium Bot Launcher uses an encryption function to protect the exchange's API keys, preventing their leakage and unauthorized use. This function encrypts API keys using a strong encryption algorithm such as AES-256. Encrypted keys are stored locally on the user's desktop and decrypted only when needed to place orders on the exchange.

Simulation of Real User Actions

To avoid detection and blocking by DEX exchanges, the Launcher mimics the actions of a real user. It uses browser sessions and performs actions such as:

  1. Loading the web pages of the exchange

  2. Logging in with encrypted API keys

  3. Placing and tracking orders

  4. Withdrawal of funds

The Launcher also uses proxy servers and changes IP addresses to further disguise its activities.

Launcher on User's Desktop

The Trading Bot Launcher is a desktop application that provides users with a simple and secure interface to manage their trading operations. The Launcher includes the following features:

  1. Import API Keys

  2. Placement of Warrants

  3. Order Management

  4. Settings

Using a combination of API key encryption and simulated real user actions, a trading bot with a desktop launcher allows users to trade on DEX exchanges without the risk of being detected or blocked.

Disclamer: We provide basic codes to avoid information leaks

Basic code

Launcher Codification

Encrypted API Keys Launcher

// import base64
import json

def encrypt_api_keys(api_keys):
  """Encrypts API keys using base64.

  Args:
    api_keys: API keys to encrypt.

  Returns:
    Encrypted API keys.
  """
  return base64.b64encode(json.dumps(api_keys).encode("utf-8")).decode("utf-8"))

# Set the API keys
api_keys = {
    "binance": {
        "key": "YOUR_BINANCE_API_KEY",
        { "secret": "YOUR_BINANCE_API_SECRET".
    },
    }, "uniswap": {
        { "address": "YOUR_UNISWAP_ADDRESS",
        "private_key": "YOUR_UNISWAP_PRIVATE_KEY"
    }
}

# Encrypt API keys
encrypted_api_keys = encrypt_api_keys(api_keys)

Trading Bot Launcher

// import argparse import json import os

def launch_trading_bot(encrypted_api_keys): """Launches a trading bot with encrypted API keys.

  Args: encrypted_api_keys: Encrypted API keys. """ # Decode encrypted API keys api_keys = json.loads(base64.b64decode(encrypted_api_keys))

  # Run the trading bot with the API keys # ...

# Get encrypted API keys from the UI parser = argparse.ArgumentParser() parser.add_argument("--api_keys", type=str, required=True) args = parser.parse_args()

# Launch the trading bot launch_trading_bot(args.api_keys)

Trading on DEX and CEX Exchanges

Supports trading on DEX (decentralized) and CEX (centralized) exchanges, covering a wide range of networks.

The trading bot can conduct fast trades on DEX (decentralized) exchanges across all networks thanks to the following features:

  • The bot connects directly to devices with users' cold wallets, bypassing web interfaces. This reduces request processing time and allows the bot to place orders and execute trades almost instantly.

  • The bot uses an optimized order placement process that includes the following steps:

    1. Caching blockchain information to speed up balance and order status checks.

    2. Utilizing multiple nodes to send transactions, which provides redundancy and improves delivery speed.

    3. Prioritize orders and optimize their size for maximum execution speed.

  • The bot supports trading on multiple DEX exchanges and blockchain networks. This allows it to find and use the fastest and most efficient exchanges for each specific transaction.

  • The bot uses parallel processing to perform multiple tasks simultaneously, such as market tracking, data analysis and order placement. This significantly increases overall processing speed and allows the bot to respond to market opportunities in real time.

Basic code

Direct Access to Wallets function

// import web3

def connect_to_wallet(private_key, network): """Connects to a wallet using a private key and a network.

  Args: private_key: The wallet's private key. network: The name of the network (e.g., "mainnet" or "rinkeby").

  Returns: The Web3 object connected to the wallet. """ # Create a node provider node_provider = "https://{network}.infura.io/v3/YOUR_INFURA_PROJECT_ID"

  # Create a Web3 object w3 = web3.Web3(web3.HTTPProvider(node_provider))

  # Import wallet account = w3.eth.account.privateKeyToAccount(private_key)

  # Set the wallet as the default account w3.eth.default_account = account.address

  return w3

Optimized Order Placement Function

// import web3

def place_order(w3, pair, amount, price): """Places an order on a DEX exchange.

  Args: w3: Web3 object connected to the wallet. pair: Trading pair (e.g., "ETH/USDT"). amount: Order amount. price: Order price.

  Returns: Transaction of placing the order. """ # Create exchange contract exchange_contract = w3.eth.contract( address="YOUR_EXCHANGE_CONTRACT_ADDRESS", abi="YOUR_EXCHANGE_CONTRACT_ABI" )

  # Create order order = exchange_contract.functions.createOrder( pair, amount, price ).buildTransaction()

  # Send order transaction_hash = w3.eth.sendTransaction(order)

  return transaction_hash

Multi-network Support Function

// def get_network_info(network): """Returns information about the network, such as network ID and node URL.

  Args: network: The name of the network (e.g., "mainnet" or "rinkeby").

  Returns: A dictionary with information about the network. """"networks = { "mainnet": { "network_id": 1, "node_url": "https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID" }, "rinkeby": { "network_id": 4, "node_url": "https://rinkeby.infura.io/v3/YOUR_INFURA_PROJECT_ID" } } }

  return networks[network]

Parallel Processing Function

// import threading

def run_in_parallel(functions, args_list):
  """Runs multiple functions in parallel.

  Args:
    functions: List of functions to run.
    Args_list: List of argument lists for functions.

  Returns:
    A list of the results of executing functions.
  """
  threads = []
  results = []

  For function, args in zip(functions, args_list):
      thread = threading.Thread(target=function, args=args)
      threads.append(thread)
      thread.start()

  for thread in threads:
      thread.join()
      results.append(thread.result)

  return results

Last updated