🚀Releases

Experimental features are unstable and subject to change in each release.

Release 0.2.22

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.22.zip

  • Update run-jup.sh to incoperate the latest logic to start jupiter server.

Release 0.2.21

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.21.zip

Release 0.2.20

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.20.zip

  • Fixed a bug with MARKET_MODE. Also change the default value for it to remote.

  • Cleanup some log on start.

  • Update how USE_SEPARATE_TIP_ACCOUNT works so it can now work on smaller profits.

Release 0.2.19

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.19.zip

  • Upgrade jupiter to v6.0.28. Specifically now newly streamed markets will also be added to jup if it's in your mint list.

  • Added a new env MARKET_MODE. Default value europa. Note the default behavior here will stream new markets for your mint list to Jupiter, but it can be very heavy for some RPC to handle. You can change it to remote to disable this behavior.

Release 0.2.18

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.18.zip

  • Added a new .env config USE_SEPARATE_TIP_ACCOUNT. When this is enabled, a new solana address will be used to send tip in its own tx instead of sending to jito directly for every jito transaction. Jito currently is rate limiting bundles based on the accounts in the tx that does the tip. This is useful when you have machines in multiple locations but still trying to use the same wallet to run the bot. Example transaction: https://solscan.io/tx/41CBfg3cg1eKvxgJHJ7TqhmrGJ73BxikDVALV7SQYM4FmMqt22Cfpc18f5bErATSUoTDccKtFSVpGQe1WvMr1b9f Note: this is an experimental feature and I'm still testing how good this is to get around the jito limitation. Please report in discord if you run into any issues.

Release 0.2.17

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.17.zip

  • Remove minimum SOL requirement for flashloan

  • Remove marginfi as a provider

Release 0.2.16

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.16.zip

  • Remove USE_SHARED_INTERMEDIUM_ACCOUNTS as it's not a working config.

Release 0.2.15

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.15.zip

  • Add a new .env config SHOW_JITO_LOGS, default to false. When enabled, it will show the response for the jito bundle requests. This is helpful if you are trying to see how often you are hitting the jito's rate limit.

Release 0.2.14

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.14.zip

  • Fixed a bug in run.sh

Release 0.2.13

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.13.zip

  • Upgrade Jupiter api to v6.0.27. The old Jupiter versions will no longer be updated with new mints and markets. So make sure you upgrade to this asap.

  • BREAKING: EXCLUDED_DEXES now need to be the address of the market instead of the name. If you didn't modify this in your .env you can ignore this.

  • BREAKING: USE_LOCAL_MARKET_CACHE now has a different format and url, if you are using it make sure you download from the new link. Otherwise you can ignore this.

Release 0.2.12

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.12.zip

  • Added a new param JITO_UUID. If you get a custom uuid from jito, you can set it here to have a higher rate limit. The default rate limit is 5/s/ip

  • The Jito rate limit for all bot users are reverted unfortunately, Jito has a bug on their end that caused the uuid to cap on all usage instead of per ip. This unfortunately set back the rate limit back to 5/s for jito. But old versions have a worse performance now due to this issue.

Release 0.2.11

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.11.zip

  • Fixed a bug that introduced by Jupiter which will cause all quotes to fail with WARN tower_http::trace::on_failure: response failed classification=Status code: 500 Internal Server Error latency=0 ms

  • Fixed a bug in .env.example

Release 0.2.10

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.10.zip

  • Fix a bug with opportunity count

  • Fix a typo with base-mint example

Release 0.2.9

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.9.zip

  • Added a .env config USE_SHARED_INTERMEDIUM_ACCOUNTS. Default to false. When enabled, it will not create intermedium token accounts in your wallet, instead it will use a shared one provided by jupiter. This is very useful if you don't want to have hundreds of token accounts opened in your wallet. Note this may slightly reduce your landing rate as if the token is very popular the shared accounts may be locked by other Jupiter users

  • Fixed a bug with SKIP_SAME_OPPORTUNITY

  • Cleanup some logs

Release 0.2.8

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.8.zip

  • Added a .env config SKIP_SAME_OPPORTUNITY, when enabled and you are using fixed trade size(either using tradeSize or tradeRange with linear strategy), the bot will check if it's the same as last time and not generate a new opportunity for it if it's the same.

  • Raise bloXroute rate limit to 20/s

  • Due to a recent change of Jito's SendTransaction endpoint, the bot now only send through SendBundle, which will lead to a reduced rate limit of jito to 25 tx/s

  • Upgrade jupiter-swap-api to v6.0.25

  • Some log improvements

Release 0.2.7(Rolled back)

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.7.zip

  • Now when you use fixed trade size(either using tradeSize or tradeRange with linear strategy), the bot will check if it's the same as last time and not generate a new opportunity for it if it's the same.

  • Raise bloXroute rate limit to 10/s

  • Upgrade jupiter-swap-api to v6.0.25

Release 0.2.6

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.6.zip

  • Remove JUPITER_TOKEN_COUNT param.

Release 0.2.5

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.5.zip

Release 0.2.4

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.4.zip

Release 0.2.3

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.3.zip

  • Jito rate limit raised to 50/s/ip!

  • Added a new .env config USE_DIFFERENT_TX_FOR_BLOCK_ENGINES, default to true. When it's enabled it will send a different tx for each jito block engine

  • Optimize compute unit limit for jito transactions. FIXED_COMPUTE_UNIT_LIMIT now also affects jito transactions. When it's set to 0, a more accurate estimation algorithm will be used. When simulation is enabled, the value from the simulation value +20% buffer will be used.

Release 0.2.2

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.2.zip

  • Add new jito region slc(salt lake city)

Release 0.2.1

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.1.zip

  • Hide Jupiter log with run.sh

  • Cleanup some logs

Release 0.2.0

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.2.0.zip

  • Added a new .env config SPAM_RESTRICT_LEVEL. Default to 0. Valid values are 0,1,2,3,4,5. This config will try to limit how long a tx land compares to when you send it when using spam. 0 is no restriction, the same behavior as before. 5 is maximum restriction and will only allow the tx to land within ~1-2 slots. Note the exact restriction time for each level can be affected by your RPC's latency and performance. Read the doc for more details about this config.

  • Added a new config in base-mint.json. spamFeeBps . This allows you to set a fixed percentage of your projected profit as your gas fee. Read the doc for more details.

  • Now if you enable simulation, the Compute Unit will be set based on simulation result with a 15% buffer. This will help to reduce the Compute Unit Limit number and improve landing rate.

  • Now when you set minProfit = 0 in your base-mint.json file, no profit check will be performed. This is useful when using super spam strategy.

  • Added a new .env config PULL_BLOCKHASH_WITH_YELLOWSTONE , when enabled, will use your Yellowstone to pull blockhash instead of RPC. This can save you a lot of RPC credits.

  • Added a new .env config BLOCK_ENGINES, default to ny,amsterdam,frankfurt,tokyo You should not change this unless you know what you are doing. This is list of block engines the bot will send to when using Jito.

  • The bot now show full compute time, you can have a better how long your jupiter quote takes to help you optimize your bot.

  • Added a new .env config MAX_COMPUTE_TIME. You can set a value and when the bot will not send out tx if the compute time for an opportunity is higher than the value.

  • Added new .env configs ENABLE_BLOXROUTE, and BLOXROUTE_REGION. This is useful when you don't have a good rpc for sending when using spam mode. BloXroute will always use staked connection.

  • Added a new .env config ENABLE_JITO_RPC. If you have a Jito RPC this can give you a better estimation of the profit when running simulation.

  • Added a lot of new logs

  • MEMO config now will NOT add anything to your tx by default. It will only be added when you set a value for it.

  • Now the bot will NOT call jupiter simulation to get a compute unit limit, instead bot uses a new algorithm to calculate an estimation.

  • Fix a small bug that may slow down super spam strategy.

  • Update jupiter-swap-api to v6.0.23

  • Bug fixes

Release 0.1.8

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.1.8.zip

  • Fix version number

Release 0.1.7

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.1.7.zip

  • Fix a bug that jito tip for USDC may not be calculated correctly sometimes

  • Change the output level for run-jup.sh

Release 0.1.6

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.1.6.zip

  • Update jupiter-swap-api to v6.0.20

  • Added a new param LOCAL_JUPITER_PORT, default to 18080. This is for advanced usage, normal user can ignore this change.

Release 0.1.5

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.1.5.zip

  • Fixed a bug with the upgrade.sh script. If you are upgrading from 0.1.4 make sure you run the upgrade.sh twice.

Release 0.1.4

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.1.4.zip

  • Fixed a bug with trade range. If you see a low jup success rate with trade range, this release should fix it.

  • Added a new script upgrade.sh that you can run to upgrade to the latest version.

Release 0.1.3

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.1.3.zip

  • Removed an unnecessary Jup rpc call. This should save you a lot of rpc credits, and speed up jup quote slightly.

Release 0.1.2

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.1.2.zip

  • Added a new config ENABLE_LANDING_LOG, default to false. When this is enabled, it will output an additional WIN log when a transaction is landed like in previous version. Though if you turn this on while having ENABLE_SIMULATION=false, it may consume a lot of your RPC credits, as for each transaction you send, this will call a getTransaction for it to confirm landing.

Release 0.1.1

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.1.1.zip

  • Fixed a bug with run.sh script, now it won't kill your jupiter when you have DISABLE_LOCAL_JUPITER=true

Release 0.1.0

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.1.0.zip

  • ENABLE_JITO_TRANSACTION config is now removed. Instead bot will utilize sendTransaction from Jito to send bundles, which will raise the limit of 5/s to 10/s for sending transactions with Jito.

  • Added a few more optimization tips

  • Changed fee collecting address

  • Small bug fixes.

Release 0.0.27

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.0.27.zip

This release focus on improvements around ENABLE_SPAM mode.

  • New config MAX_RETRIES, default to 0. This is a config for sendTransaction RPC method, Maximum number of times for the RPC node to retry sending the transaction to the leader. The higher this number, the more chance your tx can land, but also lead to high chance of failure, as retried tx is likely too late for the opportunity.

  • New config HELIUS_API_KEY, this is used for fetching lated priority fee. You can get one for free by register an account on https://www.helius.dev/.

  • New config PRIORITY_FEE_UPDATE_INTERVAL , default to 60. Unit in seconds. This controls how often the priority fee is updated.

  • Two new fields for base-mint.json

    • priorityFeePercentile, value from 0 to 100(you can set higher than 100 but not recommended). Automatically set COMPUTE_UNIT_PRICE based on current priority fee level. You need to set HELIUS_API_KEY in order to use this. The bot utilize helius's priority fee api, to fetch the latest priority fee levels. The response is something like the following from the api, value map to the response, aka 0 means min, 25 means low, 50 means medium, 75 means high, 100 means veryHigh. If the current response looks like below, and you set 30 as the value for priorityFeePercentile, the auto generated COMPUTE_UNIT_PRICE would be 10000 + (60082 - 10000) * ((30 - 25) / 25) = 20016. Note the value for each level will change all the time as market moves. When this is set, it will override the COMPUTE_UNIT_PRICE value in .env file.

    "min": 0,
    "low": 10000,
    "medium": 60082,
    "high": 1230000,
    "veryHigh": 5000000

    • maxPriorityFee. The max COMPUTE_UNIT_PRICE you are willing to set. This is helpful to prevent setting a huge priority fee as market moves.

    Example usage of the config

[
  { "mint": "So11111111111111111111111111111111111111112",
    "tradeSize": [1210000000, 2410000000],
    "minProfit": 2000000,
    "priorityFeePercentile": 50,
    "maxPriorityFee": 100000
  }
]
  • Improved how transaction is sent, should see slightly better landing rate.

  • Added a new script run-jup.sh, this will only start the Jupiter API and not running the bot. Useful when you want to run Jupiter API on one machine and bots on other machines.

Release 0.0.26

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.0.26.zip

  • Added a new config USE_LOCAL_MARKET_CACHE for Jupiter API. When this is set to true, it will load the market cache from the local file mainnet.json. This is useful when you run jup and it's very slow to start, or even fail with error reading a body from connection. You can update the local file with wget https://cache.jup.ag/markets?v=3 -O mainnet.json

Release 0.0.25

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.0.25.zip

  • Fix a bug where wrap/unwrap and balance check is not working in 0.0.24

  • Fix a bug where in some corner cases the bot will send an empty tx

Release 0.0.24

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.0.24.zip

  • Update the format of base-mint.json to support defining the same base mint for different strategy. Please check base-mint.json for the new format. The old one will continue to work but if you want to define multiple strategy for the same mint you have to use the new format.

  • Introducing trade range for base-mint.json. Make it easier to customize your strategy. And now you can use random trade size with trade range!

  • Small bug fixes

  • Added more logs on bot start

Release 0.0.23

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.0.23.zip

  • Added a new optional config file exclude-mints.json. It's in the same format as intermedium-mints.json, the tokens in the file will be excluded from jup api and intermedium mints. This is useful if your RPC is under a lot of load and couldn't catch up, you can remove USDC/USDT and just run SOL with alt tokens as a different strategy. You may see this error if you exclude USDC, it can be safely ignored: price_tracker.update_prices failed with: missing decimals for USDC

  • [Experimental] Added a new experimental config INTERMEDIUM_MINT_COUNT_FROM_NEW_TOKENS, which will fetch new pools opened through geckoterminal and extract the mints used in the pool. This config is still in development. If you want to set this you can try to set it up to 200. One way to use this is with only SOL base mint with no birdeye intermedium tokens/no jupiter_token_count, or use exclude-mints.json to exclude USDC/USDT for better performance. Default to 0, which means this is not enabled.

  • [Experimental] Added a new experimental config FILTER_GECKO_POOLS_FROM_RAYDIUM, default to true. This config is specifically used together with INTERMEDIUM_MINT_COUNT_FROM_NEW_TOKENS, when set to false, it will extract all tokens that has a new pool opened, but a lot of them may only have one amm on raydium, which means there's no arb opportunities for them. When set to true you would probably see around 10-20 new tokens fetched at most.

  • Update jupiter-swap-api to v6.0.18

Release 0.0.22

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.0.22.zip

  • Added a new config DISABLE_LOCAL_JUPITER, when set to true, it will not start the Jupiter API locally. This is useful when you want to run multiple bots on the same machine.

  • Cleanup some logs

Release 0.0.21

https://sourceforge.net/projects/solanamevbot/files/solana-mev-bot-0.0.21.zip

Last updated