This Telegram bot enables users to monitor specified Solana wallets for transactions and execute copy trades automatically. It's designed to be user-friendly and customizable, making it ideal for traders looking to streamline their workflow.
- Wallet Monitoring: Watch target wallets for transactions in real time.
- Copy Trading: Automatically replicate trades from monitored wallets to a designated wallet.
- Notifications: Get detailed trade alerts via Telegram messages, including trade type, amount, and token pairs.
- Customizable Filters: Monitor specific wallets or transactions involving a specific program ID.
- Error Handling: Handles rate limits and provides descriptive error messages.
- Node.js: v18+
- Telegram Bot API Key: Obtain from BotFather.
- Solana RPC Endpoint: Use a reliable RPC provider (e.g., Alchemy, QuickNode).
@solana/web3.js
: Interact with Solana blockchain.telegraf
: Interface with Telegram Bot API.dotenv
: Manage environment variables.prisma
: For database management and migrations.jest
: For testing the application.
git clone https://github.com/variablevar/probable-adventure.git
cd probable-adventure
npm install
Create a .env
file in the project root and populate it with your configuration:
TELEGRAM_BOT_TOKEN=
SOLANA_RPC_URL=
DATABASE_URL=
ADMIN_USER_NAME=
Generate and deploy the database schema using Prisma:
npm run migrate:dev
npm run prisma:generate
npm run dev
The following scripts are available in the package.json
file:
Script | Description |
---|---|
npm run dev |
Runs the application in development mode using ts-node . |
npm run build |
Builds the application for production using TypeScript. |
npm run start |
Starts the built application from the dist directory. |
npm run migrate:dev |
Applies Prisma migrations in development mode. |
npm run migrate:deploy |
Deploys Prisma migrations in production. |
npm run prisma:generate |
Generates Prisma client based on the schema. |
npm run test |
Runs tests using Jest. |
- Search for your bot's username in Telegram.
- Start a chat by clicking "Start".
💼 *Trade Alert!*
👤 *From*: `TargetWalletPublicKey`
🔄 *Pair*: `USDC/SOL`
📈 *Amount In*: `💰 500 USDC`
📉 *Amount Out*: `💎 25 SOL`
⏰ *Time*: `2025-01-08 12:34:56`
🔗 [View Transaction on Solscan](https://solscan.io/tx/TransactionHash)
We welcome contributions! Please follow these steps:
- Fork the repository.
- Create a new branch: Use a descriptive name like
feature/my-feature
. - Commit your changes: Write clear and concise commit messages.
- Open a pull request: Provide details about the changes and their purpose.
This project is licensed under the MIT License. See the LICENSE file for details.