dutu / poloLender

Free, open source, high performance bot for lending funds on Poloniex exchange
https://github.com/dutu/poloLender
Other
160 stars 47 forks source link

Poloniex error 429: Too Many Requests. #36

Closed Shoananas closed 7 years ago

Shoananas commented 7 years ago

Hello,

I had a lot of "Poloniex error 429: Too Many Requests." errors during the 2 last days. After restarting the bot, this error temporary disappeared but I wasn't constantly monitoring papertrail.

Now I'm seeing the following error: notice: returnOpenLoanOffers: Poloniex error 429: Too Many Requests. This IP has been temporarily throttled. Please ensure your requests are valid and try again in one minute.

So I've stopped the bot and I'll restart it a bit later. Is there a way I could avoid this kind of issue? Doesn't always happen, but when it does, if there is no manual restart, the bot will keep spamming the poloniex API and the API will keep returning this error.

I don't know if there is something we can do about it since it's on the poloniex API side. Maybe a count on this error 429 and if there are more than X in a row, slow down the calls?

Regards,

Edit : I've changed my API key and now I see a lot of "Loan returned" but 0 offer, that's very weird. Especially with holding time > 48h, since all loans are supposed to be 2 days or less. https://goo.gl/9Mus1j

bradburycode commented 7 years ago

The bot gets its information from the safe-hollows.crypto.zone site which doesn't seem to be working at the moment.

http://pho.to/AhICW

Shoananas commented 7 years ago

Oh ok, that's why the bot is sending incorrect queries to the poloniex API, thank you.

bradburycode commented 7 years ago

np :)

I would check again when the safe-hollows.crypto.zone site is up and working again.

dutu commented 7 years ago

@Shoananas, the bot complies with Poloniex API calls limit. Here is the response from Poloniex support regarding the error "Too many requests. Please try again in a moment."

"As a measure against the DDOS attacks we had to apply different rate limits temporarily. There hasn't been a particular specification of how this rate limit works as it was a temporary measure and was still being tweaked. This restriction should be lifted now. I am sorry for any inconvenience caused." I don't see any action needed from the bot side here.

It looks that Poloniex at times and temporarily introduces additional limits. I think there is no action needed from the bot side here, since these additional measures poloniex is using are temporary, and the bot complies with the API limits required by Poloniex.

As for the error 429: Too Many Requests. This IP has been temporarily throttled. Please ensure your requests are valid and try again in one minute., the bot handles this one and suspends any API activity for 1 minute as requested by Poloniex server.

Please let me know if you have additional questions or comments.

dutu commented 7 years ago

Due to very frequent Poloniex errors "429: Too Many Requests", bot has been updated to v0.8.1 which suspends API activity for 1 minute when this error is returned.

denravonska commented 7 years ago

I just updated to 0.8.1 and there seems to be no backoff for me. I keep getting the HTML log over and over again.

dutu commented 7 years ago

Can you provide an excerpt from the console log, please

denravonska commented 7 years ago

Sure, here it is in its entirety: https://pastebin.com/WZRc1bhp

dutu commented 7 years ago

It looks that, after you have updated to 0.8.1, you have not updated the dependencies. Please stop the bot, run npm update and start it again (see step 3 here ) Pls let me know the result

denravonska commented 7 years ago

@dutu Ah, you're right. Just updated now, let's see how she spins.

bradburycode commented 7 years ago

Thanks dutu, testing now.

denravonska commented 7 years ago

@dutu Works like a charm, I think.

notice: returnActiveLoans: Poloniex error 429: Too Many Requests
info: API activity stopped for 1 minute
info: API activity resumed
notice: returnActiveLoans: Poloniex error 429: Too Many Requests
info: API activity stopped for 1 minute
info: API activity resumed
bradburycode commented 7 years ago

All looking good here. Good work :) Thanks again

dutu commented 7 years ago

To minimize error 429 (until Poloniex changes something else on their API without notification :)), you can upgrade to v0.8.2

(https://github.com/dutu/poloniex-api-node/issues/14)