CoinTracking Data API

4 stars based on 35 reviews

This tutorial will walk you through the full process of building a bitcoin bot with PHP - from setup, on to your first execution of an automated trade, and beyond. Those kinds of gains are nearly unbelievable to a traditional investor and yet these are across the board in this space.

So here is a scenario:. You made a ton of money on cryptocurrencies and have some concerns about shuffling it through your bank because of potential capital gains tax issues. There are places that have a solution for you if you want to be able to use this money for other investments.

But, you say, I am a coder who likes to automate things, surely we can fire up some BTCbot and we can have it just do the work for us, it will make us millions in our sleep, right?

If you think PHP is just for web pages, read on, this should surprise you. I like to build systems. I have been working on this post for a while and it represents a good deal of non-derivative custom work.

It's a full application already, but we'll be using its functionality to get the stuff in this post done. It is recommended you use the extremely Laravel-friendly Homestead Improved Vagrant box for a good, isolated development environment you can get started with in under 5 minutes. If you're unfamiliar with Vagrant, here's an excellent re-introductionand if you'd like to dig deeper, this premium book will teach you amazing things.

Extras and some testing data, these scripts are SKLearn price forecasting scripts taken from a study on beer consumption I thought was really useful, these might be used for market price predictions. If you execute php artisanyou should see something like the following, the part you are interested in is below. Redis really does not need any tweaking out of the box, it's installed and ready if you're using Homestead Improved.

MySQL will need a database and a few tables. Change the credentials in the. The links are referral links which also bring me some perks if you sign up. They key their market data off of the Bitfinex websocket and match with Oanda streaming data for Forex. This site allows you to trade many instruments and commodities with BTC at up to 20x leverage, Forex up to x as well as providing BTC-based binary options. They have a simple, easy to understand interface and an excellent API. API access is found here.

I have been automated-trading there since they first opened. The reasoning behind this combination is that the Whaleclub and 1Broker APIs are rate limited, WC only allows 60 requests per minute, if we want to make sure we have streaming real-time data to work with we need to stream from a BTC brokerage. Once you get the API keys for these sites, you will want to put them in your. Facebook Code - Deal or no deal?

About this Site Contact us. So here is a scenario: Steps we are going to take: Walk through the core parts of the system, see what is where. Install and configure the software we need.

Account creation at the brokerages we will be using, setting up the API keys for the scripts. Run tests and examples. Set up websocket streams to get data. Finding strategies for our automated agents. Deep dive into Indicators and Candles available to us. Coding up our first agent.

A few closing words about the risks you are taking. API accounts we need in order to set up automated trading Full disclosure:

Litecoin guiminer scrypt

  • Litecoin vs bitcoin graphics cards

    Ethereum mining faq pages

  • Dogecoin btcusd bitstamp

    Bitcoin core wallet synchronizing with network

Gv r929d5 4gd b ga litecoin minerals

  • Dash mining investors

    Bitcoin high frequency trading bot software free download

  • Ethereum mining cpu benchmark

    Get bitcoin private key from coinbase

  • Minimum hardware requirements for bitcoin mining

    Nsequence bitcoin chart

Is bitcoin mining worth itign boards

28 comments How to buy monero on binance with ltc

Telegram bot maker freelancer

Welcome to the CoinAPI developer documentation. This document should contain all the information required to properly implement applications using our API. If possible then we are strongly recommending using our tested libraries available on GitHub, rather than creating new ones.

However, if you decide to create your own implementation or to change existing one, then we encourage you to create Pull Request to our main repository with proposed changes, then we will able to include your code in our official repository for use by other users, effectively creating collaboration. Encryption in CoinAPI is not optional. All communication to us is always encrypted using protocols that are considered best security practices.

ISO currency code standard is used for fiat money identifications. Cryptocurrency assets are identified using codes used by the general public or adopted by the majority of exchanges. Numbers in our platform can have maximum 19 digits overall, but no more than 9 decimal places. In cases when number representing aggregate value then we allowing 38 digits overall, but still no more than 9 decimal places.

Production endpoint, requires API key for authentication and providing real data: You can authorize by providing an additional parameter named apikey with a value equal to your API key in the query string of your HTTP request.

This will indicate to us that we can deliver compressed data to you which on your side should be decompressed transparently. Successful HTTP responses have the status code and the body in a format according to documentation of the requested resource.

All HTTP requests with response status codes different to must be considered as failed and you should expect additional JSON inside the body of the response with the error message encapsulated inside it as shown in the example.

We use the following error codes:. Each data point of this timeseries represents several indicators calculated from transactions activity inside a time range period. This section describes calls related to executed transactions data, also known as matched orders data or active data.

If exchange has not reported who was aggressor side of transaction, we will classify who most probably was based on current market view.

To get current last trade for all symbols, use Quotes current data as it includes last trade information. Get latest trades from all symbols up to 1 minute ago or get latest trades from a specific symbol without time limitation. Latest data is always returned in time descending order. This section describes calls related to quotes data, also known as quotes or passive level 1 data.

Get latest quote updates up to 1 minute ago or get updates for a specific symbol without time limit. This section describes calls related to order book data, also known as books or passive level 2 data. Get historical order book snapshots for a specific symbol within time range, returned in time ascending order. WebSocket endpoint provides real-time market data streaming which works in Subscribe-Publish communication model. After establishing a WebSocket connection with us, you will need to send a Hello message in accordance with this documentation.

If everything is correct, we will provide you with a continuous stream of real-time market data updates. Another example of a hello message for subscription of all data types from all exchanges and symbols:. If your message will be incorrect, we will send you error message and disconnect connection afterwards. Hello message can be repeated, each one will cause subscription scope override without interruption of your WebSocket connection.

You need to be prepared to receive an error message from us when you send something wrong; all errors are permanent and you should expect that the underlying WebSocket connection will be closed by us after sending an error message.

If exchange has not reported who the aggressor side of the transaction was, then we will classify who it most probably was based on current market view. A Book message is sent for each snapshot or update of the order book.

After subscription to this data type is initialized, we immediately start delivering updates to the order book and at least one snapshot will be provided as soon as possible with the nearest update of the book. Heartbeat message is sent to you every time there is one second of silence in communication between us, if you agreed on this feature in Hello message.

Financial Information eXchange FIX protocol is an electronic communications protocol initiated in for international real-time exchange of information related to the securities transactions and markets.

If your FIX protocol implementation does not support establishing a connection over a secure channel, you must use a proxy between your client and our FIX gateway to unbundle encryption. After successful authorization, server will respond with same message type and start delivering market data messages to you. Message sent by any side to close established session. If received, should be sent back unchanged to confirm session termination. If exchange has not reported who the aggressor side of the transaction was, we will classify who it most probably was based on current market view.

There are 3 main interfaces that can be used to access CoinAPI: In repository you can find libraries or examples for languages or enviroments like: Asset codes ISO currency code standard is used for fiat money identifications. Numbers precision Numbers in our platform can have maximum 19 digits overall, but no more than 9 decimal places.

Time For all input and output time values ISO standard is used. Format specifier Description yyyy The year as a four-digit number. MM The month, from 01 through HH The hour, using a hour clock from 00 to Input time values are parsed using the following formats as far as possible: Endpoints Production endpoint, requires API key for authentication and providing real data: There are 2 methods for passing the API key to us, you only need to use one: We use the following error codes: X-RateLimit-Remaining int The number of requests left for the time window.

Superset of the ISO currency codes standard. List all symbols curl https: List all periods curl https: Latest data curl https: Current data curl https: Endpoint Production endpoint, requires API key for authentication and providing real data: Stream preferences Heartbeat and subscription details API key for authorization If your message will be incorrect, we will send you error message and disconnect connection afterwards.

Data type Description trade Executed transactions feed order book matches quote Quote updates feed order book level 1 book Order book snapshots and updates feed order book level 2, full order book snapshot and real-time updates book5 Order book snapshots feed order book level 2, 5 best levels from each side of book book20 Order book snapshots feed order book level 2, 20 best levels from each side of book book50 Order book snapshots feed order book level 2, 50 best levels from each side of book Error handling Example JSON error message is structured like this: If true then all bid and ask levels are listed, otherwise only changed since the last message.

FIX API General Financial Information eXchange FIX protocol is an electronic communications protocol initiated in for international real-time exchange of information related to the securities transactions and markets. Endpoint FIX client configuration file: Parameter Value Hostname fix. Always the last field in a message, i. Stateful API providing streaming of realtime market data, widely adopted by the finance industry. Output data format optional, default value is json , possible values are json , xml or csv.

Ignore header line in CSV output? Encapsulate strings with quotes in CSV output? Comma delimited list of column names to ignore in CSV output optional, by default all columns are included. Character that will be used as column delimiter in CSV output optional, default value is ;. Character that will be used as decimal separator in CSV output optional, default value is. New line type optional, default value is unix , possible values win , mac , unix.

Boolean value; true for cryptocurrency assets, false otherwise. Comma or semicolon delimited parts of symbol identifier used to filter response. Type of symbol possible values are: FX Spot derivative contract where traders agree to trade right to require buy or sell of fx spot at agreed price on exercise date. Boolean value representing option type.

Requested exchange rate base asset identifier. Full list available here. Requested exchange rate quote asset identifier.

Time at which exchange rate is calculated optional, if not supplied then current rate is returned. Requested exchange rates base asset identifier. Symbol identifier of requested timeseries full list available here. Identifier of requested timeseries period required, e. Include items with no activity? Amount of items to return optional, mininum is 1, maximum is , default value is , if the parameter is used then every output items are counted as one request. Timeseries ending time in ISO optional, if not supplied then the data is returned to the end or when count of result elements reaches the limit.

Symbol identifier for requested timeseries full list available here. Timeseries ending time in ISO optional, if not supplied then the data is returned to the end or when result elements count reaches the limit. Timeseries ending time in ISO optional, if not supplied then the data is returned to the end or when result elements reaches count the limit.

List of data types you want to receive required, possible values listed in table below. Filter data to symbols whose identifiers match at least one of the listed prefixes optional, if not provided then stream will not filtered by symbols. Filter data to symbols which are related to the at least one of the listed asset identifiers optional, if not provided then stream will not be filtered by assets.

Order book snapshots and updates feed order book level 2, full order book snapshot and real-time updates.