Scripts Python pour les instantanés du carnet de commandes de Crypto Exchange historiques

>

Il existe un problème majeur sur le marché de la crypto-monnaie. D’innombrables bourses exploitent des milliers de marchés commerciaux et pompent des milliards de points de données chaque jour. Bien que les données soient accessibles au public, personne n’a collecté, organisé et stocké ces données d’une manière facilement accessible aux développeurs..

De manière pratique, Shrimpy s’efforce de résoudre ce problème avec des données provenant de Kaiko. Tout au long de cet article, nous décrirons comment les développeurs peuvent commencer à accéder aux données historiques du marché pour exécuter des backtests, analyser le marché et étudier les tendances..

Le API de développement Shrimpy donner accès aux carnets d’ordres d’échange historiques. Des instantanés de chaque carnet de commandes sont pris à intervalles d’une minute. En utilisant le Bibliothèque Python Shrimpy, nous fournirons des exemples de la façon dont les développeurs peuvent accéder aux données historiques avec seulement quelques lignes de code.

Qu’est-ce qu’un carnet de commandes d’échange?

En termes simples, le carnet de commandes est la liste de tous commandes ouvertes qui sont actuellement disponibles sur un échange pour une paire de négociation spécifique. Un ordre ouvert est essentiellement un autre investisseur qui se dit prêt à acheter ou vendre un actif à un prix spécifique.

Format des données

Chaque instantané du carnet de commandes contiendra les informations suivantes:

  • Horodatage – La date et l’heure auxquelles l’instantané du carnet de commandes a été pris.

  • Demandez les prix – Les 20 meilleurs prix demandés sur le carnet de commandes à l’époque.

  • Prix ​​de l’offre – Les 20 meilleurs prix de l’offre sur le carnet de commandes à l’époque.

  • Prix ​​- Le prix exact de la commande disponible en fonction de la devise du devis.

  • Taille – La taille de la commande disponible en termes de devise de base.


[

{

"temps":"2020-03-02T09: 00: 58Z",

"demande": [

{

"le prix":"8672,77",

"Taille":"0,002738" },

{

"le prix":"8672,78",

"Taille":"0,022015" },

{

"le prix":"8673,47",

"Taille":"0,4" },

],

"offres": [

{

"le prix":"8672,49",

"Taille":"0,088572" },

{

"le prix":"8672,47",

"Taille":"0,181144" },

{

"le prix":"8672,44",

"Taille":"0,088572" },

]

}

]

Chaque instantané du carnet d’ordres est spécifique à une seule paire de négociation sur une seule bourse. Les instantanés du carnet de commandes ne sont pas agrégés entre les bourses ou les paires de marchés.

Instantané unique – Paire de négociation unique

Un seul instantané peut être récupéré en spécifiant «1» pour le champ de limite lors de la demande de carnets de commandes historiques.

importer des crevettes

# inscrivez-vous sur https://developers.shrimpy.io/ pour obtenir votre clé API

public_key = ‘…’

secret_key = ‘…’

client = shrimpy.ShrimpyApiClient (public_key, secret_key)

orderbooks = client.get_historical_orderbooks (

‘binance’, # échange

‘BTC’, # devise de base

‘USDT’, # devise de cotation

‘2020-03-02T09: 00: 00.000Z’, # heure de début

‘2020-03-02T09: 05: 00.000Z’, # heure de fin

1 # obtenir un seul instantané (le premier de la période)

)

avec open (‘depth.txt’, ‘w’) comme fichier:

file.write (json.dumps (orderbooks)) # utilisez `json.loads` pour faire l’inverse

Instantané unique – Paires de trading multiples

L’accès aux données entre les échanges est simple. Imaginez que vous souhaitiez comparer les instantanés historiques d’une paire de trading spécifique sur plusieurs bourses différentes. Remplacer différents échanges dans la requête API est aussi simple que quelques petites mises à jour de notre script.

importer des crevettes

# inscrivez-vous sur https://developers.shrimpy.io/ pour obtenir votre clé API

public_key = ‘…’

secret_key = ‘…’

client = shrimpy.ShrimpyApiClient (public_key, secret_key)

échanges = ["binance", "kucoin", "bittrex", "okex"]

carnets de commandes = {}

pour échange en échanges:

carnets de commandes [échange] = client.get_historical_orderbooks (

échange, # échange

‘BTC’, # devise de base

‘USDT’, # devise de cotation

‘2020-03-02T09: 00: 00.000Z’, # heure de début

‘2020-03-02T09: 05: 00.000Z’, # heure de fin

1 # obtenir un seul instantané (le premier de la période)

)

avec open (‘depth.txt’, ‘w’) comme fichier:

file.write (json.dumps (orderbooks)) # utilisez `json.loads` pour faire l’inverse

Instantanés multiples – Paires de négociation multiples

Les développeurs n’ont pas besoin d’accéder à un seul instantané à la fois. L’augmentation de la «limite» pour chaque demande nous permet de récupérer jusqu’à 1 000 instantanés consécutifs du carnet d’ordres pour une seule paire de négociation..

importer des crevettes

# inscrivez-vous sur https://developers.shrimpy.io/ pour obtenir votre clé API

public_key = ‘…’

secret_key = ‘…’

client = shrimpy.ShrimpyApiClient (public_key, secret_key)

échanges = ["binance", "kucoin", "bittrex", "okex"]

carnets de commandes = {}

pour échange en échanges:

carnets de commandes [échange] = client.get_historical_orderbooks (

échange, # échange

‘BTC’, # devise de base

‘USDT’, # devise de cotation

‘2020-03-02T06: 00: 00.000Z’, # heure de début

‘2020-03-02T09: 00: 00.000Z’, # heure de fin

100 # obtenir un seul instantané (le premier de la période)

)

avec open (‘depth.txt’, ‘w’) comme fichier:

file.write (json.dumps (orderbooks)) # utilisez `json.loads` pour faire l’inverse

Remarque: il ne s’agit pas de scripts de niveau production. Ils ont été rassemblés à titre d’exemples simples. L’exécution de ces scripts collectera des données réelles à partir des API Shrimpy et facturera des crédits de données en conséquence. Veuillez faire preuve de prudence lors de l’exécution de ces scripts.

Coût du crédit de données

Les instantanés du carnet de commandes coûtent 10 crédits de données pour chaque instantané du carnet de commandes extrait de Shrimpy. Cela signifie que si vous entrez une taille limite de 100 et que Shrimpy renvoie 100 instantanés du carnet de commandes pour une seule paire de négociation, cela coûtera 1000 crédits de données..

Le coût des crédits de données change en fonction des niveaux d’abonnement. Avec le niveau d’abonnement le plus élevé, les développeurs peuvent accéder à plus d’un milliard de crédits de données par mois. Les niveaux d’abonnement les plus populaires vont de 35 $ à 350 $ et reçoivent de 1 à 70 millions de crédits de données.

Plans de tarification des crédits de données

Les forfaits de données commencent à 35 $ pour 1 million de crédits de données. Avec le plan de 350 $, Shrimpy donne accès à 70 millions de crédits de données par mois.

Bonnes lectures supplémentaires

Comment créer un robot de trading crypto à l’aide de Python

Comment télécharger des données de chandelier de crypto-monnaie à partir d’échanges

Scripts d’arbitrage pour les robots de trading crypto

Script pour Bitcoin Price Live Ticker (à l’aide de Websockets)

À propos de Shrimpy

L’API Developer Trading de Shrimpy est un moyen unifié d’intégrer la fonctionnalité de trading dans chaque bourse majeure. Collectez des données de marché, accédez à des websockets en temps réel, exécutez des stratégies de trading avancées et gérez un nombre illimité d’utilisateurs.

API Shrimpy Crypto Trading: Crevettes | API Crypto Trading pour les développeurs

N’oubliez pas de nous suivre sur Twitter et Facebook pour les mises à jour, et posez des questions à notre incroyable Télégramme communauté.

L’équipe Shrimpy

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me