A telegram bot written in rust making ERC-20 token buying and selling simpler, safer and faster. Providing useful safety checks and other utilities all in one place.
- Buy and sell ERC-20 tokens quickly and easily (on-chain transactions not yet implemented)
- Check current ERC-20 tokens and ETH balances
- Monitor ETH wallets for new ERC-20 token transactions
- Check ETH gas fees and estimated uniswap transaction costs
- Scan ERC-20 tokens for potential red flags
- Snipe new tokens after they have passed basic safety checks (on-chain transactions not yet implemented, currently just sends a notification)
To use this bot, you have to self host it.
There are a few API keys you will need when setting up your environment, making sure the bot works.
You can use every API listed here for free (credit card isn't required), if you don't go over their free tier (api requests will just fail)
You can easily set environment variables by creating a .env file in the root of the project. You will need the following environment variables to run the application.
TELOXIDE_TOKEN
ETH_ADDRESS
ETHERSCAN_API
ALCHEMY_API
MORALIS_API
CHAINBASE_API
- For the ETH_ADDRESS, you should add your ethereum address.
Used for getting wallet balance, executing transactions - For the TELOXIDE_TOKEN, you can follow this tutorial.
Used for telegram bot messaging - For the ETHERSCAN_API, you can follow this tutorial.
Used for getting the current price of ethereum - For the ALCHEMY_API, you can follow this tutorial.
Used for getting ERC-20 token balances, ETH balance, ETH gas fee - For the MORALIS_API, you can follow this tutorial.
Used for getting ERC-20 token prices, top token holders - For the CHAINBASE_API, you can follow this tutorial.
Used for getting a contract's top token holders
Command parameters should be seperated by one whitespace
/help list availabe commands
/buy buy ERC-20 token (walletAddress: String amountInUsd: f64 slippagePercent: f32)
/sell sell ERC-20 token (walletAddress: String amountInUsd: f64 slippagePercent: f32)
/portfolio get wallet ERC-20 token balances
/gas get current eth gas
/watch start monitoring etherum wallets (walletAddress: Vec<String>)
/scan scan an ERC-20 token (contract: String)
/settings change bot settings
/cancel cancel current command