Code Monkey home page Code Monkey logo

api's People

Contributors

coinfloor-ltd avatar david-coinfloor avatar kamilbolka avatar kokishimada avatar obi avatar shashankjo avatar vanjan 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

Watchers

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

api's Issues

limits docs

The limits docs have the following for open orders queries:

Open orders | 1,000 per user

1000 per user? Surely there's a time period missing here?

Can we have some rest API improvements?

For transfers

  • remove need to specify market symbol (it doens't make sense in this case AND it would reduce API calls) and replace with a currency symbol
  • add the crypto address
  • add the network transaction id
  • fix the fee (it's always zero)

For trades:

  • add a taker / maker flag
  • remove the requirement for a market symbol (to reduce API calls)

Order

  • add order history endpoint (don't force use the specify market symbol)

I know the web socket feed is preferred to the REST API but it doesn't help when querying for historical data.

BTC Withdrawals

Good day,

I see in the documentation that you do not support withdrawals. Is this on the roadmap to be developed? And if so, is it possible to get an ETA?

Thanks,
Jevon

Possible flaw in authentication process

Currently, to generate a signature for the websocket:

  1. User ID and password are combined.
  2. The combination goes through SHA-224 to produce a 224-bit number
  3. The 224-bit number is treated as a private key under secp224k1

The problem is not all 224-bit numbers are valid private keys. As per secp224k1, the number needs to be under the order n of G
n = 01 00000000 00000000 00000000 0001DCE8 D2EC6184 CAF0A971 769FB1F7

Therefore, there is a chance (small but not zero) a user being unable to authenticate, due to their ID/password combination's hash falling outside of the valid range.

mutating trade IDs?

I downloaded some transaction data via the coinfloor REST API a while ago and recorded it to disk. When I recently downloaded the same data I noticed that I had what appeared to be a bunch of over filled orders. On closer inspection I noticed that I have two almost identical trades for a single order, differing only by their id.

The trade as it looks today is this:

  {
    "datetime": "2017-08-05 03:42:40",
    "id": 1501904560496851,
    "type": 2,
    "xbt": "0.1000",
    "xbt_usd": "2678.00",
    "usd": "-267.80",
    "fee": "0.00",
    "order_id": 85721093
  }

But in the past i had this:

  {
    "datetime": "2017-08-05 03:42:40",
    "id": 1501904560496850,
    "type": 2,
    "xbt": "0.1000",
    "xbt_usd": "2678.00",
    "usd": "-267.80",
    "fee": "0.00",
    "order_id": 85721093
  }

(Identical values apart from the id)

But this older version of the trade (1501904560496850) is no longer returned but the API. It's as if the trade id isn't constant. Does it change? Could someone explain what's happened please?

Please reintroduce delisted markets

I need access to historical data for tax and accountancy purposes. I see that access delisted markets from the REST API results in an error. Can you please reintroduce them?

trades not being 100% filled

​Some of my orders are not being 100% filled. I have submitted several and they are being executed but the volume is not quite 100% of the volume I requested. I am trading using the API.

​For example: ​I submitted a limit bid order for at price 1800 for 0.1000 BCH/GBP on Mon Jan 08 21:18:49 GMT 2018. The order id was 129356589, the trade has executed and there is no open order remaining.​

The trade that was executed (according to your api) was:

{
"datetime": "2018-01-08 21:18:50",
"id": 1515446330350463,
"type": 2,
"bch": "0.0997",
"bch_gbp": "1800.00",
"gbp": "-179.46",
"fee": "0.54",
"order_id": 129356589
}

You can see the BCH quantity is no correct, it's a little short. This happens ​quite often, but not always - some trades are 100% filled​​.

Order IDs from market trades

Hi,

I see when a buy market order is placed, the documentation indicates that only "remaining - how much of the requested quantity or total could not be traded" is return. Is there no order Id generated for market Orders?

Requesting the orders via the 'user_transactions' API gives me:

{ datetime: '2018-12-14 13:03:15', id: 1544792595874781, type: 2, xbt: '0.0192', xbt_gbp: '2612.00', gbp: '-50.15', fee: '0.15', order_id: null }

This shows a null for 'order_id'. Is this right? If so, what method is there for me to match a particular buy market trade with the my trade history (user_transactions)?

websocket order book behaviour

I'm trying to manage a copy of the orderbook using the websocket feed. Do you have a working example (possibly the one you use on your website) that shows how to manage the different messages that come in?

Price scaling in websocket API

The websocket docs say this, for the response structures where an order price is quoted:
"price is the price at which the order had offered to trade, scaled by a factor of 10000."

However in practice this is not the case. For XBT/GBP at least, the price is in fact scaled by a factor of 100. This is actually what is documented in the scale docs, so should I assume that it is 100 in all pairs? As you may appreciate, it is very difficult to test these things without risking money.

HTTP public ticker CORS issue

I am trying to call: https://webapi.coinfloor.co.uk:8090/bist/XBT/GBP/ticker/ using JavaScript but get a cors issue:

Failed to load https://webapi.coinfloor.co.uk:8090/bist/XBT/GBP/ticker/: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

fetch('https://webapi.coinfloor.co.uk:8090/bist/XBT/GBP/ticker/').then(response => { 
  return response.json();
}).then((data) => {
  console.log(data);
}).catch((err) => {
  console.log(err)
});

ws auth

@kamilbolka has the websocket authentication method changed? I'm getting You sent an incorrect login cookie.

websocket orderbook events look wrong

I've subscribing to one and only one orderbook feed in my process

{ message: 'subscribing to ob feed',
  key: '63488.64032',
  marketSymbol: 'BTC/GBP',
  baseMapping: { ccy: 'XBT', scale: 10000, id: 63488 },
  quoteMapping: { ccy: 'GBP', scale: 100, id: 64032 } }

But I occasionally get events for another channel:

{ base: 63488,
     counter: 64000,
     id: 35119760,
     notice: 'OrderClosed',
     price: 811700,
     quantity: -28,
     tonce: 1590511543, }

fees?

Is there a way to get my trading fee from the API?

trades between dates

Is there a method in the coinfloor.py module (in Python) that allows the user to get all trades between a start and end date for a given currency ? or instruction on how to do this please ?

thanks.

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.