Jump to content

Empfohlene Beiträge

Hallo Leute,

 

folgende Problemstellung: ich möchte gern das bitcoin.de orderbuch in meinem kleinen Programm synchron halten. Dazu bietet sich die Websocket API an. Diese liefert u.a. zwei wichtige events: "add_order" und "remove_order". Die API funktioniert auch recht gut, die events trudeln fleissig ein. Die Frage ist jetzt, wo man den initialen Zustand herbkommt, auf den man dann die updates anwendet. Die Trading API liefert mit "showOrderbook" im Grunde das gewünschte ergebnis, allerdings nicht ganz vollständig, nämlich jeweils nur 20 orders auf der buy und sell seite.

im grunde würden mir 20 orders auch reichen, nur wenn sich das order buch in irgend eine richtung "bewegt", habe ich plötzlich grosse lücken... und da helfen mit die updates über die Websocket API wenig, da ja ältere orders unverändert sind, und sich irgend wann auf der top position im orderbuch befinden.

 

sehr schade, da damit die websocket api im grunde nutzlos ist.

oder habe ich irgend etwas übersehen?

BG

André

 
Link zum Beitrag
Auf anderen Seiten teilen

Ich wuerde mir die Preise der 20. SELL- und 20. BUY-Order merken.

 

Sobald sich der Kurs diesen Preisen nähert, würde ich das Orderbuch komplett neu laden.

 

Auf diese Weise hast Du von Zeit zu Zeit auch einen kompletten Abgleich und gehst sicher, dass nicht durch irgendwelche API-Ausfaelle Order nicht abgeglichen sind.

Link zum Beitrag
Auf anderen Seiten teilen
@André: Du könntest mit showOrderbook und den entsprechenden Parametern etwas tricksen:
  • "all"        : "only_kyc_full":0, "only_express_orders":0
  • "xps"      : "only_kyc_full":1, "only_express_orders":1
  • "m5"       : "only_kyc_full":1, "only_express_orders":0, "amount":5
  • "m01"     : "only_kyc_full":0, "only_express_orders":0, "amount":0.1
  • "samebank" : "only_express_orders":0, "only_same_bankgroup":1
Wenn du diese Anfragen hintereinander stellst bekommst du die ~40 ersten Orders einer Seite. Zusammen mit den WS Daten sollte sich ein aktuelles Bild ergeben, wenn du die API-Requests alle paar Minuten wiederholst. Etwas verteilt, leeren die dann auch nicht sofort dein credit-Conto.
In welcher Sprache schreibst du denn? Ich habe etwas ähnliches in python gebaut. Bauteile dafür findest du hier:

https://github.com/matthiaslinden/bitcoinDE_API

Basiert auf einem Asynchronen Framework, also kein warten auf Abschluss der Requests. 

 

@Christoph: Man könnte analog zu showMyOrders und showMyTrades einen page-Parameter einfügen. (Problem, für alle neuen Orders/Remove, zwischen einzelnen API-Requests verschiebt sich die Seitengrenze) 

bearbeitet von matthias.linden
Link zum Beitrag
Auf anderen Seiten teilen
  • 8 months later...
Am 5.4.2017 um 10:32 schrieb Christoph Bergmann:

Danke für den Hinweis. Gebe ich mal weiter. Der Punkt ist angekommen, steht aber bei Bitcoin.de nicht unbedingt ganz oben auf der meistens übervollen To-Do-Liste. Wenn es gut läuft, gibt es aber in den kommenden Monaten ein Update.

Hallo,

gibts inzwischen mal ein Update? Ich sehe via API keine Möglichkeit das Orderbuch zu ermitteln in dem auch mehr als 20 alte Kauf- und Verkauforders erfasst sind.

Wie wäre es wenn man einfach die Anzahl der via API gelieferten Orderbuch  Buy- und Sell-Orders von 20 auf 50 erhöht? Damit wäre den meisten vermutlich schon deutlich geholfen. Andere Anbieter bekommen es ja auch geregelt.

Link zum Beitrag
Auf anderen Seiten teilen

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...

Wichtige Information

Wir speichern Cookies auf Ihrem Gerät, um diese Seite besser zu machen. Sie können Ihre Cookie-Einstellungen anpassen, ansonsten gehen wir davon aus, dass Sie damit einverstanden sind. In unseren Datenschutzerklärungen finden sie weitere Informationen.