Giter VIP home page Giter VIP logo

pololender's People

Contributors

bretth18 avatar denravonska avatar dutu avatar michel5 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pololender's Issues

Nonce issue

I was looking throught your code for the following error callback of poloniex.

notice: returnActiveLoans: Nonce must be greater than 1432780392338378. You provided 147013733967300.

Could not reason entirely as to how to slow your api calls to the acceptable threshold.
Would you know about it? Is this known to you?
Regards

Poloniex error 429: Too Many Requests.

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

Setting POLOLENDER_APIKEY via "heroku config:set" command is ingesting key/secret values improperly

While following the instructions for setting up poloLender in Heroku, I attempted to set my environmental variable using the following command:
heroku config:set POLOLENDER_APIKEY={\"key\":\"MYKEY\",\"secret\":\"MYSECRET\"}

This resulted in the following output, which suggested that only the "secret" value was ingested (no "key" value):
Setting POLOLENDER_APIKEY, POLOLENDER_APIKEY and restarting โฌข rocky-atoll-57901... done, v17 POLOLENDER_APIKEY: "secret":"MYSECRET"

Sure enough, "heroku config" shows only the "secret" value. This issue causes app deployment to fail.

Min order amounts causing issues

Poloniex is adjusting minimum order amounts and it is causing issues with the poloLender app. See the image below:
screen shot 2017-06-14 at 12 12 58 pm

The big problem with this is that the poloLender stops iterating through the altcoins when this happens, so the altcoins after the current one never get loan offers created.

I would propose another config variable in the defaultConfigs that has Poloniex's min order amount for each coin, then check that before attempting to create the offer. In addition, I think we will need to remove some of the return statements because it is stopping the loop from reaching the other currencies.

I can create a PR later today, I just wanted to get this issue out.

Poloniex error 422: Nonce must be greater than .....

Today I started to get the error:

Poloniex error 422: Nonce must be greater than *****. You provided *****.

(I have hidden the actual nonce values for security reasons). I also started to frequently get the error:

Poloniex error 429: Please do not make more than 8 API calls per second.

With poloLender 0.7.1, I usually only get error 429 about every 90 minutes or less, which doesn't seem to be problematic. But for some reason I got error 429 multiple times today within a couple of seconds. Sorry if I should have kept error 429 as a separate issue but I don't know if it's related. I also received this error message:

Poloniex error 429: This IP has been temporarily throttled. Please ensure your requests are valid and try again.

I've attached a small portion of the log in an excel file. I assume this may be an issue with poloniex server but perhaps there is a way poloLender can handle these situations?

Kind regards,

log3.xlsx

Support for minimum lend rate

It would be neat if we could set a minimum lend rate on a per-coin basis. For example, right now XMR lends for 0.015% so it would be more profitable for me to stop offer XMR loans, trade my coins into BTC and offer BTC loans at 0.056%.

I guess you can kill the bot, reconfigure the coin max lend to 0 and then restart it, but it's quite the hassle. Instead, it would be easier if we can set a minimum and handle the exchange and coin transitions manually.

seems not work correct

always at 5% 60days
info: Loan offered #382095222 BTC 0.78305700 at 5.000000% (1825.00%), duration 60 days

Lend for 2+ days

It would be nice to lend for longer periods of time if there is a spike. Maybe, it's reasonable to specify the maximum amount of BTC can be landed for 2+ days in the config file.

Timeouts every few secounds

I am getting these timeouts every few seconds:
notice: returnAvailableAccountBalances: ESOCKETTIMEDOUT
notice: returnActiveLoans: ETIMEDOUT
notice: returnOpenLoanOffers: ETIMEDOUT
notice: returnActiveLoans: ESOCKETTIMEDOUT
notice: returnActiveLoans: ETIMEDOUT
notice: returnOpenLoanOffers: ETIMEDOUT
notice: returnActiveLoans: ESOCKETTIMEDOUT
notice: returnAvailableAccountBalances: ETIMEDOUT
notice: returnAvailableAccountBalances: ETIMEDOUT
notice: returnOpenLoanOffers: ETIMEDOUT
notice: returnActiveLoans: ESOCKETTIMEDOUT
notice: returnOpenLoanOffers: ESOCKETTIMEDOUT
notice: returnAvailableAccountBalances: ETIMEDOUT
notice: returnActiveLoans: ETIMEDOUT
notice: returnOpenLoanOffers: ETIMEDOUT
notice: returnOpenLoanOffers: ESOCKETTIMEDOUT
notice: returnActiveLoans: ETIMEDOUT
notice: returnActiveLoans: ESOCKETTIMEDOUT
notice: returnOpenLoanOffers: ESOCKETTIMEDOUT
notice: returnOpenLoanOffers: ETIMEDOUT
notice: returnOpenLoanOffers: ETIMEDOUT

The bot creates and get returned loans without problems though.
It's running locally on my machine and I created a new API key for it.

poloLender / poloLending-Advisor disconnect

Hey,

so I have been thinking a bit and I think have these 2 things be separate can/is causing sub-optimal rates.
This is because if they where one system when calculating the rate it could consider if a loan is from you or not.
This can lead to the bot trying to undercut itself and I have seen that happen.

So it would be appreciated if you could open source the Advisor so that I may fix this. But since it's not already open I guess you are not planning on changing that. well asking doesn't cost anything.

Minor enhancement request: Loan taken with UTC timezone

Hello,

When looking at the logs with papertrail, I can see when the loans are taken but the timezone used is UTC+2, in your code we can see the utcOffset(120) in poloLender.js:
msg = "Loan taken #" + newAC.id + " " + newAC.currency + " " + newAC.amount + " at " + msgRate(newAC.rate) + ", created " + newAC.createdAt.utcOffset(120).format("YYYY-MM-DD HH:mm");

I think it would be better to simply display the time in UTC timezone since Poloniex is using UTC. Or give us the choice through the config vars.

Thank you for your hard work.

Regards,

createLoanOffer: Amount must be at least 0.01

Hello,

I've started to get these messages in the log about every 1s:

createLoanOffer: Amount must be at least 0.01

I logged into Poloniex and checked my balance. It is less than 0.01, and it won't allow me to manually offer this amount.

Is this the normal operation of the bot?

Need to adjust timeout again (Poloniex API asking for 130sec timeout)

Hello,

Today I've seen a lot of logs like this:
notice: returnActiveLoans: Poloniex error 429: Too Many Requests. This IP has been banned for 2 minutes. Please adjust your timeout to 130 seconds.

So I guess Poloniex changed their timeout policy again and the bot needs to be adjusted to this new policy.
Other than that, the bot has been working really nice for more than a week without any interruption for me!

So, thank you again for your hard work!

Too many API calls when deployed on Heroku

When deployed on Heroku, following the provided instructions, I get this continuously after starting the app

Sep 28 23:05:55 fast-depths-35755 app/poloLender.1: info: Connected to server safe-hollows.crypto.zone
Sep 28 23:06:20 fast-depths-35755 app/poloLender.1: notice: returnOpenLoanOffers: Please do not make more than 6 API calls per second.
Sep 28 23:06:39 fast-depths-35755 app/poloLender.1: notice: returnOpenLoanOffers: Please do not make more than 6 API calls per second.
Sep 28 23:06:42 fast-depths-35755 app/poloLender.1: notice: returnOpenLoanOffers: Please do not make more than 6 API calls per second.
Sep 28 23:06:46 fast-depths-35755 app/poloLender.1: notice: returnOpenLoanOffers: Please do not make more than 6 API calls per second.
Sep 28 23:06:50 fast-depths-35755 app/poloLender.1: notice: returnAvailableAccountBalances: Please do not make more than 6 API calls per second.

What might be causing this and how can I resolve it?

Thanks.

Problem...

image
Hey, see it, Sometimes the bot creates orders far above the available values, and ends up being left a long time without being executed ... is it some field that I should correct?

Alert: Environment variable POLOLENDER_APIKEY is invalid.

Hello,

Getting the following error in the logs using Heroku to run the app:

heroku/web.1:  Starting process with command `node server.js` 
app/web.1: notice: Environment file doesn't exist: /app/.env 
app/web.1: alert: Environment variable POLOLENDER_APIKEY  is invalid. Please see documentation at https://github.com/dutu/poloLender/ 
app/web.1: alert: Application will now exit. Correct the environment variable POLOLENDER_APIKEY and start the application again 
heroku/web.1:  Process exited with status 1 

I used the following format to enter the API Key:
heroku config:set POLOLENDER_APIKEY='{"key":"MY-KEY","secret":"MY-SECRET-KEY"}'

I double checked the key with my polo account and I am 100% positive I am using the right one.

I didn't do the "poloLender Pro configuration" from your readme because it looks like it is for local setup (or maybe I'm wrong but since I already defined the config vars on Heroku I don't think I should do it again).
It is my first time running your app.

Thank you for your help

warning: Error connecting to server safe-hollows.crypto.zone (TransportError: xhr poll error)

Getting this error when I'm running the server right now:

info: Reconnected to server safe-hollows.crypto.zone                                                                                                                         
info: Connected to server safe-hollows.crypto.zone
notice: Disconnected from server safe-hollows.crypto.zone
info: Reconnecting to server safe-hollows.crypto.zone (1)
info: Reconnected to server safe-hollows.crypto.zone
notice: returnOpenLoanOffers: ESOCKETTIMEDOUT
info: Connected to server safe-hollows.crypto.zone
notice: Disconnected from server safe-hollows.crypto.zone
info: Reconnecting to server safe-hollows.crypto.zone (1)
warning: Error connecting to server safe-hollows.crypto.zone (TransportError: xhr poll error)
warning: Error reconnecting to server safe-hollows.crypto.zone (TransportError: xhr poll error)
info: Reconnecting to server safe-hollows.crypto.zone (2)

Getting Application error when I visit the website manually too.

What's new?

What is new in the server folder? need update?

package.json not JSON

Hello,

Trying to "npm install" on my computer throws this error:

npm install
npm ERR! Linux 3.10.0-514.16.1.el7.x86_64
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install"
npm ERR! node v6.10.2
npm ERR! npm v3.10.10
npm ERR! file [..]/.npm/big.js/3.1.3/package/package.json
npm ERR! code EJSONPARSE

npm ERR! Failed to parse json
npm ERR! No data, empty input at 1:1
npm ERR!
npm ERR! ^
npm ERR! File: [..]/.npm/big.js/3.1.3/package/package.json
npm ERR! Failed to parse package.json data.
npm ERR! package.json must be actual JSON, not just JavaScript.

Any ideas?

Kind regards,

Question/Request

Have you any other bot for polo to trade or pumps? or wanna make ?

Feature request: max order size

It would be really nice if max order size setting could be added.
As from my experience having orders limited to 0.1~0.2 btc increases overall return rate

Tip

One tip, if you can add in the Bot it will be very useful, sometimes the bot places an order with a% above those that are available, but some of these are many bitcoins, for example 800,1000 bitcoins, if you can, The bot will calculate how many bitcoins are above our order so as not to take too long to lend

LTC Support

hello, I was wondering if you are interested in implementing litecoin support?

If not I can create a pull request, thanks

Rate must be at least 0.0001% & socket error

Hello, I have the same issue than this one #16
I'm running on version 0.7.1
I also get this ESOCKETTIMEDOUT error sometimes

notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: ESOCKETTIMEDOUT
notice: returnActiveLoans: ESOCKETTIMEDOUT
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.
notice: createLoanOffer: Rate must be at least 0.0001%.

wrong tax calculated!!! NO LENDING!

about 2 days ago the bot start to try to loan with a wrong calculated tax and the result is that no loan offer wold be taken.

Anyone with the same issue ?

Doesn't seem to be making very intelligent statistical decisions?

When I started it up, it just placed loans for all the available BTC at the going rate of around 1%, and looking at the site a minute later it looked like one could get loans at 1.3% if it had waited a minute ..... curious what kind of logic is being applied, as doesn't appear to be very optimal from first glance ...

Fix please..

Hello,
When the orders are usually at 0.30% for example, then it drops to 0.15%, the bot keeps opening at 0.30% and then we waste a lot of time with open orders ... can you fix it? I would like to donate in bitcoin, how do I?

Bot tried to cancel unowned loan offer.

Hi,
I got strange error in my log:
notice: returnAvailableAccountBalances: Poloniex error 500: Internal Server Error
notice: returnAvailableAccountBalances: Poloniex error 500: Internal Server Error
notice: cancelLoanOffer: Error canceling loan order, or you are not the person who placed it. (#322231281)
notice: returnActiveLoans: ESOCKETTIMEDOUT
notice: returnAvailableAccountBalances: Unknown error.
notice: returnOpenLoanOffers: Unknown error.
notice: returnActiveLoans: Poloniex error 500: Internal Server Error
notice: returnActiveLoans: ESOCKETTIMEDOUT
notice: returnActiveLoans: Poloniex error 500: Internal Server Error
notice: returnOpenLoanOffers: ESOCKETTIMEDOUT
notice: returnAvailableAccountBalances: ESOCKETTIMEDOUT
notice: returnOpenLoanOffers: Unknown error.
Do you know anything about such behaviour?

is working?

hello, i dont know if is really working fine, and i have some questions, i can pay if you help me... i need disable or enable auto renew on polo?

Feature request: return by date

Ability to gracefully return all or part of lent funds by a specific date.
I.e. on May 1st we specified in the GUI that all funds must be returned no later than by June 1st
The app will limit lending to 31 days on May 1st, to 30 days on May 2nd etc.
During last two days, it won't lend anything.

This would be an amazing feature!

Not lowering offered rates for several hours

Hello,

I feel like there is a strange behaviour and I'm not sure if it is intentional or not.

My last loan was taken at 19h45 UTC (about 1 hours and 15 minutes ago) and my loan offers are still way too high for the current market.
Considering the number of loans that are paid back pretty quickly, wouldn't it be better to lower the rate every X minutes if a loan is not taken?

See my screenshot attached please:

loans_2017-05-10_22-55-08

Funny thing though, right after taking the screenshot, these loans have been taken. Still not sure if it's worth it knowing I had these 0.X btc waiting for like 1 hour.

Edit: miscalculation on my part, the question remains the same though.

Edit 2: also, I'm wondering what these logs mean
app/web.1: notice: bfxPublic.ticker: Error: ETIMEDOUT
I didn't find any ETIMEDOUT in your code, so I guess it is from the API or Heroku?

Module 'request'

For some reason, after reinstalling poloLender on different pc/server, module 'request' is not available which I have to install manually by using npm install request --save

It wasn't required before. I don't know why.

Add support to DASH

Thanks for this very useful project! Is possible to add DASH support?
Also, can you provide an wallet for me to pay you a beer? ๐Ÿ˜„

Question/Suggestion: How is the amount determined to make an offer?

Hello,

I am wondering how the amount to offer is determined. Because I often see big amounts in offer and I'm not sure if it's the most efficient thing to do. Sometimes the bot lends 0.4 btc for 0.14% and 1 hour later, the bot lends 0.01 btc for 0.26% (a recent example but I've seen it with bigger variance).

The reverse may also happen but people tend not to return the loans earlier when the rates are higher than when they took the loan (from what I saw with my account)
The problem here is that if the big loans are not returned, we can't get the advantage of the spikes.

I am wondering if the best option here would be to split the offers into small amounts, even if we will also lend more often during the bad spikes.

If I'm not wrong in my thoughts and there is a need to test the behavior, maybe add a configuration var to set the maximum amount of btc per loan? so we can all test it the way we want and give you feedback.
I don't know how much work it would be though.

Regards,

Safe-hollow connection problems

I get errors from the safe-hollow server, that makes the bot unusable. Any ideas why and when its gonna be back up again?

By the way great work on your bot I like it a lot.

2017-06-08 09_18_44-datpc - teamviewer - licence gratuite seulement pour l utilisation privee

Question: Bitfinex is in the roadmap ?

@dutu
I was checking out the code and found some lines regarding Bitfinex.
Is it in your plans? Or it's just a code reusage? :)
I mean their fiat lending platform shows really good returns and I think they have 2nd largest lending pool after Poloniex.
Thx.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.