Merge pull request #95 from mcoder9/master

Added Jito-RPC Executer
This commit is contained in:
Filip Dunđer
2024-04-22 18:31:22 +02:00
committed by GitHub
6 changed files with 177 additions and 20 deletions

View File

@ -1,12 +1,14 @@
# Solana Trading Bot (Beta)
The Solana Trading Bot is a software tool designed to automate the buying and selling of tokens on the Solana blockchain.
It is configured to execute trades based on predefined parameters and strategies set by the user.
The Solana Trading Bot is a software tool designed to automate the buying and selling of tokens on the Solana blockchain.
It is configured to execute trades based on predefined parameters and strategies set by the user.
The bot can monitor market conditions in real-time, such as pool burn, mint renounced and other factors, and it will execute trades when these conditions are fulfilled.
## Setup
To run the script you need to:
- Create a new empty Solana wallet
- Transfer some SOL to it.
- Convert some SOL to USDC or WSOL.
@ -22,14 +24,17 @@ You should see the following output:
### Configuration
#### Wallet
- `PRIVATE_KEY` - Your wallet's private key.
#### Connection
- `RPC_ENDPOINT` - HTTPS RPC endpoint for interacting with the Solana network.
- `RPC_WEBSOCKET_ENDPOINT` - WebSocket RPC endpoint for real-time updates from the Solana network.
- `COMMITMENT_LEVEL`- The commitment level of transactions (e.g., "finalized" for the highest level of security).
#### Bot
- `LOG_LEVEL` - Set logging level, e.g., `info`, `debug`, `trace`, etc.
- `ONE_TOKEN_AT_A_TIME` - Set to `true` to process buying one token at a time.
- `COMPUTE_UNIT_LIMIT` - Compute limit used to calculate fees.
@ -38,13 +43,14 @@ You should see the following output:
- This option should not be used with public RPC.
- `CACHE_NEW_MARKETS` - Set to `true` to cache new markets.
- This option should not be used with public RPC.
- `TRANSACTION_EXECUTOR` - Set to `warp` to use warp infrastructure for executing transactions
- `TRANSACTION_EXECUTOR` - Set to `warp` to use warp infrastructure for executing transactions, or set it to jito to use JSON-RPC jito executer
- For more details checkout [warp](#warp-transactions-beta) section
- `WARP_FEE` - If using warp executor this value will be used for transaction fees instead of `COMPUTE_UNIT_LIMIT` and `COMPUTE_UNIT_LIMIT`
- Minimum value is 0.0001 SOL, but we recommend using 0.006 SOL or above
- `CUSTOM_FEE` - If using warp or jito executors this value will be used for transaction fees instead of `COMPUTE_UNIT_LIMIT` and `COMPUTE_UNIT_LIMIT`
- Minimum value is 0.0001 SOL, but we recommend using 0.006 SOL or above
- On top of this fee, minimal solana network fee will be applied
#### Buy
- `QUOTE_MINT` - Which pools to snipe, USDC or WSOL.
- `QUOTE_AMOUNT` - Amount used to buy each new token.
- `AUTO_BUY_DELAY` - Delay in milliseconds before buying a token.
@ -52,10 +58,11 @@ You should see the following output:
- `BUY_SLIPPAGE` - Slippage %
#### Sell
- `AUTO_SELL` - Set to `true` to enable automatic selling of tokens.
- If you want to manually sell bought tokens, disable this option.
- `MAX_SELL_RETRIES` - Maximum number of retries for selling a token.
- `AUTO_SELL_DELAY` - Delay in milliseconds before auto-selling a token.
- `AUTO_SELL_DELAY` - Delay in milliseconds before auto-selling a token.
- `PRICE_CHECK_INTERVAL` - Interval in milliseconds for checking the take profit and stop loss conditions.
- Set to zero to disable take profit and stop loss.
- `PRICE_CHECK_DURATION` - Time in milliseconds to wait for stop loss/take profit conditions.
@ -68,6 +75,7 @@ You should see the following output:
- `SELL_SLIPPAGE` - Slippage %.
#### Snipe list
- `USE_SNIPE_LIST` - Set to `true` to enable buying only tokens listed in `snipe-list.txt`.
- Pool must not exist before the bot starts.
- If token can be traded before bot starts nothing will happen. Bot will not buy the token.
@ -77,6 +85,7 @@ You should see the following output:
Note: When using snipe list filters below will be disabled.
#### Filters
- `FILTER_CHECK_INTERVAL` - Interval in milliseconds for checking if pool match the filters.
- Set to zero to disable filters.
- `FILTER_CHECK_DURATION` - Time in milliseconds to wait for pool to match the filters.
@ -94,12 +103,14 @@ Note: When using snipe list filters below will be disabled.
- Set `0` to disable.
## Warp transactions (beta)
In case you experience a lot of failed transactions or transaction performance is too slow, you can try using `warp` for executing transactions.
Warp is hosted service that executes transactions using integrations with third party providers.
Using warp for transactions supports the team behind this project.
### Security
When using warp, transaction is sent to the hosted service.
**Payload that is being sent will NOT contain your wallet private key**. Fee transaction is signed on your machine.
Each request is processed by hosted service and sent to third party provider.
@ -108,20 +119,24 @@ Each request is processed by hosted service and sent to third party provider.
Note: Warp transactions are disabled by default.
### Fees
When using warp for transactions, fee is distributed between developers of warp and third party providers.
In case TX fails, no fee will be taken from your account.
## Common issues
If you have an error which is not listed here, please create a new issue in this repository.
To collect more information on an issue, please change `LOG_LEVEL` to `debug`.
### Unsupported RPC node
- If you see following error in your log file:
`Error: 410 Gone: {"jsonrpc":"2.0","error":{"code": 410, "message":"The RPC call or parameters have been disabled."}, "id": "986f3599-b2b7-47c4-b951-074c19842bad" }`
it means your RPC node doesn't support methods needed to execute script.
- FIX: Change your RPC node. You can use Helius or Quicknode.
### No token account
- If you see following error in your log file:
`Error: No SOL token account found in wallet: `
it means that wallet you provided doesn't have USDC/WSOL token account.
@ -130,10 +145,11 @@ To collect more information on an issue, please change `LOG_LEVEL` to `debug`.
![wsol](readme/wsol.png)
## Contact
[![](https://img.shields.io/discord/1201826085655023616?color=5865F2&logo=Discord&style=flat-square)](https://discord.gg/xYUETCA2aP)
- If you want to leave a tip, you can send it to the following address:
`7gm6BPQrSBaTAYaJheuRevBNXcmKsgbkfBCVSjBnt9aP`
`7gm6BPQrSBaTAYaJheuRevBNXcmKsgbkfBCVSjBnt9aP`
- If you need custom features or assistance, feel free to contact the admin team on discord for dedicated support.
@ -141,4 +157,4 @@ To collect more information on an issue, please change `LOG_LEVEL` to `debug`.
The Solana Trading Bot is provided as is, for learning purposes.
Trading cryptocurrencies and tokens involves risk, and past performance is not indicative of future results.
The use of this bot is at your own risk, and we are not responsible for any losses incurred while using the bot.
The use of this bot is at your own risk, and we are not responsible for any losses incurred while using the bot.