Skip to content
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

Planning #2

Open
awitherow opened this issue Jul 31, 2017 · 7 comments
Open

Planning #2

awitherow opened this issue Jul 31, 2017 · 7 comments

Comments

@awitherow
Copy link

I just signed up for Coinigy, and holy $"§&=) am I going to be staying. I want to utilise your library and help maintain it.

What is undone? Where do you need help? What are your ideas on where we can take this sdk? etc.

Let me know! 👍

@skylinezum
Copy link
Owner

skylinezum commented Jul 31, 2017

Hey, so currently everything works. And I've written some simple unit tests. I want to share with you some caveats that are not documented with coinigy from a user perspective. We can then discuss what you would like to help with.

Caveats

  • rate limits on API calls to ~1/sec i manually use Promise.mapSeries + Promise.delay to keep from getting code 503 temporary unavailable errors
  • markets.mkt_name != ticker.exchange_market for some exchanges (i.e kraken, so you can't just automatically grab tickers for every exchange by listing exchange then listing markets)
  • no cancelall API even though every exchange has one (from a trading perspective this is a huge problem as cancelling individual orders with their rate limit is prohibiting)

Now with that said. I still use them so here are the things I'm trying to do for the library and for getting features requested from coinigy.

Goals/Todo

  • improve testing to get 100% coverage
  • better error handling
  • parse notifications vars + message to make coherent strings
  • batch calling helper function so that people can queue api calls simpler to prevent rate limits
  • ask for market order type
  • have everyone ask for better rate limits or a higher tier payment plan (i'd like your help since their support is very slow)
  • incorporate socket-cluster client
  • test socket-cluster client
  • reorganize code structure (any suggestion? or feedback)

Thanks for your interest in this little library I wrote super quickly :) Please let me know if there's anything you would like to add or have an interest in doing. I'll probably improve this library since I now know someone else is using it too.

@awitherow
Copy link
Author

Dude this is awesome. It is nice to receive a well thought out and motivating reply 🙇 🙏

The cancelall thing seems to be a pretty interesting one. I am chatting with one of the guys at coinigy and he was asking for some ideas. Perhaps we could try to get support/insights from their team and maybe even influence the creation of such an endpoint! Want me to write him about it?

I think the batch call helper function would be a really great addition... could be helpful as an open source contribution for the cancelall issue/feature request?

And the the quote about best/worst, I would like to take that out of the public and into more private. Could you please write me an email at [email protected] so we could chat about them a little more? I want to make sure the platform I am using is stable/secure/professional.

As you've written out, getting good test coverage is solid, as well as beefing up the documentation. I will attempt to get things running this week and dig through the code and write down observatory stuff in the readme and check out the error handling/tests.

On code structure, I will also give some feedback after looking through!

@skylinezum
Copy link
Owner

I think I will rewrite the functions to take an object as input instead of a long set of function params. so order won't matter and easier to handle optional keys.

@awitherow
Copy link
Author

awitherow commented Aug 6, 2017

I am working on a project right now that is just using bittrex, kind of swallowing my time. Slow and steady wins the race though 🐢 ping me in the PR about the object param.

@christophe-hall
Copy link

Guys, thanks for your work on this.

@skylinezum
Copy link
Owner

@awitherow + @christophe-hall

I've made breaking changes to take objects as input and clean up some other things. Let me know if everything is ok and if there's anything you'd like me to add.

@williamkehl
Copy link

Guys thank you so much for undertaking this, from the entire Coinigy dev team, we really appreciate it! I'm here to update you as we've added a new API call, "refreshOrders", which reaches out to the exchange to update/sync your open order status. It's identical to the "refreshBalance" call. Feel free to ping us on slack if you have any questions or issues at all!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants