All
Filtrer efter:
Hvordan indbetaler jeg kontanter på min konto?
Jeg har brug for hjælp til kontoverificering
Hvorfor kan jeg ikke få adgang til min konto?
Er der gebyrer for kryptoudbetaling?
Jeg har brug for hjælp til at logge ind på min konto
Vores WebSocket API kan tilgås via ethvert WebSocket-kompatibelt programmeringssprog (Python, Javascript, C#, Go osv.). Mange programmeringssprog tilbyder WebSocket-biblioteker, der giver programmører mulighed for at bruge en WebSocket-grænseflade uden at forstå de indviklede detaljer i WebSocket-protokollen.
Python er et eksempel, der tilbyder mange forskellige WebSocket-biblioteker, så hvordan ved en programmør, hvilket bibliotek der skal bruges, eller hvordan man bruger det valgte bibliotek mest effektivt. Det følgende giver vores anbefalede Python WebSocket-bibliotek og giver nogle eksempler på, hvordan biblioteket bruges i forskellige scenarier.
Vores anbefalede Python WebSocket-bibliotek er websocket-client-biblioteket. Biblioteket er kompatibelt med både Python 2 og Python 3, men for ny kode anbefaler vi kun at bruge Python 3, da Python 2 er ved at blive udfaset.
websocket-client-biblioteket kan downloades fra Python Package Index (pypi.org) og installeres via den medfølgende setup.py-fil:
python setup.py install
eller downloades og installeres samtidigt via det standard Python-installationsværktøj (pip):
pip install websocket-client
WebSocket-klientbiblioteket kan bruges til at oprette en synkron (blokerende) WebSocket-klient eller en asynkron (ikke-blokerende, hændelsesdrevet) klient. Begge versioner kan interagere med vores API med succes, så valget afhænger af de specifikke krav til implementeringen (f.eks. om andre opgaver skal udføres parallelt).
For eksempel ville en simpel app til overvågning af markedspriser kunne bruge en synkron klient, der blot ventede på nye markedsdata og sammenlignede markedsprisen med en specificeret værdi, mens en fuldt udstyret handelsbot ville skulle bruge en asynkron klient med markedsdatafeeds i separate tråde (så analyse- og handelsopgaverne kunne fortsætte parallelt).
Følgende er grundlæggende eksempler på både synkrone og asynkrone klienter, som kan bruges som udgangspunkt for mere kompleks API-kode.
Synkron WebSocket API-grænseflade
# 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())
Asynkron WebSocket API-grænseflade
# 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())
Fuldstændige detaljer og instruktioner for WebSocket-klientbiblioteket er tilgængelige via bibliotekets kode-arkiv.