Coinbase Pro Live en historische marktgegevens [voorbeeld Python-scripts]

>

Coinbase Pro is een van de meest prominente plekken geworden voor Amerikaanse handelaren om zich met de cryptomarkt bezig te houden. Deze hotspot heeft talloze ontwikkelaars, instellingen en daghandelaren aangetrokken. Helaas vragen veel mensen zich nog steeds af hoe ze op een efficiënte en kosteneffectieve manier toegang kunnen krijgen tot de live en historische gegevens van Coinbase Pro..

In deze tutorial zullen we u begeleiden bij het instellen van Python-scripts die u toegang geven tot een van de meest complete sets gegevens die tot nu toe op de markt beschikbaar zijn..

Vergeet niet om lid te worden van onze Ontwikkelaar Telegram Group dat is bedoeld voor bouwers die bovenop uitwisselingen applicaties ontwikkelen. We staan ​​altijd klaar om uw vragen te beantwoorden en u op weg te helpen!

Verkrijg Binance-gegevens

Krijg toegang tot miljarden historische gegevenspunten voor Binance. Momentopnamen van orderboeken, handelsgeschiedenis en live websockets zijn allemaal beschikbaar.

Beginnen

Voordat we beginnen met het verzamelen van uitwisselingsgegevens, zijn er een paar dingen die we nodig hebben. In het volgende gedeelte vindt u een korte handleiding om u op weg te helpen en klaar te zijn om uw eigen Coinbase Pro Python-scripts te implementeren.

Shrimpy Python installeren

We beginnen met het installeren van het Shrimpy Python-bibliotheek.

U kunt dit doen met Pip. Open uw “Command Prompt” en typ het volgende.

pip installeer shrimpy-python

Shrimpy API-sleutels

Nu we de Shrimpy Python-bibliotheek hebben geïnstalleerd, kunnen we onze Shrimpy API-mastersleutels maken die met de bibliotheek zullen worden gebruikt.

Meld u aan voor het Shrimpy Developer API’s, volg dan de gids hier om toegang te krijgen tot uw Master Keys.

In deze tutorial hoeft u alleen “Data” -machtigingen in te schakelen op uw Master API Keys. Alle andere machtigingen kunnen uitgeschakeld blijven.

In de volgende voorbeelden ziet u plaatsen waar de toetsen aan variabelen zijn toegewezen. Deze gevallen zien er ongeveer als volgt uit.

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

Vervang gewoon de ‘…’ door uw werkelijke Shrimpy Public en Secret Master API Keys.

Wissel live gegevens uit

We behandelen twee verschillende manieren om live gegevens te verzamelen. De eerste manier om gegevens te verzamelen, is via de REST API’s. In Shrimpy zijn al deze markteindpunten gratis te gebruiken. Er zijn geen kosten verbonden aan toegang tot deze live gegevensbronnen.

De tweede manier die we behandelen voor het verzamelen van live gegevens is via de Shrimpy Websocket API. Shrimpy heeft een “Persoonlijk” of “Startup” betalingsplan nodig om toegang te krijgen tot de websocket API.

Opmerking: we zullen in deze tutorials geen handelseindpunten gebruiken, dus je hebt geen “Gebruiker” / “Handelsplan” nodig.

REST API Market Data Endpoints

De volgende marktgegevensscripts gebruiken de REST API-eindpunten om gegevens te verzamelen van de Coinbase Pro-uitwisseling. Alle scripts in deze sectie kunnen worden gebruikt zonder een Shrimpy-abonnement.

Beschikbare activa

Met behulp van het eindpunt get_exchange_assets kunnen we de activa ophalen die beschikbaar zijn op Coinbase Pro.

importeer garnalen

# Wijs openbare en geheime Shrimpy Master API-sleutels toe

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Maak de Shrimpy REST API-client

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

exchange_assets = client.get_exchange_assets (‘coinbasepro’)

Beschikbare handelsparen

Met behulp van het eindpunt get_trading_pairs kunnen we toegang krijgen tot de beschikbare handelsparen op Coinbase Pro.

importeer garnalen

# Wijs openbare en geheime Shrimpy Master API-sleutels toe

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Maak de Shrimpy REST API-client

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

trading_pairs = client.get_trading_pairs (‘coinbasepro’)

Eenvoudige prijsticker

In het volgende voorbeeld ziet u een eenvoudige prijsticker. De ticker gebruikt de REST API-aanroep get_ticker om de activaspecifieke prijsgegevens op Coinbase Pro te verzamelen.

Het ticker-eindpunt wordt bijgewerkt met een interval van 1 minuut.

importeer garnalen

# Wijs openbare en geheime Shrimpy Master API-sleutels toe

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Maak de Shrimpy REST API-client

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

# Vraag de ticker aan voor alle activa op Coinbase Pro

ticker = client.get_ticker (‘coinbasepro’)

Simpele Live Order Book Snapshot

In dit voorbeeld krijgen we toegang tot de live status van het Coinbase Pro-orderboek door het REST API-eindpunt voor get_order_books te bellen.

importeer garnalen

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Maak de API-client voor REST-aanroepen

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

# Haal het live orderboek op

orderbooks = client.get_orderbooks (

‘coinbasepro’, # exchange

‘ETH’, # base_symbol

‘BTC’, # quote_symbol

10 # limiet

Eenvoudige Live Candlesticks

Het volgende marktgegevenseindpunt biedt toegang tot handelskandelaars via het get_candles-eindpunt. De candlesticks worden in realtime bijgewerkt wanneer nieuwe transacties op de beurs worden uitgevoerd. Het volgende script keert alleen terug tot de laatste 1000 candlesticks. Om meer gegevens op te halen, moet u het “historische” kandelaar-eindpunt gebruiken.

importeer garnalen

importeer plotly.graph_objects als go

# meld u aan voor de Shrimpy Developer API’s voor uw gratis API-sleutels

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Verzamel de historische kandelaargegevens

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

kaarsen = client.get_candles (

‘coinbasepro’, # exchange

‘ETH’, # base_trading_symbol

‘BTC’, # quote_trading_symbol

‘1d’ # interval

dates = []

open_data = []

high_data = []

low_data = []

close_data = []

# formatteer de gegevens zodat ze overeenkomen met de plotbibliotheek

voor kaars in kaarsen:

dates.append (kaars [‘tijd’])

open_data.append (kaars [‘open’])

high_data.append (kaars [‘high’])

low_data.append (kaars [‘laag’])

close_data.append (kaars [‘close’])

# plot de kandelaars

fig = go.Figure (data = [go.Candlestick (x = dates,

open = open_data, high = high_data,

low = low_data, close = close_data)])

fig.show ()

Websocket Market Data-eindpunten

De volgende reeks voorbeeldscripts zal de websocket-API’s gebruiken om realtime marktgegevens van de Coinbase Pro-uitwisseling te verzamelen.

Voor deze scripts moet u zich abonneren op de “Persoonlijke” of “Startup” -plannen. Als u alleen van plan bent om websockets te gebruiken en geen historische gegevens, wordt het plan “Persoonlijk” aanbevolen.

Websocket Prijsticker

Het volgende voorbeeld is een complexere manier om een ​​prijsticker te implementeren. Als realtime gegevens nodig zijn voor uw service, is deze optie ideaal om ervoor te zorgen dat de meest actuele gegevens worden gebruikt.

In dit voorbeeld worden real-time handelswebsockets gebruikt.

importeer garnalen

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

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

def error_handler (err):

print (err)

# Dit is een voorbeeld-handler, het drukt eenvoudig het inkomende bericht af naar de console

def handler (msg):

print (msg [‘content’] [0] [‘price’])

# Maak de websocket-client met behulp van het onbewerkte token dat is opgehaald door de REST API

api_client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

raw_token = api_client.get_token ()

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

# De abonnementsgegevens voor de websocket

subscribe_data = {

"type"​ "abonneren",

"uitwisseling"​ "coinbasepro",

"paar-"​ "eth-btc",

"kanaal"​ "handel"​

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

client.connect ()

client.subscribe (subscribe_data, handler)

# Eenmaal voltooid, stopt u de client

client.disconnect ()

Websocket Live Orderboek

Vergelijkbaar met het websocket-ticker-voorbeeld, zal het volgende voorbeeld websockets gebruiken om de live orderboekgegevens te verzamelen.

importeer garnalen

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Dit is een voorbeeld-handler, het drukt eenvoudig het inkomende bericht af naar de console

def error_handler (err):

print (err)

# Dit is een voorbeeld-handler, het drukt eenvoudig het inkomende bericht af naar de console

def handler (msg):

print (msg)

# Maak de websocket-client door het onbewerkte token op te halen.

api_client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

raw_token = api_client.get_token ()

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

subscribe_data = {

"type"​ "abonneren",

"uitwisseling"​ "coinbasepro",

"paar-"​ "eth-btc",

"kanaal"​ "orderboek"​

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

ws_client.connect ()

ws_client.subscribe (subscribe_data, handler)

# Eenmaal voltooid, stopt u de client

ws_client.disconnect ()

Wissel historische marktgegevens uit

Nu we inzicht hebben in live data-eindpunten, kunnen we verder gaan met voorbeelden van het verzamelen van historische marktgegevens van Coinbase Pro.

Voor oproepen naar de historische gegevenseindpunten is een “Startup” -abonnement vereist. Omdat we alleen gegevens verzamelen, hebben we geen gebruikers- / handelskredieten nodig. Dat betekent dat u de schuifregelaar “Gebruikersplan” naar “0 actieve gebruikers” kunt verplaatsen. De schuifregelaar ‘Gegevensplan’ moet worden aangepast aan het niveau van historische gegevens waartoe u toegang wilt hebben.

Beschikbare historische gegevens

Het volgende script haalt de momenteel beschikbare lijst met historische gegevens op. Op die manier kunt u door de gegevenscatalogus van Shrimpy bladeren en bepalen welke gegevens u wilt verzamelen. Dit zal het eindpunt get_historical_instruments gebruiken.

importeer garnalen

# meld u aan voor de Shrimpy Developer API’s voor uw gratis API-sleutels

shrimpy_public_key = ‘…’

shrimpy_secret_key = ‘…’

# Verzamel de historische kandelaargegevens

client = shrimpy.ShrimpyApiClient (shrimpy_public_key, shrimpy_secret_key)

instrumenten = client.get_historical_instruments (‘coinbasepro’)

Historische kandelaars

In sommige opzichten vergelijkbaar met levende kandelaars, kunt u met het historische kandelaar-eindpunt historische kandelaargegevens verzamelen. Het belangrijkste verschil tussen dit script en het vorige candlestick-script is het gebruik van het datumbereik, dat elk tijdbereik kan bevatten dat beschikbaar is. We zullen het eindpunt get_historical_candles gebruiken voor dit script.

importeer garnalen

importeer plotly.graph_objects als go

# meld u aan voor de Shrimpy Developer API’s voor uw gratis API-sleutels

public_key = ‘…’

secret_key = ‘…’

client = shrimpy.ShrimpyApiClient (public_key, secret_key)

kaarsen = client.get_historical_candles (

‘coinbasepro’, # exchange

‘ETH’, # base_trading_symbol

‘BTC’, # quote_trading_symbol

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

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

1000, # num_candles

‘1d’ # interval

dates = []

open_data = []

high_data = []

low_data = []

close_data = []

voor kaars in kaarsen:

dates.append (kaars [‘tijd’])

open_data.append (kaars [‘open’])

high_data.append (kaars [‘high’])

low_data.append (kaars [‘laag’])

close_data.append (kaars [‘close’])

fig = go.Figure (data = [go.Candlestick (x = dates,

open = open_data, high = high_data,

low = low_data, close = close_data)])

fig.show ()

Historische transacties

Het volgende script laat zien hoe u tick-by-tick-handelsgegevens verzamelt voor elk beschikbaar handelspaar op Coinbase Pro. Dit script gebruikt het eindpunt get_historical_trades.

importeer garnalen

# meld u aan voor de Shrimpy Developer API’s voor uw gratis API-sleutels

public_key = ‘…’

secret_key = ‘…’

client = shrimpy.ShrimpyApiClient (public_key, secret_key)

trades = client.get_historical_trades (

‘coinbasepro’,

‘ETH’,

‘BTC’,

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

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

100

Historische momentopnamen van het orderboek

Ons laatste script gebruikt het eindpunt get_historical_orderbooks om momentopnamen van het orderboek van 1 minuut te verzamelen.

importeer garnalen

# meld u aan voor de Shrimpy Developer API’s voor uw gratis API-sleutels

public_key = ‘…’

secret_key = ‘…’

client = shrimpy.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

Over Shrimpy

Garnaal is een applicatie voor het samenstellen van aangepaste cryptocurrency-indexfondsen, het opnieuw in evenwicht brengen en beheren van een diverse portefeuille van digitale activa. Automatiseer uw portefeuille door te linken naar een van de 17 cryptobeurzen die we ondersteunen.

Shrimpy’s Universal Crypto Exchange API’s zijn ontworpen voor ontwikkelaars. Integratie met onze uniforme API’s geeft u direct toegang tot uniforme eindpunten voor handel, gegevensverzameling, gebruikersbeheer en meer op elke grote cryptocurrency-uitwisseling.

Volg deze links om toegang te krijgen tot de volledige Python- en Node-bibliotheken:

Knooppunt

Python

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