Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bot 3.0 #262

Merged
merged 133 commits into from
Dec 19, 2023
Merged

Bot 3.0 #262

merged 133 commits into from
Dec 19, 2023

Conversation

Lesigh-3100
Copy link
Collaborator

@Lesigh-3100 Lesigh-3100 commented Dec 19, 2023

Fast Lane Release Notes

Important: This version includes library changes, including upgrading the Web3 version to v6.

Major Features:

Performance Upgrade:

This version includes an enormous performance upgrade. The bot is >10x faster. This has been achieved by implementing the Async Web3 library and additional optimizations under the hood.

Improved Token Price Calculation Algorithm

The bot has received an overhaul to its token price calculation algorithm. This will result in more accurate arbitrage calculations, resulting in the ability to close more opportunities.

Trading without Flashloans

The bot now includes the option to trade without using Flashloans! This is configured using the Click Option “self_fund”. The default is False - meaning it will use a Flashloan. When set to True, the bot will start a sequence in which it will submit token approvals for all tokens specified in the flashloan_tokens Click Option.

This feature will be especially useful on chains that do not include Balancer, or another suitable source of flashloans. Note that this removes the protection derived from using flashloans, which could lead to a loss of funds.

Use at your own risk!

Fork Generalization:

This upgrade makes it extremely easy to add Uni V2 & V3 forks to the bot. This will be especially useful on Layer 2s. The only requirement to add a fork is to add the fork’s Factory & Router addresses, and the default fee (Uni V2 only) in the multichain_addresses.csv file.

Individual pools still must be identified in the uniswap_v2_event_mappings.csv and uniswap_v3_event_mappings.csv files, however this restriction may be lifted in the future.

Token Key Removal:

This is an infrastructure improvement in which the use of “Token Keys” (symbol + last 4 digits of address) was removed. The bot now only uses unique token addresses. This solved a problem in that there could be duplicate token addresses, or malformed symbols.

Support for Python 11:

The bot can now run using Python 11. This is great, because Python 11 included a significant code speed upgrade.

Bug Fixes:

The infamous “Object of type int64 is not JSON serializable” bug has been fixed. JSON enthusiasts rejoice.

@Lesigh-3100 Lesigh-3100 added the enhancement New feature or request label Dec 19, 2023
@Lesigh-3100 Lesigh-3100 self-assigned this Dec 19, 2023
@mikewcasale mikewcasale merged commit 08d6275 into main Dec 19, 2023
3 checks passed
@mikewcasale mikewcasale deleted the bot-3.0 branch December 19, 2023 22:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants