Jump to content

Testumgebung API v2


duster
 Share

Recommended Posts

Hi!

Da mir der Support leider nicht antwortet: existiert eine Testumgebung für die API (v2), in der ich ohne Risiko Aktionen ausführen kann? Am besten wäre auch, wenn hier das Creditsystem nicht greift.

Leider finde ich in der Doku nichts dazu.

Vielen Dank!

Link to comment
Share on other sites

On 15.11.2017 at 6:23 PM, Christoph Bergmann said:

Ist bei einer solchen Anwendung nicht wirklich nützlich

Hi!

Mich würde ja mal interessieren, wie Du bzw. bitcoin.de zu dieser Annahme kommt? Soll ich Geldbeträge riskieren, um Code zu testen? :blink:

Link to comment
Share on other sites

vor 13 Minuten schrieb duster:

Soll ich Geldbeträge riskieren, um Code zu testen?

Ja.

 

vor 16 Minuten schrieb duster:

wie Du bzw. bitcoin.de zu dieser Annahme kommt?

Bei welcher anderen Exchange gibt es denn Testumgebungen?

 

Link to comment
Share on other sites

Man kann nicht jede Anwendung der API in einer Testumgebung nachbauen. Anders als bei anderen Softwareprojekten ist eine Testumgebung immer sehr unvollständig. Dies war den großen Aufwand, sie aufzustellen, nicht wert.

 

Für den Anfang kannst du es ja mit kleinen Beträgen versuchen, oder dich erstmal an die "non-Order" Funktionen rantasten ...

Link to comment
Share on other sites

Kenne auch keine Börse die sowas anbietet und wie Chrsitoph schon sagt, bräcuhte man dann sinnvollerweise auch ein Test-orderbook mit systemseitgen testorders..
 

Ab und zu wäre sowas aber tatsähclich sinnvoll. bitcoin.de ist noch ziemlich harmlos. Wenn du mal auf anderen exchanges via API tradest wirst du merken, dass es hunderte Ausnahmefälle gibt, die nie! in irgendeiner Dokumnetation stehen. Dh du bemerkst sie erst, wenn du durch diese Geld verloren hast (ganz besonders zb wie Börsen reagieren/welche Meldungen sie schicken, wenn sie gerade überlastet sind)

Link to comment
Share on other sites

4 hours ago, Serpens66 said:

Kenne auch keine Börse die sowas anbietet

Ich schon, sogar aus Deutschland. Dort habe ich selbst eine Implementierung gebaut und musste diese sogar durch einen Stresstest verifizieren lassen, bevor ich ans Produktivsystem durfte.

 

4 hours ago, Serpens66 said:

bräcuhte man dann sinnvollerweise auch ein Test-orderbook mit systemseitgen testorders

So etwas erwarte ich von einer Börse, die Gebühren von mir verlangt. Gehört halt zum Geschäft.

 

4 hours ago, Serpens66 said:

Wenn du mal auf anderen exchanges via API tradest wirst du merken, dass es hunderte Ausnahmefälle gibt, die nie! in irgendeiner Dokumnetation stehen.

Da stimme ich zu. In dem Falle sollte es aber nicht zu Verlusten kommen.

 

4 hours ago, Serpens66 said:

Dh du bemerkst sie erst, wenn du durch diese Geld verloren hast

Das halte ich für grob fahrlässig und spiegelt nicht den Eindruck von bitcoin.de wieder, den sie eigentlich vermitteln wollen ("professionelles Unternehmen aus Deutschland, das ge-wirtschafts-prüft wird").

 

Schade, dass es keine Testumgebung gibt und geben wird.

Link to comment
Share on other sites

vor 36 Minuten schrieb duster:

Ich schon, sogar aus Deutschland. Dort habe ich selbst eine Implementierung gebaut und musste diese sogar durch einen Stresstest verifizieren lassen, bevor ich ans Produktivsystem durfte.

Es gibt keine Bitcoinbörse aus Deutschland.
Und vermutlich auch keine direktseite ala "Anycoin" oderso.
Beides aus rechtlichen/regulatorischen Gründen.

Also welche meinst du? Oder redest du von nicht-bitcoin spezifischen Seiten?
 

Edited by Serpens66
Link to comment
Share on other sites

Hi,

also ich, als Softwareentwickler, finde es auf jeden Fall sinnvoll eine Testumgebung zu haben. Den in jedem Code kann sich schnell ein Bug einschleichen. Allein um die Grundsätzliche Funktionalität testen zu können, macht das schon Sinn. 

Die Frage stellt sich natürlich WAS will ich testen - nur die grundsätzliche Funktion oder will ich einen echten Tag simulieren.

Es ist natürlich schade das bitcoin.de wohl kein Testsystem zur Verfügung stellt, allerdings kann ich das auch nachvollziehen denn so eine Testumgebung muss betreut werden. Aus eigener Erfahrung weiss ich das das sehr aufwendig und teuer ist.

Die API ist ja soweit ich das sehe ja recht überschaubar, da kann man sich auch selbst ein Testsystem aufbauen, das man dann nach belieben Ausbauen kann um alle Test die man selbst als sinnvoll erachtet durchführen kann. Eventuell stellt jemand auch den Code für eine "Testumgebung" ins Netz :-)

Sollte ich jemals einen API Key bekommen und dann noch Lust haben - werde ich mir sicher so eine Testumgebung aufbauen :-), bevor ich mit meiner (geplanten - App) echtes Geld bewege.

 

Vg

NicoCl

 

 

Link to comment
Share on other sites

vor 23 Minuten schrieb Jokin:

Da bin ich auch sehr interessiert!

Ja das glaube ich, da biste Du sicher nicht der einzigste :-)

Na das ist doch relativ klar wie die aussehen muss:

1. Server mit der Testanwendung der entweder lokal oder im lokalen Netzt läuft (wahrscheinlich ein TomEE ;-) ) 
2. Es gibt für jede API-Funktion in der Testumgebung ein Gegenstück - damit die Grundfunktion getestet werden können

UND jetzt wird's etwas tricki

3. Die Antworten auf die API Aufrufe beinhalten realitätsnahe Daten
4. Das System reagiert auf die Antworten wie das bitcoin.de
5. Simulator von Usern -> die alle Tradings machen so das ein realitätsnahes Simulationszenario abgeben

Also kurz gesagt Optimal wäre ein Anwendung die reagiert wie das bitcoin.de

Link to comment
Share on other sites

Just now, NicoCl said:

Also kurz gesagt Optimal wäre ein Anwendung die reagiert wie das bitcoin.de

Das wird aber schwer, da man das alles nur erahnen kann und immer so arbeiten wird, als ob die API perfekt funktioniert. Genau darum geht es ja - damit man austesten kann, was passiert, wenn mal was nicht stimmt.

 

3 hours ago, NicoCl said:

werde ich mir sicher so eine Testumgebung aufbauen :-)

Meld Dich doch mal privat. Vielleicht können wir zusammenarbeiten.

Link to comment
Share on other sites

vor 4 Minuten schrieb duster:

da man das alles nur erahnen kann

Naja da muss ich Dir wiedersprechen. Die Schnittstellen sind ja festdefiniert, da gibt es nichts zu erahnen. Zum Beispiel das Aufrufen der Account-Info ist definiert, da ist genau definiert wie die Antwort auszusehen hat. Auch wie der Aufruf erfolgen muss, mit setzen der Header und Parametern.

Ich weiss worauf du hinaus willst :-) - du will's auch Testen in wie weit deine Algorithmen funktionieren damit  das Auto Trading optimal geht ...
Auch das wäre kein Problem - theoretisch kannst Du ja über die API die echten Daten abgreifen - speichern in einer DB und so einen "Tag" nachspielen unter dem Motto was wäre wenn ...

Ob das aber zulässig ist weiss ich nicht die Daten darfst Du glaube ich nicht so einfach speichern ....  

Link to comment
Share on other sites

Am 18.11.2017 um 12:49 schrieb NicoCl:

Naja da muss ich Dir wiedersprechen. Die Schnittstellen sind ja festdefiniert, da gibt es nichts zu erahnen. Zum Beispiel das Aufrufen der Account-Info ist definiert, da ist genau definiert wie die Antwort auszusehen hat. Auch wie der Aufruf erfolgen muss, mit setzen der Header und Parametern.

Ich weiss worauf du hinaus willst :-) - du will's auch Testen in wie weit deine Algorithmen funktionieren damit  das Auto Trading optimal geht ...
Auch das wäre kein Problem - theoretisch kannst Du ja über die API die echten Daten abgreifen - speichern in einer DB und so einen "Tag" nachspielen unter dem Motto was wäre wenn ...

Ob das aber zulässig ist weiss ich nicht die Daten darfst Du glaube ich nicht so einfach speichern ....  

Die Algorithmen zu testen wäre das I-Tüpfelchen.

Die Doku ist leider nur ziemlich vage und eben nicht 100% definiert.
Meine neueste Erkenntnis ist, dass es z.B. einen (Regelmässigen?) Wartungsmodus gibt. Der ist in der Doku nicht definiert. Da kommt dann auch kein JSON sondern HTML zurück aus der Schnittstelle.
Allein schon meine Frage, was den executeTRade alles handeln kann, liegt hier im Forum herum und der Support meldet sich nicht. Offensichtlich sind damit nur express Handels Trades möglich -  aber definiert ist das nirgends. Wieviele Nachkommastellen sind bei Beträgen möglich oder nötig ? Welches Format wird überhaupt erwartet, Komma oder Punkt als Dezimaltrenner ?

Für mich gibt es zwei Möglichkeiten: Doku _massiv_ überarbeiten oder Testumgebung bereitstellen.

Edited by Doncarlos
Link to comment
Share on other sites

vor 2 Stunden schrieb Christoph Bergmann:

Ich denke, für den Aufbau einer Testumgebung sind derzeit keine Ressourcen verfügbar.

Zur Doku - was müsste denn "massiv" überarbeitet werden?

Mindestens 3 Sachen stehen schon in meinem letzten Beitrag:

- Wie erkenne ich einen Wartungsmodus ?

- Was sind die Einschränkungen von executeTrade?

- Nachkommastellen und Zahlenformate

Mit etwas Zeit kann ich die Liste sicher noch erweitern.

Link to comment
Share on other sites

Klar ein Testsystem ist Wartungsaufwendig, alleringst stellt sich immer die Frage was man Testen will.

So wie ich das Ganze sehe stellt ja die API nur die Grundfunktionen bereit. Die Logik die Algorithmen zu Testen ist ja keine Sache die auf dem "bitcoin.de" Server läuft, sondern ergibts sich aus den Nutzerverhalten.

Für mich wären die einfachen Anforderungen an ein Testsystem das die Funktionen der API abdeckt:

* Infos rausgeben: Account Daten, Listen
* Anlegen, Ändern und Löschen von Trades
* Aus den Daten dann die Kurse berechnen

Wie die Daten ins Testsystem kommen ist Sache der "Tester", welches ja durch aus automatisierte Abläufe sein können die mit bestimmten Algorithmen User simulieren. Je mehr je realisitischer.

Da ich als Softwareentwickler mich sträube (zumindest am Anfang) gegen Produktiv-System zu entwickeln würde ich so eine Testumgebung selbst bauen und meine geplante App dagegen testen. Es ist klar das ich nicht alles abdecken kann, aber so Grundsätzliches schon ... als nicht statt der gewollten 0,01 BitCoints 100 einstellen, was ja passieren kann wenn die Lokalisierung nicht sauber funktioniert.

Falls jemand ernsthaft Intresse zur zusammenarbeit hat kann sich gern melden ... allerdings bitte nicht mit realitätsfremden Erwartungen.

Voraussetzung das ich überhaupt eine Server-Code Zeile tippe ist ein API Key und den scheint es ja nicht so einfach bekommen zu sein.

 

Link to comment
Share on other sites

vor 8 Stunden schrieb Doncarlos:

Wie erkenne ich einen Wartungsmodus ?

- Was sind die Einschränkungen von executeTrade?

- Nachkommastellen und Zahlenformate

Ich muss keinen Wartungsmodus erkennen - wenn ich kein auswertbares Ergebnis zurück erhalte, dann reagiere ich entsprechend drauf - entweder den Call nochmal absetzen oder falls es ein createTrade war schaue ich ob der nicht doch angelegt wurde.

executeTrade gibt eindeutige Fehlermeldungen zurück - SEPA-Order kannst Du nicht annehmen, warum auch immer, so ist die Regel.

Nachkommastellen kannste selber  gefahrlos testen und das Komma ist IT-like der Punkt, das siehst Du in den API-Beispielen.

Ich denke nicht, dass jede Kleinigkeit für Hausfrauen und Mütter dokumentiert sein muss.

Andere API-Dokus sind weit dünner.

 

vor 4 Stunden schrieb NicoCl:

* Infos rausgeben: Account Daten, Listen
* Anlegen, Ändern und Löschen von Trades
* Aus den Daten dann die Kurse berechnen

 

Für das Abfragen von Accountdaten brauchst Du echt ein Testsystem?

Trades sind nicht änderbar.

Das Löschen von Trades geht nicht gefahrlos drekt live?

Zum Berechnen von Kursen ein Testsystem?

Max. execute-Order kannste mal testen, aber da kannst du auch nix falsch machen ... wenn du nur 0,1 BTC hast, kannst Du auch nur diese Menge verkaufen.

Max. Risiko, wenn Du ein SEPA-Angebot mit 3 BTC für 25000 Euro annimmst ... aber das ist schon arg unwahrscheinlich.

Das Erstellen von Trades sollte mit Vorsicht geschehen - aber auch hier reicht es, wenn Du den API-Call händisch erst prüfst und nochmal bestätigst.

Das größte Risiko ist dabei “buy” und “sell” zu verwechseln, dies lässt sich aber auch reduzieren indem man vorerst nur 60 Euro einsetzt.

Unplausible Order werden von bitcoin.de abgewiesen, z.B. kannst Du keine Preise angeben, die weniger als den halben Kurs betragen.

... hmm, aber auch hier nochmal: Bitcoin.de ist keine typische Trading-Plattform - zum Traden empfehle ich die professionellen Börsen wie Bitfinex und Co.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.