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
ERROR PRICE_OUT_OF_TOLERANCE #6170
Comments
@bitcointerra What is the currency of the offer? |
Hi, XMR |
During times of high price volatility this can happen, that your peers price is more than 2% different to yours. Sometimes this issue can be caused by a pricenode that has gone stale, but all 5 of our pricenodes are displaying a consistent XMR price. I was not able to find any XMR offers that give the PRICE_OUT_OF_TOLERANCE error at this moment. If the problem still happening for you, restart Bisq and try again. Do you get this error from several offers? If it is with one particular offer, or user, consider posting the offerId here where it can be looked into. |
This error occurs when accepting my offer. I'm using bisq_daemon |
@bitcointerra Ok, so sounds like your node is rejecting the taker's price. Is yours a fixed price or variable (market price) offer? Please check your log and let us know what you find, looking for similar messages to these:
Please report the values it tells you for takers price and makers price in the log at that point, and the offer id. |
Hi, log below mai-05 [BisqDaemonMain] WARN b.c.o.OpenOfferManager: Received AckMessage with error state for OfferAvailabilityResponse with offerId and errorMessage=An error occurred at task: ProcessOfferAvailabilityResponse Is the onion address of the taker always not the same! I tested it with another bisq client. |
Hi, ID Offer ieveqhar-db1d612e-9918-4a33-9ee3-647f750fc653-184 |
I checked the offer just now and it looks ok: no error when starting to take the offer. |
The error continues. Please test now. |
I did. When clicking "Take offer", it says everything is good to continue. I cannot go further due to the large amounts in the offers, see my previous comment. |
Sorry. I was testing the fixed price. Now see the error. Please test now. ID offer SbPymDJP-fa5f0400-7e90-4348-8c54-495990cfbca0-184 or ieveqhar-db1d612e-9918-4a33-9ee3-647f750fc653-184 |
Yes, now when I send OfferAvailabilityRequest your node is replying with OfferAvailabilityResponse containing status PRICE_OUT_OF_TOLERANCE. There's no other information in that message, but in the log file of your bisq_daemon it should write an explanation of which prices were being used resulting in the tolerance being too far apart. It would be good to know what prices the daemon complains about. In the meantime I can try running a bisq_daemon locally to try and reproduce the error. |
Please look in bisq.log of the daemon for the
When the prices are too far different you'll get a PRICE_OUT_OF_TOLERANCE error. |
Take offer attempt rejected because of: PRICE_OUT_OF_TOLERANCE |
Thanks. In that example the takers price is correct. It appears the price node you connect to is ok; however even using the same pricenode and attempting to take your offer produces the out of tolerance error. One thing looks odd about your offers - they contain both a fixed price AND a market price. This does not happen with other offers and I wonder if that is the cause of the problem. Could you describe the process you use to edit the offer details, given that you're using bisq_daemon. I'd like to be able to reproduce the same issue and perhaps the method of editing offer details has something to do with it. |
Hi, thanks for support. https://github.com/ripcurlx/bisq-api-examples/blob/main/cli/bisq_api.py |
This could be some problem with the API CLI's This might be too much detail here, but about I am also wondering if there is something different about the way the API and Desktop use the price feed. Here's the cleartext price feed: https://price.bisq.wiz.biz/getAllMarketPrices. |
You are probably not doing anything wrong. But here is another possible problem source: the CLI console output parsing Python API example you are using is out of date, and there have been changes to the API that may (probably) broke the example you are using. There is a new set of examples in bisq-network repo https://github.com/bisq-network/bisq-api-reference. You can look at your client-side offer object in your debugger. That would be very useful in sorting out this problem. That example script lives here: https://github.com/bisq-network/bisq-api-reference/blob/main/python-examples/bisq/rpccalls/get_offer.py Instructions for setting up the Python examples (building the API's gRPC stubs) are in https://github.com/bisq-network/bisq-api-reference/blob/main/python-examples/run-setup.sh. I said all that because I did not think I could look at this in my debugger tonight, but I did. (I don't expect you to have to debug code when calling support... but it's double-plus-good if you can;-) I looked at the offer from the API CLI and get_offer.py example @ 8-May, ~00:30 UTC. If working correctly, this offer was either (a) created as a fixed-price offer, and/or (b) changed from a mkt-price-margin based offer by an edit. The fixed-price on the offer @ 8-May ~ 00:30 UTC was 0.00586782 BTC. |
I updated the code. So far no errors. thanks @ghubstan |
mai.-08 04:14:24.823 [BisqDaemonMain] WARN b.c.offer.Offer: Taker's trade price is too far away from our calculated price based on the market price. |
@bitcointerra do you have a matrix acct & client, where we could DM each other about this?
|
@ghubstan |
Thanks for updating to new python lib... But did you create and edit that offer with https://github.com/ripcurlx/bisq-api-examples/blob/main/cli/bisq_api.py? |
@ghubstan I didn't create by this ripcurlx library. But I edited a few times. |
FYI: Right now, Can we DM on matrix instead of talking about so many (of your) offer's details here? (If determined, any final conclusion about the problem source and the fix will be posted here.) |
And do not use the ripcurlx library anymore. It was fine when released, but not now. |
Ok, my id in matrix is BITCOINTERRA |
@ 9-May, ~ 18h15 UTC, my node was able to (There was no |
Please, Try now. PRICE_OUT_OF_TOLERANCE again |
@ ~ 19h40 UTC, the OfferAvailabilityRequest was successful on my node: May-09 16:38:39.801 [JavaFX Application Thread] INFO b.c.o.a.OfferAvailabilityProtocol: Send AckMessage for OfferAvailabilityResponse to peer oicmognfxgyxmd7hnircaf5i7kx5vsjaq2dmpnowolcq25r4ugqpf4qd.onion:9999 with offerId SbPymDJP-fa5f0400-7e90-4348-8c54-495990cfbca0-184 and sourceUid 4064fd10-0396-4328-87fe-37521ea9d404 I do not doubt you are seeing the problem, but I cannot reproduce on my end, yet. |
Came back. No mistakes. High volatility. Thanks for support |
This is causing erroneous PRICE_OUT_OF_TOLERANCE errors when trying to take offers having (fixed) price!=0, and isUsingMktPriceMargin=true in the payload. The API daemon editoffer's treatment of (fixed) price and isUsingMktPriceMargin flag in the API has been inconsistent with the UI. With this change: when isUsingMktPriceMargin=true, (fixed) price is set to 0 on the server. API clients, however, still must show the calculated price when isUsingMktPriceMargin=true, making this fix hard to test in the client. The server will now throw an exception if (fixed) price and isUsingMktPriceMargin flag in the API are not properly set in the API server. This fix is intended to prevent issues such as bisq-network#6170 from happening for this reason. The offer maker edited offers with API, creating inconsistent state described above. It is hoped the user's offers can be fixed by editing them in the UI. Based on `master`.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This issue has been automatically closed because of inactivity. Feel free to reopen it if you think it is still relevant. |
abr-26 [BisqDaemonMain] WARN b.core.offer.OpenOfferManager: Received AckMessage with error state for OfferAvailabilityResponse with offerId ORDER ID and errorMessage=An error occurred at task: ProcessOfferAvailabilityResponse
Take offer attempt rejected because of: PRICE_OUT_OF_TOLERANCE
This error occurs when accepting my offer.
Version 1.8.4
The text was updated successfully, but these errors were encountered: