Coinbase Pro Live og historiske markedsdata [Eksempel på Python-skript]

>

Coinbase Pro har blitt et av de mest fremtredende stedene for amerikanske handelsmenn å engasjere seg i kryptomarkedet. Dette hot spot har tiltrukket utallige utviklere, institusjoner og daghandlere. Dessverre lurer mange fortsatt på hvordan de kan få tilgang til live og historiske data fra Coinbase Pro på en effektiv og kostnadseffektiv måte.

Gjennom denne opplæringen vil vi guide deg gjennom prosessen med å sette opp Python-skript som gir deg tilgang til et av de mest komplette datasettene som er tilgjengelig i markedet til dags dato..

Ikke glem å bli med Utvikler Telegram Group som er dedikert til byggherrer som utvikler applikasjoner på børser. Vi er alltid klare til å svare på spørsmålene dine og hjelpe deg i gang!

Få Binance-data

Få tilgang til milliarder av historiske datapunkter for Binance. Øyeblikksbilder av ordrebøker, handelshistorikk og live websockets er alle tilgjengelige.

Starter

Før vi begynner å samle utvekslingsdata, er det noen få ting vi trenger. Følgende avsnitt vil gi en rask guide for å gjøre deg klar og klar til å begynne å implementere dine egne Coinbase Pro Python-skript.

Installere Shrimpy Python

Vi begynner med å installere Shrimpy Python Library.

Du kan gjøre dette ved hjelp av Pip. Åpne “Kommandoprompt” og skriv inn følgende.

pip installere reker-python

Reker API-nøkler

Nå som vi har installert Shrimpy Python-biblioteket, kan vi lage våre Shrimpy API-hovednøkler som skal brukes med biblioteket.

Registrer deg for Shrimpy Developer APIs, følg guiden her for å få tilgang til hovednøklene dine.

I denne opplæringen trenger du bare å aktivere “Data” -tillatelser på Master API-nøklene. Alle andre tillatelser kan forbli deaktivert.

Gjennom de følgende eksemplene vil du legge merke til steder der tastene er tildelt variabler. Disse tilfellene vil se ut som følgende.

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

Bare erstatt ‘…’ med de faktiske Shrimpy Public og Secret Master API-nøklene.

Utveksle live data

Vi vil dekke to forskjellige måter å samle live data på. Den første måten å samle inn data på er REST API-ene. I Shrimpy er alle disse markedsendepunktene gratis å bruke. Det er ingen gebyrer for tilgang til disse live dataressursene.

Den andre måten vi vil dekke for innsamling av live data er via Shrimpy Websocket API. Reker krever enten en “personlig” eller “oppstart” betalingsplan for å få tilgang til websocket API.

Merk: Vi bruker ikke handelspunkter i disse opplæringene, så du trenger ikke en “bruker” / “handelsplan”.

REST API Market Data Endpoints

Følgende markedsdataskripter vil bruke REST API-endepunktene til å samle inn data fra Coinbase Pro-sentralen. Alle skriptene i denne delen kan brukes uten å ha et reke-abonnement.

Tilgjengelige eiendeler

Ved å bruke endepunktet get_exchange_assets kan vi hente eiendelene som er tilgjengelige på Coinbase Pro.

importer reker

# Tildel offentlige og hemmelige Shrimpy Master API-nøkler

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Opprett Shrimpy REST API-klienten

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

exchange_assets = client.get_exchange_assets (‘coinbasepro’)

Tilgjengelige handelspar

Ved å bruke endepunktet get_trading_pairs kan vi få tilgang til de tilgjengelige handelsparene på Coinbase Pro.

importer reker

# Tilordne offentlige og hemmelige Shrimpy Master API-nøkler

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Opprett Shrimpy REST API-klienten

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

trading_pairs = client.get_trading_pairs (‘coinbasepro’)

Enkel pris ticker

Følgende eksempel vil gi en enkel pris ticker. Tickeren vil bruke REST API-anropet get_ticker til å samle inn aktivaspesifikke prisdata på Coinbase Pro.

Ticker-endepunktet oppdateres i løpet av 1 minutt.

importer reker

# Tildel offentlige og hemmelige Shrimpy Master API-nøkler

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Opprett Shrimpy REST API-klienten

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

# Be om ticker for alle eiendeler på Coinbase Pro

ticker = client.get_ticker (‘coinbasepro’)

Enkelt øyeblikksbilde av Live Order Book

I dette eksemplet vil vi få tilgang til live-tilstanden til Coinbase Pro-ordreboken ved å ringe REST API-endepunktet for get_order_books.

importer reker

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Opprett API-klienten for REST-samtaler

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

# Hent live ordreboken

ordrebøker = client.get_orderbooks (

‘coinbasepro’, # exchange

‘ETH’, # base_symbol

‘BTC’, # quote_symbol

10 # grense

)

Enkle levende lysestaker

Det neste markedsdataendepunktet gir tilgang til handel med lysestaker gjennom endepunktet get_candles. Lysestakene oppdateres i sanntid når nye handler utføres på børsen. Følgende skript kommer bare tilbake til de siste 1000 lysestakene. For å hente mer data, må du bruke det “historiske” lysestakeendepunktet.

importer reker

importere plotly.graph_objects as go

# registrer deg for Shrimpy Developer APIs for dine gratis API-nøkler

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# samle inn den historiske lysestaken

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

stearinlys = client.get_candles (

‘coinbasepro’, # exchange

‘ETH’, # base_trading_symbol

‘BTC’, # quote_trading_symbol

‘1d’ # intervall

)

datoer = []

open_data = []

høye data = []

low_data = []

close_data = []

# formater dataene slik at de samsvarer med plottbiblioteket

for stearinlys i stearinlys:

dates.append (candle [‘time’])

open_data.append (stearinlys [‘åpen’])

high_data.append (candle [‘high’])

low_data.append (candle [‘low’])

close_data.append (candle [‘close’])

# plott lysestakene

fig = go.Figur (data = [go.Candlestick (x = datoer),

åpen = åpen_data, høy = høy_data,

low = low_data, close = close_data)])

fig.show ()

Endepunkter for markedsdata på Websocket

Det neste settet med eksempler på skript vil bruke websocket APIer til å samle markedsdata i sanntid fra Coinbase Pro-sentralen..

Disse skriptene vil kreve at du abonnerer på “Personal” eller “Startup” planene. Hvis du bare planlegger å bruke websockets og ingen historiske data, anbefales den “Personal” -planen.

Websocket Pris Ticker

Følgende eksempel er en mer komplisert måte å implementere en pris ticker på. Hvis det kreves sanntidsdata for tjenesten din, vil dette alternativet være ideelt for å sikre at de mest oppdaterte dataene blir brukt.

Dette eksemplet vil bruke sanntidshandelsnettsteder.

importer reker

shrimpy_public_key = ‘…’

shrimpy_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 [‘content’] [0] [‘price’])

# Opprett websocket-klienten ved hjelp av rå token hentet av REST API

api_client = reker.ShrimpyApiClient (reker_offisiell_key, reker_secret_key)

raw_token = api_client.get_token ()

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

# Abonnementsdata for websocket

subscribe_data = {

"type": "abonnere",

"Utveksling": "myntbasepro",

"par": "eth-btc",

"kanal": "handel"}

# Begynn å behandle Shrimpy websocket-strømmen!

client.connect ()

client.subscribe (subscribe_data, handler)

# Når du er ferdig, stopper du klienten

klient. koble fra ()

Websocket Live Order Book

I likhet med eksemplet på websocket ticker, vil det følgende eksemplet bruke websockets til å samle inn ordrebokdataene.

importer reker

shrimpy_public_key = ‘…’

shrimpy_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)

# Opprett websocket-klienten ved å få rå token.

api_client = reker.ShrimpyApiClient (reker_offisiell_key, reker_secret_key)

raw_token = api_client.get_token ()

ws_client = reker.ShrimpyWsClient (error_handler, raw_token [‘token’])

subscribe_data = {

"type": "abonnere",

"Utveksling": "myntbasepro",

"par": "eth-btc",

"kanal": "bestillingsbok"}

# Begynn å behandle Shrimpy websocket-strømmen!

ws_client.connect ()

ws_client.subscribe (subscribe_data, handler)

# Når du er ferdig, stopper du klienten

ws_client.disconnect ()

Utveksle historiske markedsdata

Nå som vi har forståelse for live dataendepunkter, kan vi gå videre med eksempler på hvordan vi kan samle inn historiske markedsdata fra Coinbase Pro.

Anrop til de historiske dataendepunktene krever et “Startup” -abonnement. Siden vi bare vil samle inn data, trenger vi ingen bruker- / handelskreditter. Det betyr at du kan flytte glidebryteren “Brukerplan” til “0 aktive brukere”. Glidebryteren “Dataplan” skal justeres til nivået på historiske data du vil ha tilgang til.

Tilgjengelige historiske data

Følgende skript vil hente den tilgjengelige listen over historiske data. På den måten kan du bla gjennom Shrimpy-datakatalogen og bestemme hvilke data du vil samle inn. Dette vil bruke endepunktet get_historical_instruments.

importer reker

# registrer deg for Shrimpy Developer APIs for dine gratis API-nøkler

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# samle inn den historiske lysestaken

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

instrumenter = client.get_historical_instruments (‘coinbasepro’)

Historiske lysestaker

Lignende på noen måter å leve lysestaker, med det historiske lysestakeendepunktet kan du samle inn historiske lysestakdata. Den største forskjellen mellom dette skriptet og det forrige lysestake-skriptet er bruken av datoperioden, som kan inneholde hvilket som helst tidsintervall som er tilgjengelig. Vi vil bruke endepunktet get_historical_candles for dette skriptet.

importer reker

importere plotly.graph_objects as go

# registrer deg for Shrimpy Developer APIs for dine gratis API-nøkler

public_key = ‘…’

secret_key = ‘…’

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

stearinlys = client.get_historical_candles (

‘coinbasepro’, # exchange

‘ETH’, # base_trading_symbol

‘BTC’, # quote_trading_symbol

‘2017-02-11T00: 00: 00.000Z’, # starttid

‘2019-10-20T00: 00: 00.000Z’, # end_time

1000, # num_candles

‘1d’ # intervall

)

datoer = []

open_data = []

høye data = []

low_data = []

close_data = []

for stearinlys i stearinlys:

dates.append (candle [‘time’])

open_data.append (stearinlys [‘åpen’])

high_data.append (candle [‘high’])

low_data.append (candle [‘low’])

close_data.append (candle [‘close’])

fig = go.Figur (data = [go.Candlestick (x = datoer),

åpen = åpen_data, høy = høy_data,

low = low_data, close = close_data)])

fig.show ()

Historiske handler

Følgende skript vil demonstrere hvordan du samler inn merkedata for alle tilgjengelige handelspar på Coinbase Pro. Dette skriptet bruker endepunktet get_historical_trades.

importer reker

# registrer deg for Shrimpy Developer APIs for dine gratis API-nøkler

public_key = ‘…’

secret_key = ‘…’

klient = reker.ShrimpyApiClient (public_key, secret_key)

handler = client.get_historical_trades (

‘coinbasepro’,

‘ETH’,

‘BTC’,

‘2019-05-19T00: 00: 00.000Z’,

‘2019-05-20T00: 00: 00.000Z’,

100

)

Historiske øyeblikksbilder av ordrebøker

Det endelige skriptet vårt bruker endepunktet get_historical_orderbooks til å samle øyeblikksbilder av ordrebøker på 1 minutt.

importer reker

# registrer deg for Shrimpy Developer APIs for dine gratis API-nøkler

public_key = ‘…’

secret_key = ‘…’

klient = reker.ShrimpyApiClient (public_key, secret_key)

orderbooks = client.get_historical_orderbooks (

‘coinbasepro’,

‘ETH’,

‘BTC’,

‘2019-05-19T00: 00: 00.000Z’,

‘2019-05-20T00: 00: 00.000Z’,

100

)

Om reker

Reker er et program for å konstruere tilpassede kryptovalutaindeksfond, balansere og administrere en mangfoldig portefølje av digitale eiendeler. Automatiser porteføljen din ved å koble til noen av de 17 kryptobørsene vi støtter.

Shrimpys Universal Crypto Exchange APIer er designet for utviklere. Integrering med våre enhetlige APIer gir deg øyeblikkelig tilgang til ensartede sluttpunkter for handel, datainnsamling, brukeradministrasjon og mer på tvers av alle større kryptovalutautvekslinger.

For å få tilgang til de komplette Python- og Node-bibliotekene, følg disse koblingene:

Node

Python

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