>
Coinbase Pro er blevet et af de mest fremtrædende steder for amerikanske handlende at engagere sig i kryptomarkedet. Dette hotspot har tiltrukket utallige udviklere, institutioner og daghandlere. Desværre undrer mange mennesker sig stadig over, hvordan de kan få adgang til de levende og historiske data fra Coinbase Pro på en effektiv og omkostningseffektiv måde.
I hele denne vejledning vil vi guide dig gennem processen med at oprette Python-scripts, der giver dig adgang til et af de mest komplette datasæt, der er tilgængelige på markedet til dato.
Glem ikke at deltage i vores Udvikler Telegram Group der er dedikeret til bygherrer, der udvikler applikationer oven på børser. Vi er altid klar til at besvare dine spørgsmål og hjælpe dig med at komme i gang!
Få Binance-data
Få adgang til milliarder af historiske datapunkter for Binance. Ordrebogs snapshots, handelshistorie og live websockets er alle tilgængelige.
Kom godt i gang
Før vi begynder at indsamle udvekslingsdata, er der et par ting, vi har brug for. Det følgende afsnit giver en hurtig guide til at få dig klar og klar til at begynde at implementere dine egne Coinbase Pro Python-scripts.
Installation af Shrimpy Python
Vi begynder med at installere Rejer Python-bibliotek.
Du kan gøre dette ved hjælp af Pip. Åbn din “Kommandoprompt”, og skriv følgende.
pip installere rejer-python
Rejer API-nøgler
Nu hvor vi har installeret Shrimpy Python Library, kan vi oprette vores Shrimpy API Master Keys, der skal bruges sammen med biblioteket.
Tilmeld dig Shrimpy Developer API’er, følg derefter vejledningen her for at få adgang til dine masternøgler.
I denne vejledning skal du kun aktivere “Data” -tilladelser på dine Master API-nøgler. Alle andre tilladelser kan forblive deaktiverede.
I de følgende eksempler vil du bemærke steder, hvor nøglerne er tildelt variabler. Disse forekomster vil se ud som følgende.
shrimpy_public_key = ‘…’
shrimpy_secret_key = ‘…’
Du skal blot erstatte ‘…’ med dine faktiske Shrimpy Public og Secret Master API-nøgler.
Udveksle live data
Vi vil dække to forskellige måder til indsamling af live data. Den første måde at indsamle data på er via REST API’erne. I Shrimpy er alle disse markedsendepunkter gratis at bruge. Der er ingen gebyrer for adgang til disse live dataressourcer.
Den anden måde, vi vil dække for indsamling af levende data er via Shrimpy Websocket API. Rejer kræver enten en “personlig” eller “opstart” betalingsplan for at få adgang til websocket API.
Bemærk: Vi bruger ikke nogen handelsendepunkter i disse selvstudier, så du behøver ikke en “bruger” / “handel” -plan.
REST API Markedsdataendepunkter
Følgende markedsdata-scripts bruger REST API-slutpunkter til at indsamle data fra Coinbase Pro-udvekslingen. Alle scripts i dette afsnit kan bruges uden at have et Shrimpy-abonnement.
Tilgængelige aktiver
Ved hjælp af get_exchange_assets slutpunkt kan vi hente de aktiver, der er tilgængelige på Coinbase Pro.
importere rejer
# Tildel offentlige og hemmelige Shrimpy Master API-nøgler
shrimpy_public_key = ‘…’
shrimpy_secret_key = ‘…’
# Opret Shrimpy REST API-klienten
client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)
exchange_assets = client.get_exchange_assets (‘coinbasepro’)
Tilgængelige handelspar
Ved hjælp af get_trading_pairs slutpunktet kan vi få adgang til de tilgængelige handelspar på Coinbase Pro.
importere rejer
# Tildel offentlige og hemmelige Shrimpy Master API-nøgler
shrimpy_public_key = ‘…’
shrimpy_secret_key = ‘…’
# Opret 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 giver en simpel pris ticker. Tickeren bruger REST API-opkaldet get_ticker til at indsamle de aktivspecifikke prisdata på Coinbase Pro.
Ticker-slutpunktet opdateres med et minuts interval.
importere rejer
# Tildel offentlige og hemmelige Shrimpy Master API-nøgler
shrimpy_public_key = ‘…’
shrimpy_secret_key = ‘…’
# Opret Shrimpy REST API-klienten
client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)
# Anmod om ticker for alle aktiver på Coinbase Pro
ticker = client.get_ticker (‘coinbasepro’)
Simpelt øjebliksbillede af Live Order Book
I dette eksempel får vi adgang til live-tilstanden af Coinbase Pro-ordrebogen ved at kalde REST API-slutpunktet for get_order_books.
importere rejer
shrimpy_public_key = ‘…’
shrimpy_secret_key = ‘…’
# Opret API-klienten til REST-opkald
client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)
# Hent live ordrebogen
ordrebøger = client.get_orderbooks (
‘møntbasepro’, # udveksling
‘ETH’, # base_symbol
‘BTC’, # quote_symbol
10 # grænse
)
Enkle levende lysestager
Det næste markedsdata-slutpunkt giver adgang til handel med lysestager gennem get_candles-slutpunktet. Lysestagerne opdateres i realtid, når nye handler udføres på børsen. Følgende script vender kun tilbage til de sidste 1.000 lysestager. For at hente flere data skal du bruge det “historiske” lysestageendepunkt.
importere rejer
import plotly.graph_objects as go
# tilmeld dig Shrimpy Developer API’erne til dine gratis API-nøgler
shrimpy_public_key = ‘…’
shrimpy_secret_key = ‘…’
# indsamle de historiske lysestage-data
client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)
stearinlys = client.get_candles (
‘møntbasepro’, # udveksling
‘ETH’, # base_trading_symbol
‘BTC’, # quote_trading_symbol
‘1d’ # interval
)
datoer = []
open_data = []
high_data = []
lave data = []
close_data = []
# formater dataene, så de matcher plottebiblioteket
til stearinlys i stearinlys:
dates.append (stearinlys [‘tid’])
open_data.append (lys [‘åben’])
high_data.append (candle [‘high’])
low_data.append (candle [‘low’])
close_data.append (stearinlys [‘luk’])
# plotte lysestagerne
fig = go.Figur (data = [go.Candlestick (x = datoer),
open = open_data, high = high_data,
low = low_data, close = close_data)])
fig. show ()
Websocket Market Data Endpoints
Det næste sæt eksempler på scripts bruger websocket API’erne til at indsamle markedsdata i realtid fra Coinbase Pro-børsen.
Disse scripts kræver, at du abonnerer på “Personal” eller “Startup” planerne. Hvis du kun planlægger at bruge websockets og ingen historiske data, anbefales den “Personal” -plan.
Ticker til websocketpris
Følgende eksempel er en mere kompleks måde at implementere en pris ticker på. Hvis der kræves realtidsdata til din tjeneste, ville denne mulighed være ideel for at sikre, at de mest opdaterede data bruges.
Dette eksempel bruger realtidshandelsweb-lommer.
importere rejer
shrimpy_public_key = ‘…’
shrimpy_secret_key = ‘…’
# Dette er en prøvehåndterer, den udskriver simpelthen den indgående besked til konsollen
def error_handler (err):
udskrive (fejle)
# Dette er en prøvehåndterer, den udskriver simpelthen den indgående besked til konsollen
def handler (msg):
udskriv (msg [‘indhold’] [0] [‘pris’])
# Opret websocket-klienten ved hjælp af det rå token, der er hentet af REST API
api_client = rejer.ShrimpyApiClient (rejer_offentlig_nøgle, rejer_sekret_nøgle)
raw_token = api_client.get_token ()
client = shrimpy.ShrimpyWsClient (error_handler, raw_token [‘token’])
# Abonnementsdata for websocket
subscribe_data = {
"type": "abonnere",
"udveksling": "møntbasepro",
"par": "eth-btc",
"kanal": "handle"}
# Start behandlingen af Shrimpy websocket-strømmen!
client.connect ()
client.subscribe (subscribe_data, handler)
# Når du er færdig, skal du stoppe klienten
client.disconnect ()
Websocket Live ordrebog
Svarende til eksemplet med websocket-ticker, vil det følgende eksempel bruge websockets til at indsamle live ordrebogsdata.
importere rejer
shrimpy_public_key = ‘…’
shrimpy_secret_key = ‘…’
# Dette er en prøvehåndterer, den udskriver simpelthen den indgående besked til konsollen
def error_handler (err):
udskrive (fejle)
# Dette er en prøvehåndterer, den udskriver simpelthen den indgående besked til konsollen
def handler (msg):
udskrive (msg)
# Opret websocket-klienten ved at få det rå token.
api_client = rejer.ShrimpyApiClient (rejer_offentlig_nøgle, rejer_sekret_nøgle)
raw_token = api_client.get_token ()
ws_client = rejer.ShrimpyWsClient (error_handler, raw_token [‘token’])
subscribe_data = {
"type": "abonnere",
"udveksling": "møntbasepro",
"par": "eth-btc",
"kanal": "ordrebog"}
# Start behandlingen af Shrimpy websocket-strømmen!
ws_client.connect ()
ws_client.subscribe (subscribe_data, handler)
# Når du er færdig, skal du stoppe klienten
ws_client.disconnect ()
Udveksle historiske markedsdata
Nu hvor vi har forståelse for live dataendepunkter, kan vi gå videre med eksempler på, hvordan vi indsamler historiske markedsdata fra Coinbase Pro.
Opkald til de historiske dataendepunkter kræver et “Startup” -abonnement. Da vi kun indsamler data, har vi ikke brug for nogen bruger- / handelskreditter. Det betyder, at du kan flytte skyderen “Brugerplan” til “0 aktive brugere”. Skyderen “Dataplan” skal justeres til niveauet for historiske data, som du gerne vil have adgang til.
Tilgængelige historiske data
Følgende script henter den aktuelt tilgængelige liste over historiske data. På den måde kan du gennemse Shrimpy-datakataloget og bestemme, hvilke data du gerne vil indsamle. Dette bruger slutpunktet get_historical_instruments.
importere rejer
# tilmeld dig Shrimpy Developer API’erne til dine gratis API-nøgler
shrimpy_public_key = ‘…’
shrimpy_secret_key = ‘…’
# indsamle de historiske lysestage-data
client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)
instrumenter = client.get_historical_instruments (‘coinbasepro’)
Historiske lysestager
Lignende på nogle måder at leve lysestager, det historiske lysestageendepunkt giver dig mulighed for at indsamle historiske lysestagerdata. Den største forskel mellem dette script og det forrige lysestage-script er brugen af datointervallet, som kan indeholde et hvilket som helst tidsinterval, der er tilgængeligt. Vi bruger slutpunktet get_historical_candles til dette script.
importere rejer
import plotly.graph_objects as go
# tilmeld dig Shrimpy Developer API’erne til dine gratis API-nøgler
public_key = ‘…’
secret_key = ‘…’
klient = rejer.ShrimpyApiClient (public_key, secret_key)
stearinlys = client.get_historical_candles (
‘møntbasepro’, # udveksling
‘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’ # interval
)
datoer = []
open_data = []
high_data = []
lave data = []
close_data = []
til stearinlys i stearinlys:
dates.append (stearinlys [‘tid’])
open_data.append (lys [‘åben’])
high_data.append (candle [‘high’])
low_data.append (candle [‘low’])
close_data.append (stearinlys [‘luk’])
fig = go.Figur (data = [go.Candlestick (x = datoer),
open = open_data, high = high_data,
low = low_data, close = close_data)])
fig. show ()
Historiske handler
Følgende script viser, hvordan man indsamler tick-by-tick-handelsdata for ethvert tilgængeligt handelspar på Coinbase Pro. Dette script bruger slutpunktet get_historical_trades.
importere rejer
# tilmeld dig Shrimpy Developer API’erne til dine gratis API-nøgler
public_key = ‘…’
secret_key = ‘…’
klient = rejer.ShrimpyApiClient (public_key, secret_key)
handler = client.get_historical_trades (
‘møntbasepro’,
‘ETH’,
‘BTC’,
‘2019-05-19T00: 00: 00.000Z’,
‘2019-05-20T00: 00: 00.000Z’,
100
)
Historiske ordrebog-snapshots
Vores endelige script bruger get_historical_orderbooks-slutpunktet til at indsamle 1-minuts ordrebogs-snapshots.
importere rejer
# tilmeld dig Shrimpy Developer API’erne til dine gratis API-nøgler
public_key = ‘…’
secret_key = ‘…’
klient = rejer.ShrimpyApiClient (public_key, secret_key)
ordrebøger = client.get_historical_orderbooks (
‘møntbasepro’,
‘ETH’,
‘BTC’,
‘2019-05-19T00: 00: 00.000Z’,
‘2019-05-20T00: 00: 00.000Z’,
100
)
Om rejer
Rejer er en applikation til opførelse af tilpassede kryptokurrencyindeksfonde, genbalancering og styring af en forskellig portefølje af digitale aktiver. Automatiser din portefølje ved at linke til nogen af de 17 kryptobørser, vi understøtter.
Shrimpys Universal Crypto Exchange API’er er designet til udviklere. Integrering med vores samlede API’er giver dig øjeblikkelig adgang til ensartede slutpunkter til handel, dataindsamling, brugeradministration og mere på tværs af alle større kryptokurrencyudvekslinger.
For at få adgang til de komplette Python- og Node-biblioteker skal du følge disse links: