Crypto Exchange Order Book Websockets voor ontwikkelaars [Python-scripts]

>

We komen live naar u toe vanuit elke grote cryptocurrency-uitwisseling.

Als tijd geld is, verklaart dat waarom iedereen altijd op zoek is naar maximale tijd. Ingenieurs zijn niet anders. Ze willen de snelste tools, meest efficiënte gegevensbronnen en betrouwbare infrastructuur.

Toegang tot cryptocurrency-gegevens is historisch traag. Veel databronnen zoals CoinMarketCap update op een tijdsinterval van 5 minuten. Voor de meeste ontwikkelaars is dit onaanvaardbaar.

Dat is waar Shrimpy te hulp schiet.

Shrimpy is snel. Zo snel dat u niet eens met uw ogen kunt knipperen zonder te missen hoe snel gegevens worden verwerkt door uitwisselingen. Nadat ze Shrimpy voor de eerste keer hebben gebruikt, zeggen mensen dingen als: “man die stopcontactstromen zijn SNEL” (directe quote van een Shrimpy-gebruiker).

In deze tutorial laten we je zien hoe je toegang krijgt tot onze razendsnelle websocket-streams in minder dan 5 minuten. Dat klopt, onze snelle websockets verdienen een snelle tutorial.

Dus, voordat we aan de slag gaan, voert u deze 3 stappen uit:

  1. Meld u aan voor het Shrimpy Developer API’s.

  2. Installeer het Shrimpy Python-bibliotheek.

  3. Maak een API-sleutel en abonneer u.

Data formaat

Voordat we voorbeeldscripts krijgen, moeten we eerst de gegevens begrijpen die we verzamelen. In de volgende twee secties behandelen we “momentopnamen van het orderboek” en “updates van het orderboek”. Deze twee berichten lijken in veel opzichten op elkaar, maar ze dienen verschillende doeleinden.

Bestel momentopnamen van boeken

Momentopnamen van het orderboek zijn het eerste bericht dat u via de websocket ontvangt nadat u zich hebt aangemeld. Deze momentopname bevat het volledige orderboek voor één handelspaar.

Merk op dat er een element is dat “momentopname" is waar”. Dit is hoe we weten dat dit bericht een momentopname is van het volledige orderboek.

"uitwisseling"​ "coinbasepro",

"paar-"​ "ltc-btc",

"kanaal"​ "orderboek",

"momentopname": waar,

"volgorde": 6784322,

"inhoud"​

"vraagt"​

"prijs"​ "59.782355",

"hoeveelheid"​ "3.456722" ​,

"prijs"​ "60.782355",

"hoeveelheid"​ "3.456722" ​,

​,

"biedingen"​

"prijs"​ "58.782355",

"hoeveelheid"​ "3.456722" ​,

"prijs"​ "56.782355",

"hoeveelheid"​ "3.456722" ​,

Bestelboekupdate

Na de eerste momentopname van het orderboek, zullen updates onmiddellijk beginnen te streamen via de websocket. Elk van deze updates moet worden toegepast op de originele momentopname die is ontvangen. Op die manier is het lokale orderboek dat u bijhoudt altijd up-to-date met de laatste waarden.

Wanneer we een update ontvangen voor een specifieke “prijs”, moeten we de oude “hoeveelheid” vervangen door de nieuwe “hoeveelheid”. Als een update een ‘prijs’ specificeert die we momenteel niet in ons lokale exemplaar van het orderboek hebben, moeten we ons orderboek bijwerken zodat het die prijs en hoeveelheid bevat.

"uitwisseling"​ "coinbasepro",

"paar-"​ "ltc-btc",

"kanaal"​ "orderboek",

"momentopname": niet waar,

"volgorde": 6784322,

"inhoud"​

"vraagt"​

"prijs"​ "59.782355",

"hoeveelheid"​ "3.456722" ​,

"prijs"​ "61.782355",

"hoeveelheid"​ "3.56722" ​,

​,

"biedingen"​

"prijs"​ "58.782355",

"hoeveelheid"​ "3.61234" ​,

"prijs"​ "56.782355",

"hoeveelheid"​ "1.34234" ​,

Eenvoudig scriptvoorbeeld

In het volgende script maken we verbinding met de orderboekwebsocket voor het ETH / BTC-handelspaar op Binance. Elke keer dat we een bericht ontvangen via de websocket, zullen we dit afdrukken.

Merk op dat we het orderboek niet bijhouden met dit script. Dat betekent dat we na het afdrukken van elk bericht niets met het bericht doen. Dit is slechts een voorbeeld.

importeer garnalen

# meld u aan voor https://developers.shrimpy.io/ om uw API-sleutel te krijgen

public_key = ‘…’

secret_key = ‘…’

# Dit is een voorbeeld-handler, het print gewoon het inkomende bericht naar de console

def error_handler (err):

print (err)

# Dit is een voorbeeld-handler, het print gewoon het inkomende bericht naar de console

def handler (msg):

print (msg)

api_client = shrimpy.ShrimpyApiClient (public_key, secret_key)

raw_token = api_client.get_token ()

client = shrimpy.ShrimpyWsClient (error_handler, raw_token [‘token’])

subscribe_data = {

"type"​ "abonneren",

"uitwisseling"​ "binance",

"paar-"​ "eth-btc",

"kanaal"​ "orderboek"​

# Begin met het verwerken van de Shrimpy websocket-stream!

client.connect ()

client.subscribe (subscribe_data, handler)

# Eenmaal voltooid, stopt u de client

client.disconnect ()

Dat is het! Je hebt nu toegang tot streaming live orderboekupdates van elke grote beurs.

Merk op dat we met dit Python-scriptvoorbeeld niet hebben gedeeld hoe we een orderboek correct kunnen bijhouden. Aangezien de strategieën voor het bijhouden van een orderboek afhangen van uw specifieke gebruikssituatie, raden we u aan verschillende opties te onderzoeken en de versie te implementeren die voor u het beste werkt..

Conclusies

Verbinding maken met cryptocurrency-uitwisselingen en het streamen van live orderboekgegevens is eenvoudig met de ontwikkelaars-API’s van Shrimpy. Elke uitwisseling is op dezelfde manier toegankelijk, aangezien Shrimpy het zware werk doet als het gaat om het verzamelen van gegevens, het verwerken van updates en het converteren van alle gegevens naar een consistent formaat.

Herinnering: Bijwerkingen van het gebruik van de ontwikkelaars-API’s van Shrimpy zijn onder meer: ​​(1) Projecten eerder dan gepland en onder budget voltooien (2) Onbedoeld het woord ‘wow’ mompelen terwijl je naar gegevens staart die op je scherm knipperen (3) Vergeten wat het is was als het verwerken van uitwisselingsgegevens voordat u Shrimpy ging gebruiken.

Historische momentopnamen van het orderboek

Toegang tot meer dan 1 miljard momentopnamen van historische orderboeken met de krachtigste cryptogegevens-API’s.

Extra goede resultaten

Hoe maak je een crypto-handelsbot met Python

Cryptocurrency Candlestick-gegevens downloaden van uitwisselingen

Arbitragescripts voor cryptohandelbots

Script voor Bitcoin Price Live Ticker (met behulp van websockets)

Over Shrimpy

De Developer Trading API van Shrimpy is een uniforme manier om handelsfunctionaliteit te integreren in elke grote beurs. Verzamel marktgegevens, krijg toegang tot realtime websockets, voer geavanceerde handelsstrategieën uit en beheer een onbeperkt aantal gebruikers.

Shrimpy Crypto Trading API: Garnaal | Crypto Trading API’s voor ontwikkelaars

Vergeet ons niet te volgen Twitter en Facebook voor updates en stel eventuele vragen aan onze verbazingwekkende Telegram gemeenschap.

Het Shrimpy-team

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