AxisBot - snipe and sell SPL tokens at lightning speed. Our sniping bot helps you maintain a higher level of security while also giving you the fastest sniping speed possible. Built by Traders for Traders.
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.
- You need USDC or WSOL depending on the configuration set below.
- Configure the script by updating
.env.copy
file (remove the .copy from the file name when done).- Check Configuration section bellow
- Install dependencies by typing:
npm install
- Run the script by typing:
npm run start
in terminal
PRIVATE_KEY
- Your wallet's private key.
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).
LOG_LEVEL
- Set logging level, e.g.,info
,debug
,trace
, etc.ONE_TOKEN_AT_A_TIME
- Set totrue
to process buying one token at a time.COMPUTE_UNIT_LIMIT
- Compute limit used to calculate fees.COMPUTE_UNIT_PRICE
- Compute price used to calculate fees.PRE_LOAD_EXISTING_MARKETS
- Bot will load all existing markets in memory on start.- This option should not be used with public RPC.
CACHE_NEW_MARKETS
- Set totrue
to cache new markets.- This option should not be used with public RPC.
TRANSACTION_EXECUTOR
- Set to jito to use JSON-RPC jito executerCUSTOM_FEE
- If using warp or jito executors this value will be used for transaction fees instead ofCOMPUTE_UNIT_LIMIT
andCOMPUTE_UNIT_LIMIT
- Minimum value is 0.0001 SOL, but we recommend using 0.01 SOL or above
- On top of this fee, minimal solana network fee will be applied
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.MAX_BUY_RETRIES
- Maximum number of retries for buying a token.BUY_SLIPPAGE
- Slippage %
AUTO_SELL
- Set totrue
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.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.- If you don't reach profit or loss bot will auto sell after this time.
- Set to zero to disable take profit and stop loss.
TAKE_PROFIT
- Percentage profit at which to take profit.- Take profit is calculated based on quote mint.
STOP_LOSS
- Percentage loss at which to stop the loss.- Stop loss is calculated based on quote mint.
SELL_SLIPPAGE
- Slippage %.
USE_SNIPE_LIST
- Set totrue
to enable buying only tokens listed insnipe-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.
SNIPE_LIST_REFRESH_INTERVAL
- Interval in milliseconds to refresh the snipe list.- You can update snipe list while bot is running. It will pickup the new changes each time it does refresh.
Note: When using snipe list filters below will be disabled.
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.- If pool doesn't match the filter buy will not happen.
- Set to zero to disable filters.
CONSECUTIVE_FILTER_MATCHES
- How many times in a row pool needs to match the filters.- This is useful because when pool is burned (and rugged), other filters may not report the same behavior. eg. pool size may still have old value
CHECK_IF_MUTABLE
- Set totrue
to buy tokens only if their metadata are not mutable.CHECK_IF_MINT_IS_RENOUNCED
- Set totrue
to buy tokens only if their mint is renounced.CHECK_IF_FREEZABLE
- Set totrue
to buy tokens only if they are not freezable.CHECK_IF_BURNED
- Set totrue
to buy tokens only if their liquidity pool is burned.MIN_POOL_SIZE
- Bot will buy only if the pool size is greater than or equal the specified amount.- Set
0
to disable.
- Set
MAX_POOL_SIZE
- Bot will buy only if the pool size is less than or equal the specified amount.- Set
0
to disable.
- Set
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
.
- 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.- FIX: Go to dex and swap some SOL to USDC/WSOL. For example when you swap sol to wsol you should see it in wallet as shown below:
Disclaimer: The AxisBot Solana Sniper is a code presented to simplify many routine trading tasks, which combines many useful utilities. Trading cryptocurrencies involves substantial risk, including the potential loss of principal. The bot does not guarantee profits or specific outcomes. Users are solely responsible for any risks associated with using this tool. Always conduct your research, exercise caution, and consider your risk tolerance before engaging in any trading activities, automated or otherwise. The creators and contributors of this bot bear no responsibility for any financial losses incurred while using this tool. By using the Axis Sniper Bot, you acknowledge and accept the risks associated with cryptocurrency trading, and you agree that the creators and contributors are not liable for any damages or losses resulting from its use.