Crypto Exchange ordreboknettsteder for utviklere [Python-skript]

>

Vi kommer til deg live fra alle større kryptokursutvekslinger.

Hvis tid er penger, forklarer det hvorfor alle alltid ønsker å maksimere tiden sin. Ingeniører er ikke annerledes. De vil ha de raskeste verktøyene, de mest effektive datakildene og pålitelig infrastruktur.

Tilgang til kryptovaluta-data har historisk vært treg. Mange datakilder som CoinMarketCap oppdatering på et 5-minutters tidsintervall. For de fleste utviklere er dette uakseptabelt.

Det er der reker kommer til unnsetning.

Reker er rask. Så fort at du ikke en gang kan blunke med øynene uten å savne hvor raskt data behandles fra sentraler. Etter å ha brukt Shrimpy for første gang, sier folk ting som, “mann, disse strømmer er raske” (direkte sitat fra en Shrimpy-bruker).

I denne opplæringen vil vi vise deg hvordan du får tilgang til våre lynrask websocket-strømmer på under 5 minutter. Det stemmer, våre raske websockets fortjener en rask opplæring.

Så før vi begynner, fullfør disse tre trinnene:

  1. Registrer deg for Shrimpy Developer APIs.

  2. Installer Shrimpy Python Library.

  3. Opprett en API-nøkkel og abonner.

Dataformat

Før vi kommer til eksempler på skript, må vi først forstå dataene vi samler inn. I de neste to avsnittene vil vi dekke “øyeblikksbilder av ordrebok” og “oppdateringer av ordrebok”. Disse to meldingene er like på mange måter, men de tjener forskjellige formål.

Bestill øyeblikksbilder

Øyeblikksbilder av ordrebøker er den første meldingen du vil motta via nettkontakten etter at du abonnerer. Dette øyeblikksbildet inneholder hele ordreboken for et enkelt handelspar.

Legg merke til at det er et element som spesifiserer “øyeblikksbilde" er sant”. Slik vet vi at denne meldingen er et øyeblikksbilde av hele ordreboken.

{

"Utveksling": "myntbasepro",

"par": "ltc-btc",

"kanal": "bestillingsbok",

"øyeblikksbilde": sant,

"sekvens": 6784322,

"innhold": {

"spør": [

{

"pris": "59,782355",

"mengde": "3.456722" },

{

"pris": "60,782355",

"mengde": "3.456722" },

],

"bud": [

{

"pris": "58,782355",

"mengde": "3.456722" },

{

"pris": "56,782355",

"mengde": "3.456722" },

]

}

}

Oppdatering av ordrebok

Etter det første øyeblikksbildet av ordreboken vil oppdateringer umiddelbart begynne å streame gjennom websocket. Hver av disse oppdateringene skal brukes på det opprinnelige øyeblikksbildet som ble mottatt. På den måten er den lokale ordreboken du opprettholder alltid oppdatert med de nyeste verdiene.

Når vi mottar en oppdatering for en spesifikk “pris”, bør vi erstatte den gamle “mengden” med den nye “mengden”. Hvis en oppdatering spesifiserer en “pris” som vi for øyeblikket ikke har i vår lokale kopi av ordreboken, bør vi oppdatere ordreboken slik at den inneholder den prisen og mengden.

{

"Utveksling": "myntbasepro",

"par": "ltc-btc",

"kanal": "bestillingsbok",

"øyeblikksbilde": falsk,

"sekvens": 6784322,

"innhold": {

"spør": [

{

"pris": "59,782355",

"mengde": "3.456722" },

{

"pris": "61,7782355",

"mengde": "3.56722" },

],

"bud": [

{

"pris": "58,782355",

"mengde": "3.61234" },

{

"pris": "56,782355",

"mengde": "1.34234" },

]

}

}

Eksempel på enkelt skript

I det følgende skriptet vil vi koble til bestillingsboksen for ETH / BTC-handelsparet på Binance. Hver gang vi mottar en melding via websocket, vil vi skrive den ut.

Legg merke til at vi ikke vedlikeholder ordreboken med dette skriptet. Det betyr at etter at vi har skrevet ut hver melding, gjør vi ikke noe med meldingen. Dette er kun for eksempel formål.

importer reker

# registrer deg for https://developers.shrimpy.io/ for å få API-nøkkelen

public_key = ‘…’

secret_key = ‘…’

# Dette er en prøvehåndterer, den skriver bare innkommende melding til konsollen

def error_handler (err):

skrive ut (feile)

# Dette er en prøvehåndterer, den skriver bare innkommende melding til konsollen

def handler (msg):

skriv ut (msg)

api_client = reker.ShrimpyApiClient (offentlig nøkkel, hemmelig nøkkel)

raw_token = api_client.get_token ()

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

subscribe_data = {

"type": "abonnere",

"Utveksling": "binance",

"par": "eth-btc",

"kanal": "bestillingsbok"}

# Begynn å behandle Shrimpy websocket-strømmen!

client.connect ()

client.subscribe (subscribe_data, handler)

# Når du er ferdig, stopper du klienten

klient. koble fra ()

Det er det! Du har nå tilgang til direktesendinger av ordrebok fra hver større sentral.

Legg merke til at vi ikke delte hvordan vi skal vedlikeholde ordrebøker på riktig måte med dette eksemplet på Python-skript. Siden strategiene for å opprettholde en ordrebok vil avhenge av din spesifikke brukssak, vil vi anbefale å undersøke forskjellige alternativer og implementere den versjonen som passer best for deg.

Konklusjoner

Det er enkelt å koble til kryptovaluta-utveksling og streame direkte ordreboksdata med Shrimpy-utviklerens API-er. Hver sentral kan nås på samme måte siden Shrimpy løfter tungt når det gjelder å samle inn data, behandle oppdateringer og konvertere alle data til et konsistent format.

Påminnelse: Bivirkningene ved å bruke Shrimpy-utvikler-API-ene inkluderer: (1) Fullføre prosjekter før planlagt og under budsjett (2) Utilsiktet mumle ordet “wow” under pusten mens du stirrer på data som blinker på skjermen (3) Glemmer hva det var som å behandle utvekslingsdata før du begynte å bruke Shrimpy.

Historiske øyeblikksbilder av ordrebøker

Få tilgang til mer enn 1 milliard historiske ordreboksbilder med de kraftigste API-ene for kryptodata.

Ytterligere gode leser

Hvordan lage en Crypto Trading Bot ved hjelp av Python

Slik laster du ned kryptovaluta lysestake data fra børser

Arbitrage-skript for Crypto Trading Bots

Skript for Bitcoin Price Live Ticker (ved hjelp av nettsteder)

Om reker

Shrimpy’s Developer Trading API er en enhetlig måte å integrere handelsfunksjonalitet på alle større børser. Samle markedsdata, få tilgang til sanntidsnettsteder, utfør avanserte handelsstrategier, og administrer et ubegrenset antall brukere.

Shrimpy Crypto Trading API: Reker | API-er for Crypto Trading for utviklere

Ikke glem å følge oss videre Twitter og Facebook for oppdateringer, og still spørsmål til det fantastiske Telegram samfunnet.

The Shrimpy Team

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