All
Filtrare după:
Cum pot depune numerar în contul meu?
Am nevoie de ajutor cu verificarea contului
De ce nu îmi pot accesa contul?
Există taxe pentru retragerea criptomonedelor?
Am nevoie de ajutor pentru a mă conecta la cont
API-ul nostru WebSocket poate fi accesat prin orice limbaj de programare compatibil cu WebSocket (Python, Javascript, C#, Go etc.). Multe limbaje de programare oferă biblioteci WebSocket care permit programatorilor să utilizeze o interfață WebSocket fără a înțelege detaliile complicate ale protocolului WebSocket.
Python este un exemplu care oferă multe biblioteci WebSocket diferite, așa că cum știe un programator ce bibliotecă să folosească sau cum să utilizeze biblioteca aleasă pentru cea mai bună eficiență. Următoarele oferă biblioteca Python WebSocket recomandată de noi și oferă câteva exemple despre cum să utilizați biblioteca în diferite scenarii.
Biblioteca noastră Python WebSocket recomandată este biblioteca websocket-client. Biblioteca este compatibilă atât cu Python 2, cât și cu Python 3, dar pentru cod nou recomandăm utilizarea doar a Python 3, deoarece Python 2 este în curs de a fi depreciat.
Biblioteca websocket-client poate fi descărcată de pe Python Package Index (pypi.org) și instalată prin fișierul setup.py inclus:
python setup.py install
sau descărcată și instalată simultan prin instrumentul standard de instalare Python (pip):
pip install websocket-client
Biblioteca client WebSocket poate fi utilizată pentru a crea un client WebSocket sincron (blocant) sau un client asincron (non-blocant, bazat pe evenimente). Ambele versiuni pot interacționa cu API-ul nostru cu succes, astfel încât alegerea ar depinde de cerințele specifice ale implementării (cum ar fi dacă alte sarcini trebuie să se întâmple în paralel).
De exemplu, o aplicație simplă de monitorizare a prețurilor de piață ar putea utiliza un client sincron care pur și simplu așteaptă noi date de piață și compară prețul de piață cu o valoare specificată, în timp ce un bot de tranzacționare complet ar trebui să utilizeze un client asincron cu fluxurile de date de piață în fire de execuție separate (astfel încât sarcinile de analiză și tranzacționare să poată continua în paralel).
Următoarele sunt exemple de bază atât de clienți sincroni, cât și asincroni, care pot fi utilizați ca punct de plecare pentru un cod API mai complex.
Interfață API WebSocket Sincronă
# Import WebSocket client libraryfrom websocket import create_connection# Connect to WebSocket API and subscribe to trade feed for XBT/USD and XRP/USDws = create_connection("wss://ws.kraken.com/")ws.send('{"event":"subscribe", "subscription":{"name":"trade"}, "pair":["XBT/USD","XRP/USD"]}')# Infinite loop waiting for WebSocket datawhile True: print(ws.recv())
Interfață API WebSocket Asincronă
# Import WebSocket client library (and others)import websocketimport _threadimport time# Define WebSocket callback functionsdef ws_message(ws, message): print("WebSocket thread: %s" % message)def ws_open(ws): ws.send('{"event":"subscribe", "subscription":{"name":"trade"}, "pair":["XBT/USD","XRP/USD"]}')def ws_thread(*args): ws = websocket.WebSocketApp("wss://ws.kraken.com/", on_open = ws_open, on_message = ws_message) ws.run_forever()# Start a new thread for the WebSocket interface_thread.start_new_thread(ws_thread, ())# Continue other (non WebSocket) tasks in the main threadwhile True: time.sleep(5) print("Main thread: %d" % time.time())
Detalii complete și instrucțiuni pentru biblioteca client WebSocket sunt disponibile prin arhiva de cod a bibliotecii.