-
Notifications
You must be signed in to change notification settings - Fork 59
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
Bot 3.0 #262
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Better controls the prices coming from curve data and uses exchange sorting to preference unleveraged pools for price data
mikewcasale
approved these changes
Dec 19, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.