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
NaN returned during exchange maintenance #3221
Comments
how can you determine reliably that the exchange is down? I don't think that CCXT has a method for that - so the only way to determine this is that calls fail - which can also have different reasons (like your network...) is therefore not reliable. Unless we have a way to determine that reliably, i don't think this can be solved. |
correct me if I am wrong, i dint seem to face this issue in an earlier build prior to feb ..how was the issue handled then ? |
identically... |
the point here, in my opinion, is to print something more user friendly instead of 'technical' "nan%" |
well but what's the alternative? assuming "exchange down" while you don't know for sure? maybe it's not the exchange, just your connection - or this pair that's currently not tradable? |
"No data" / "N/A" (this does not add more info, though. not verbose enough) / "No data from exchange" (this is verbose, but can be too long for telegram output) |
well, luckily I did have an other instance running in parallel with feb build
so, i was wondering if i missed something? also, I would agree with @hroff-1902 maybe a |
but printing That's easy to say as you KNOW it was down ... But all the bot knows is that a network call failed. There's many things that can be the reason for that - the exchange downtime is only one of these - and most often not the most likely. So unless we have a way to RELIABLY determine that the exchange was down (which has to work for all exchanges!), freqtrade will not suggest that's the case as it cannot be sure, but is only guessing. Also, the docker build won't really help ... best run |
well the change that's most likely related is the change to the price caching for RPC methods. Now I think it's better to show "nan" than to keep the price around "forever" and report that price during an exchange downtime - as price can do "funny things" right after downtimes sometimes - so it's not really representative of the problem. Anyway, it's noted as an enhancement to RPC - and I've labeled it with "Good first issue" - as i think the complexity of this is not high, and anyone trying to get their feet wet in contributing to Freqtrade is more than welcome to give this a try (we will support in case of problems - a draft PR shall be used to collaborate / investigate issues). |
hey, i am new to git thank you. |
there is no command for this at this moment - and testing for this properly is rather difficult - unless the exchange is "really" down. Also, it might be difficult to implement as not all exchanges will have this endpoint - but for freqtrade, we'll need to handle all cases. |
Is this still considered a valuable "good first issue"? |
kindof - yeah ... although it's a more advanced first issue (good to start with freqtrade, but not good for programming novices), as i think we'd want to check the "exchange status" endpoint as well. |
Step 1: Have you search for this issue before posting it?
yes
If you have discovered a bug in the bot, please search our issue tracker.
If it hasn't been reported, please create a new issue.
Step 2: Describe your environment
python -V
)pip freeze | grep ccxt
)git log --format="%H" -n 1
)Step 3: Describe the problem:
the exchange binance was under maintenance from 2020/04/25 02:00 AM (UTC) - 06:00 (UTC) - https://binance.zendesk.com/hc/en-us/articles/360042668671-Binance-System-Upgrade-Notice-2020-04-25-
observed that the bot returned nan% for profit in /status, and the /performance field was empty.
note: Also in the earlier builds this response wasn't present.
If the exchange is down could we return the exchange is under maintenance rather than nan, or previous values??
The text was updated successfully, but these errors were encountered: