-
Notifications
You must be signed in to change notification settings - Fork 3
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
fix: improve matching speed and separate amm package #163
Merged
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
…9-find-match-price-perf
this change makes Up/DownTick a little bit slower(~500ns/op slower) but there'd be more benefits with it
- fix BuyAmountOnTick to check if XAmountOnTick returns zero - remove caching on buy/sell amount on ticks - use binary search to find the lowest/highest tick of pool order source - use pointer receiver for order sources to avoid copying the value
- use approximated highest/lowest price as a start point and iterate through ticks to find the first price with non-zero order amount
hallazzang
added
bug
Something isn't working
enhancement
New feature or request
x/liquidity
labels
Feb 10, 2022
- rename AttributeKeyRefundedCoin to AttributeKeyRefundedCoins - refund pool coin when the withdraw request fails - fail withdraw request when redeemed coins are both zero
…49-find-match-price-perf
`BasicPool.Price` panics if the pool is depleted
also remove `OrderBook.AllOrders` since it is not used anymore
hallazzang
changed the title
fix: improve speed and fix bugs in PoolOrderSource
fix: improve matching speed and separate amm package
Feb 12, 2022
- add matched field to Order - split ExecuteMatching into smaller methods
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.
Description
This PR improves performance of the matching algorithm and fix bugs in
PoolOrderSource
.closes: #149, #137
Tasks
UpTick
andDownTick
to no more guarantees that the price fits into ticksparseCoin
,parseDec
intotypes/
package