Zum Inhalt springen

API - Welche Möglichkeiten gibt es?


E_001

Empfohlene Beiträge

Hey Freunde,

 

irgendwie habe ich mit dem Verständnis der API Technologie noch immer meine Probleme. Ich verstehe nicht ganz wie man diese Technologie am Besten fürs traden nutzen kann. Denke aber das es bestimmt einige interessante Möglichkeiten gibt.

Für welche Anwendungen macht denn eine API in Zusammenhang mit Handlsplattformen Sinn bzw. wie kann einen eine API beim traden unterstützen? Wäre es denn möglich einen Tradingview Account zum Beispeil mit Binance per API zu verbinden und dann über die Chartanalyse in Tradingview direkt orders zu setzen?

Soweit ich weiß kann man mit einer API auch Automatisierungen vornehmen z.B. mit Tradingbots oder Alogorithmen. Man könnte doch bestimmt auch einen Indikator triggern der wenn zu einem bestimmten Zeitpunkt der Preis über einen Moving Avarage steigt automatisch eine order zu dem Marktpreis platziert und dann einkauft oder?

Bestimmt gibt es noch unzählige weitere Möglichkeiten die Technologie einzusetzen. Habt ihr denn ein paar Beispiele und hat jemand Erfahrung damit?

Freue mich über jede Antwort!

 

Besten Dank schonmal 🙂

 

Bearbeitet von E_001
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 6 Stunden schrieb E_001:

Habt ihr denn ein paar Beispiele und hat jemand Erfahrung damit?

Siehe meine Signatur 🙂

Da lernst Du das Programmieren mit PHP, wie eine Datenbank funktioniert, wie man die Binance-API benutzt und was man damit zu Beginn anstellen kann.

Wenn Du die Grundprinzipien verstanden hast, kannst Du recht einfach Python lernen, andere Datenbanken nutzen und andere Exchange-APIs benutzen.

vor 6 Stunden schrieb E_001:

Soweit ich weiß kann man mit einer API auch Automatisierungen vornehmen z.B. mit Tradingbots oder Alogorithmen. Man könnte doch bestimmt auch einen Indikator triggern der wenn zu einem bestimmten Zeitpunkt der Preis über einen Moving Avarage steigt automatisch eine order zu dem Marktpreis platziert und dann einkauft oder?

Korrekt, das funktioniert.
(Du wirst jedoch recht bald lernen, dass eine Order zum Marktpreis eine sehr gefährliche Sache ist ... starte bitte unbedingt mit Limit-Order anstatt Market-Order)

Grundsätzlich behaupte ich, dass man im Trading nur erfolgreich sein kann, wenn man das Programmieren lernt, den Umgang mit Datenbanken lernt und weiß wie man Exchange-APIs einbindet.
Weiterhin behaupte ich, dass Profis keine einfachen Trading-Strategien nutzen wie Du sie gerade beschrieben hast, denn Profis denken noch einen Schritt weiter und noch während die Meute kauft, fangen die an ihre Coins zu verkaufen um damit weitere Verkaufssignale auszusenden. Wenn die Meute dann im Verkaufsfieber ist, dann bremsen die Profis den Kursrutsch indem sie entsprechende Kauforder setzen.

(wenn Du Dir meinen Balancebot in meiner Signatur genau anschaust, wirst Dir zwar das Hirn rauchen - aber im Endeffekt wirst Du Dir sicher ein gutes Jahr an Selbststudium ersparen können)

  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

Am 8.11.2019 um 07:41 schrieb Jokin:

Siehe meine Signatur 🙂

Da lernst Du das Programmieren mit PHP, wie eine Datenbank funktioniert, wie man die Binance-API benutzt und was man damit zu Beginn anstellen kann.

Wenn Du die Grundprinzipien verstanden hast, kannst Du recht einfach Python lernen, andere Datenbanken nutzen und andere Exchange-APIs benutzen.

Hab mir deine Anleitung vorher schon einmal angeschaut und war dann erstmal abgeschreckt durch das programmieren. Dieses mal hat es mich allerdings getriggert!! Wann bekommt man denn schonmal so eine schritt für schritt Anleitung mit diesem support. Also schonmal besten Dank für die Anleitung! 🙂

Um zuvor mal ein Grundverständnis für den Aufbau zu bekommen: Wir richten uns also die Software ein uns schreiben und ein eigenes Programm (also den Balancebot) das automatisiert 24/7 über einen Raspberry Pi läuft und durch die Verbindung mit einem Webserver (eine NAS würde auch gehen oder?) ständig die API von z.B. Binance ansprechen kann und der dort dann automatisiert tradet. Ist das richtig so?

Das ist dann das Grundgerüsst für unseren Bot den wir nach dem einrichten dann versuchen zu verbesseren, indem wir die Strategie anpassen und aus fehlern lernen. Das ist wahrscheinlich nochmal richtig viel arbeit die nach dem einrichten angepasst werden muss. Kommt da dann auch ein Algorithmus zum Einsatz?

Das ist schon ziemlich nerdig und kompliziert, warum nicht einen Bot kaufen und da die Strategie anpassen? Wäre das nicht viel einfacher?

Zu letzt dann natürlich noch die Frage, hat sich der Bot denn bewährt und wieviel Prozent kann man denn damit erreichen?

 

Zitat

Das Problem ist die Steuerung, sprich Du musst Policies setzen, die dem System sagt, was es zu tun und zu lassen hat und wann genau und das stabil. Das nennt sich bei einigen Trading Strategie, die anderen nennen es BOT. Ohne eigenes programmieren kommst Du da nicht weit. Ich nehme Matlab, weil am einfachsten und stabilsten und ne mächtige Waffe ist.

Klingt ziemlich interessant, doch ist das auch für ambitionierte nicht Programmierer machbar? Wielange dauert es denn ungefähr für Anfänger so ein System einzurichten? Ich schätze mal ca. eine Woche um den Bot zu bauen und dann eventuell 1 Monate um ihn einigermassen anzupassen und dann nochmal ein Jahr um ihn richtig auszubauen und zu stabilisieren damit er auch größere Accounts sicher kontrollieren kann und das Geld nicht automatisch verbrennt 😅

 

Dank für eure Hinweise, bin ziemlich gesapannt mehr Möglichkeiten kennenzulernen 🙂

Bearbeitet von E_001
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor einer Stunde schrieb E_001:

Wir richten uns also die Software ein uns schreiben und ein eigenes Programm (also den Balancebot) das automatisiert 24/7 über einen Raspberry Pi läuft und durch die Verbindung mit einem Webserver (eine NAS würde auch gehen oder?) ständig die API von z.B. Binance ansprechen kann und der dort dann automatisiert tradet. Ist das richtig so?

Ob Du da 'nen NAS dran hast, ist dem Programm egal.

Wenn Du "VPS" meinst: Klar, darauf lasse ich derzeit drei oder 4 BalanceBots laufen. Auf dem Raspi laufen die auch. Wobei der Raspi eher als Bitcoin-Fullnode dient.

Und naja, "Software einrichten" - eigentlich nur nötig wenn Du keinen VPS oder Webserver hast. Im Idealfall hast Du schon einen mit Datenbank am Laufen.

vor einer Stunde schrieb E_001:

Das ist dann das Grundgerüsst für unseren Bot den wir nach dem einrichten dann versuchen zu verbesseren, indem wir die Strategie anpassen und aus fehlern lernen. Das ist wahrscheinlich nochmal richtig viel arbeit die nach dem einrichten angepasst werden muss. Kommt da dann auch ein Algorithmus zum Einsatz?

Wie Adriana schon schrieb - API und Programmierung ist eigentlich nur die Basis - ohne das geht es nicht. Die eigentliche Strategie ist das Wesentliche.

Und ja, der BalanceBot kommt bereits mit einer Strategie, die ich auch erklärt habe. Vom Prinzip her geht er davon aus, dass alle Coins im langfristigen Mittel exakt gleich steigen. Bricht ein Coin nach oben aus wird der verkauft - bricht er nach unten aus wird er gekauft.

Natürlich verlaufen nicht alle Kurse exakt parallel - das ist eben das Restrisiko, dass durch kurzfristige gegenläufige Kursverläufe ein Gewinn erzielt wird, der die langfristigen Differenzen mehr als ausgleicht. Das ist natürlich sehr gewagt und kann wunderbar erweitert werden, wenn man erstmal die Grundlagen verstanden hat.

 

Grundsätzlich gilt: Keiner der Profis hat ein Seminar "Wie werde ich Profi in 3 Tagen?" besucht sondern sich das alles selber angeeignet indem er ehrgeizig genug ist.

Ohne Ehrgeiz geht das nicht. Aber genau dieser Ehrgeiz unterscheidet die Gewinner von den Verlierern. 🙂 

  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 4 Stunden schrieb E_001:

Das ist schon ziemlich nerdig und kompliziert, warum nicht einen Bot kaufen und da die Strategie anpassen? Wäre das nicht viel einfacher?

Überlege Dir wieso diese Leute ihre Bots gegen Geld verkaufen anstatt durch ihre Bots selber reich zu werden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ok alles klar, dann bin ich auch am starrrt!! 😁

Also ich bin ziemlich motiviert und hab gerade Lektion 1 erfolgreich abgeschlossen. Eigentlich wollte ich mit Lektion 2 weitermachen, doch der Link -->  http://localhost/phpmyadmin der mich in die Datebank führen sollte funktioniert nicht. Es kommt folgende Meldung:

 

Access forbidden!

 


New XAMPP security concept:

Access to the requested object is only available from the local network.

This setting can be configured in the file "httpd-xampp.conf".


 

If you think this is a server error, please contact the webmaster.

Error 403

 


Ich habe bereits nach der Datei "httpd-xampp.conf" im Applications Ordner gesucht, allerdings nichts gefunden. Kurz zur Info, ich mache das ganze mit einem Mac. Sollte aber nichts damit zu tun haben. Ich habs auch mit der IP Adresse versucht. Wahrscheinlich wurde der Zugang geändert. Wie komme ich denn am einfachsten an diese Datenbank?
 
Noch eine andere Frage, was habe ich denn zu beachten wenn ich das ganze über meine NAS einrichten bzw hosten möchte? Weil ich gerade den Webserver einrichte, aber der Webserver ist doch dann meine NAS oder? Welche Schritte sind dann anders?
 
Besten Dank schonmal! Ich glaube das wird ein ganz cooles Projekt..

 

 

Bearbeitet von E_001
Link zu diesem Kommentar
Auf anderen Seiten teilen

Ähm, was meinst Du mit "meine NAS"?

NAS = Network Attached Storage 

Das ist nur ein Datenspeicher. Ob der nun lokal im Computer sitzt oder im Netzwerk ist ziemlich egal.

... kannst Du denn auf http://127.0.0.1 zugreifen und siehst eine PHP-Ausgabe?

Die PHP-Info ist immer ein guter Funktionstest.

Ansonsten frag immer erstmal Google: "httpd-xampp.conf mac" ... hilft das schonmal?

Ich benutze ebenfalls gern meinen Mac, habe dort jedoch keinen Webserver laufen. 

 

Bearbeitet von Jokin
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 20 Stunden schrieb Jokin:

Überlege Dir wieso diese Leute ihre Bots gegen Geld verkaufen anstatt durch ihre Bots selber reich zu werden.

hierzu könntest du E_001 noch deinen selbstversuch mit dem profittrailer oder wie der hieß zeigen, hier gings glaub ich los:
https://coinforum.de/topic/7922-trading-bots/?do=findComment&comment=217957

Ich glaub zusammengefasst kann man sagen, dass du sehr viel zusätzliche Regeln und Anpassungen schreiben musstest und selbst dann lief es nicht so toll.

Allerdings muss ich auch dazu sagen, dass ich schon mit einigen sehr guten Programmierern von Tradingbots geschrieben habe: Wenn du keine Idee für eine profitable Strategie hast, bringt dir auch ein Bot nichts. Dh. Bot-gerüste ohne Strategie wird man sich sicherlich kaufen, oder gar kostenlos bei github runterladen können (besonders die Skripte für die API Anbindung). Aber eine profitable Strategie wird dir niemand mitgeben, die musst du selbst finden.

 

  • Thanks 1
  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 53 Minuten schrieb Adriana Monk:

Ansonstten würde ich einfach eine VMware Worrkbox aufmachen und da testen.

... oder umfassend: Bloß kein Geld ausgeben weil jemand das "passive Einkommen" in Aussicht stellt.

vor einer Stunde schrieb Serpens66:

Ich glaub zusammengefasst kann man sagen, dass du sehr viel zusätzliche Regeln und Anpassungen schreiben musstest und selbst dann lief es nicht so toll.

Oh jaaa - hab noch Lifetime-Lizenzen.

Das Projekt war vielversprechend, jedoch ließen sich Bags nicht komplett vermeiden - da fehlt die Strategie dahinter.

Interessanterweise gibt es kaum noch Youtuber, die über den ProfitTrailer berichten - scheint wohl in breiter Fläche krachen gegangen zu sein.

.... fairerhalber muss ich auch sagen, dass ich mein BalanceBot-Projekt auch grad vernachlässige - der heftige Ausbruch des BTC ist noch immer nicht verdaut, wenngleich er durchaus positive Ergebnisse macht, ich bin jedoch zu unschlau sie korrekt und anschaulich darzustellen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ok funktioniert jetzt!! 😁 Hab ein Video gefunden das erklärt wie man den Fehler beheben kann..

Zitat

Ähm, was meinst Du mit "meine NAS"?

NAS = Network Attached Storage 

Das ist nur ein Datenspeicher. Ob der nun lokal im Computer sitzt oder im Netzwerk ist ziemlich egal.

... kannst Du denn auf http://127.0.0.1 zugreifen und siehst eine PHP-Ausgabe?

Naja, ich meinte ob ich den NAS dann für den Bot in irgendeiner Art und weiße verwenden kann und was ich beachten muss?

Zitat

Du kannst auch testweise für 30 Tage einen Webserver anmieten - es wäre schön wenn Du meinen Ref-Link benutzen würdest: https://www.vultr.com/?ref=8268662

Ich habe ja einen eigenen und würde den auch gerne dafür verwenden. Dein Ref-Link benutze ich dann wenn ich mich dann bei Binance anmelde 🙂

 

Bin also gerade bei Lektion 2, allerdings hat sich da gleich der nächste Fehler eingeschlichen..

Allerdings macht es mehr Sinn wenn ich das dann auch in dem offiziellen Thread poste, dann können andere auch noch was von lernen.

 

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 3 Minuten schrieb E_001:

Naja, ich meinte ob ich den NAS dann für den Bot in irgendeiner Art und weiße verwenden kann und was ich beachten muss?

Kannst Du machen - einfach den Speicher ins Dateisystem einhängen und die Daten dort ablegen 🙂

vor 4 Minuten schrieb Adriana Monk:

Das Problem mit Apache ist, dass es 100K Files hat, da würde ich in eine Virtuelle Box legen und testen, das crached sonst alles. 

Eigentlich ist der Apache sehr pflegeleicht und zuverlässig.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 2 Stunden schrieb Serpens66:

hierzu könntest du E_001 noch deinen selbstversuch mit dem profittrailer oder wie der hieß zeigen, hier gings glaub ich los:
https://coinforum.de/topic/7922-trading-bots/?do=findComment&comment=217957

Danke ich werde mir das mal anschauen!

 

Zitat

Allerdings muss ich auch dazu sagen, dass ich schon mit einigen sehr guten Programmierern von Tradingbots geschrieben habe: Wenn du keine Idee für eine profitable Strategie hast, bringt dir auch ein Bot nichts. Dh. Bot-gerüste ohne Strategie wird man sich sicherlich kaufen, oder gar kostenlos bei github runterladen können (besonders die Skripte für die API Anbindung). Aber eine profitable Strategie wird dir niemand mitgeben, die musst du selbst finden.

Das war ja mein ursprünglicher Gedanke dahinter. Ich bin nicht von einem Bot ausgegangen den man kauft und dann läuft alles perfekt. Ich bin eher auf der suche nach einem guten und verständlichen Grundgerüst dem ich eine Strategie beibringen kann.

Ich bin auch bereit das komplett zu bauen, allerdings frage ich mich schon ob sich das eben lohnt wenn man mit programmieren nicht wirklich vertraut ist. Andererseits bin ich mir sicher das man damit einiges machen kann und wenn es dann eben ein Jahr dauert um ein soliden Bot und ein paar grundlegende Programmierkenntnisse aufzubauen dann bleibt es immer noch interessant.

Bearbeitet von E_001
Link zu diesem Kommentar
Auf anderen Seiten teilen

Am 11.11.2019 um 17:09 schrieb E_001:

Das war ja mein ursprünglicher Gedanke dahinter. Ich bin nicht von einem Bot ausgegangen den man kauft und dann läuft alles perfekt. Ich bin eher auf der suche nach einem guten und verständlichen Grundgerüst dem ich eine Strategie beibringen kann.

welche Programmiersparche willst du denn nehmen? schau dich einfach mal bei github um, da gibt es zb sowas hier für Javascript/Python/PHP :
https://github.com/ccxt/ccxt

das ist soweit ich sehen kann in erster Linie ein skript, welches alle möglichen API Anbindungsskripte enthält. Das nimmt schonmal sehr viel Arbeit, wenn du auf vielen Börsen traden willst.

Dann gibts noch Python Projekte wie
https://github.com/nardew/creten
oder
https://www.backtrader.com/
(siehe zum backtrader auch mein Post hier : https://coinforum.de/topic/15956-interessensabfrage-wer-möchte-selber-einen-tradingbot-erstellen/?do=findComment&comment=369634 )

 

Bearbeitet von Serpens66
  • Thanks 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 10 Stunden schrieb Serpens66:

welche Programmiersparche willst du denn nehmen? schau dich einfach mal bei github um, da gibt es zb sowas hier für Javascript/Python/PHP :
https://github.com/ccxt/ccxt

Naja nehmen kann ich mir nicht einfach was, ich muss es erstmal lernen.. zumindest möchte ich ein Grundverständnis dafür bekommen.

Außerdem hat mich Jokin mit seinem Projekt auch schon angefixt und ich habe hier auch nen super support 😉

 

Allerings hab ich auch etwas bedenken, da ich nicht vor habe ein krasser Programmierer zu werden und jeder Bot ist ja nur so gut wie seine Programmierung..

Das ganze braucht halt seine Zeit, werde die nächsten Tage wieder auf Fehlersuche gehen und hoffe ich komme weiter 😁

 

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 2 Stunden schrieb Adriana Monk:

Negative Punkt ist nur, dass Du entweder an die Broker gebunden bist, die das System anbieten oder genau sehen musst, wie einfach es ist, dies zu erweitern, um andere Exchanges mit einzubinden. Ich würde das Rad nicht neu erfinden.

Das ist halt genau der Punkt - entweder man setzt sich in einen fertigen Tesla und wühlt sich durch das Handbuhc wie das Ding funktioniert ... dann kannste bei einem Defekt das Ding nur noch in die Werkstatt bringen weil Du die Fehler nicht selber suchen kannst. Du bist darauf angewiesen, dass die Updates immer kommen und Du nicht im Regen stehen bleibst.

vor 9 Stunden schrieb E_001:

Naja nehmen kann ich mir nicht einfach was, ich muss es erstmal lernen.. zumindest möchte ich ein Grundverständnis dafür bekommen.

Oder man fängt bei fast Null an und lernt das Schweißen und etwas Elektrik. Daraus schraubt man einen Motor auf einen Rahmen, Räder dran und dann kann die Fahrt schon losgehen.

Wenn etwas kaputt geht, kann man das erlernte Wissen zur Fehlersuche einsetzen und wenn irgendwas außen herum geändert wird, dann kann man seine "Seifenkiste" auch selber fix an die neuen Gegebenheiten anpassen.

Ich bin kein Freund von fertigen Modulen. Selbst bei der Binance-API habe ich so meine Bedenken. Für eine andere Exchange hab ich mir das API-Modul komplett selbst programmiert, da ich nur so weiß was schief läuft wenn etwas schief läuft.

vor 9 Stunden schrieb E_001:

Allerings hab ich auch etwas bedenken, da ich nicht vor habe ein krasser Programmierer zu werden und jeder Bot ist ja nur so gut wie seine Programmierung.

Selbst der krasseste Programmierer kann mit einem Bot nix anfangen, wenn er keine Strategie hat.

Der Bot ist nur das "Werkzeug" - dieses in einer Art und Weise anzuwenden, dass man daraus ein Einkommen generiert ist nochmal eine ganz andere Geschichte.

Ebenso ist MT4 ein "Werkzeug" - ohne die richtige Strategie nützt das einem auch nicht wirklich viel.

... naturgemäß hält jeder seine eigene Strategie für die Beste - solange bis man selber die Erkenntnis hat, dass die doch nicht so geil ist. Aber genau das ist eben auch die Erfahrung, das Bauchgefühl und etwas Intuition.

Natürlich fängt jeder erstmal mit dem Blick in die Vergangenheit an, Backtests noch und nöcher bis die perfekte Strategie für den betrachteten Zeitraum der Vergangenheit funktioniert. Ändert man den Betrachtungszeitraum, dann funktionieren die meisten Strategien schon nicht mehr.

Funktionieren die Strategien doch noch, dann kann man sie auf das reale Orderbuch loslassen und stellt fest, dass es auf einem Effekte gibt, die man vorher nie bedacht hatte.

Ganz einfach manuell zu beobachten: Stell eine SELL-Wall bei Bitfinex ein und erkenne, dass innerhalb kurzer Zeit die Order im Orderbuch verändert werden indem sich andere an die neuen "Umstände" anpassen. Das ist eben der Grund wieso ich grundsätzlich nix von Backtests halte. Jede eigene Aktion führt zu einer Reaktion der anderen Marktteilnehmer.

... dafür die richtige Strategie zu finden halte ich für immens schwer.

Natürlich habe ich eine für mich "perfekte" Strategie gefunden. Nein, der BalanceBot ist das nicht - das ist um andere mal an Bots heran zu führen und für mich hoffentlich ein bisschen Ref-Boni als Belohnung für meine Arbeit abzugreifen.
Da meine Strategie bereits seit über 2 Jahren funktioniert, kann die soo verkehrt nicht sein.

 

Bearbeitet von Jokin
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 35 Minuten schrieb Adriana Monk:

Auch liefert Dein Vorgeschlagenes System nicht mal ansatzweise Funktionalitäten für die Bootsentwicklung, das ist mehr Status 2000 in der Botentwicklung. Aber das habe ich schon früher erwähnt.

Und auch früher hab ich schon erwähnt, dass PHP sich wunderbar dazu eignet einen Bot über das Internet zu steuern und Reports jederzeit von überall abzufragen.

PHP reicht für stündliche Aktionen vollkommen aus. Kurse holen, Aktion berechnen, Order setzen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 2 Stunden schrieb Jokin:

Warum denn komplizierter machen als nötig?

 

Bist du schon auf Performance-Schwierigkeiten gestoßen? Wenn man viele Berechnungen macht, ist PHP da vielleicht der Bremser, bzw. wie man programmiert, mehr als der Fernzugriff per API, oder?

Ich meine, die PHP-API bei binance wird ja nicht mehr wirklich weiter entwickelt. (ich bastle mir da gerade meine eigene dafür, oder habe es zumindest vor) Soweit ich deren API verstanden habe, ist die ganz ok aufgebaut, nur vielleicht etwas überladen und eben nicht mehr aktuell. Sie unterstützt weder Margin-Trading, noch die neuen Order-Möglichkeiten. Ich denke mir immer, dass wenn man seine eigene baut, man eventuell bessere Performance hat außerdem, kann man sich dann diese auch gut selbst erweitern.

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 53 Minuten schrieb coinflipper:

Bist du schon auf Performance-Schwierigkeiten gestoßen? Wenn man viele Berechnungen macht, ist PHP da vielleicht der Bremser, bzw. wie man programmiert, mehr als der Fernzugriff per API, oder?

Ich meine, die PHP-API bei binance wird ja nicht mehr wirklich weiter entwickelt. (ich bastle mir da gerade meine eigene dafür, oder habe es zumindest vor) Soweit ich deren API verstanden habe, ist die ganz ok aufgebaut, nur vielleicht etwas überladen und eben nicht mehr aktuell. Sie unterstützt weder Margin-Trading, noch die neuen Order-Möglichkeiten. Ich denke mir immer, dass wenn man seine eigene baut, man eventuell bessere Performance hat außerdem, kann man sich dann diese auch gut selbst erweitern.

 

Nein, für die Berechnungen hatte ich noch nie Performanceprobleme.

Der Flaschenhals war bisher grundsätzlich die Schnittstelle zwischen meinem Server und dem Exchange-Server. Gesendete API-Calls werden mit einer gewissen Verzögerung beantwortet, ist man auf die Antwort angewiesen um weiterzurechnen, dann wartet das Programm irre lange bis es weiter geht.

So auch mein BalanceBot - in jedem stündlichen Durchlauf wird ermittelt welche Order zu setzen sind - während die Berechnung 1% der Zeit benötigt, dauern die API-Calls 90% der Zeit und die restlichen 9% gehen für die Datenbankzugriffe drauf.

Wenn die Datenmengen größer werden, dann kann auch das Lesen in der Datenbank länger dauern, denn ich lasse lieber innerhalb der Datenbank rechnen als dass ich erst die Daten lade, meine Berechnungen durchführe um dann die geladenen Daten zu verwerfen - da kann ich auch gleich in der DB rechnen lassen und nur das Ergebnis da rausnehmen.

 

Aber ich verstehe Adriana absolut, denn wer in Richtung "künstlicher Intelligenz" arbeitet, der arbeitet auf einem ganz anderen Level und da kommt PHP definitiv sehr schnell an seine Grenzen - dafür ist das nicht gedacht.

Kleiner Einblick in meine Welt: Ich habe zur Jahrtausendwende Content-Management-Systeme programmiert, das war neu und gab es noch nicht. Ich hatte Shop-Systeme mit Perl programmiert und 'ner Adabas-Datenbank hinten dran ... und da bin ich ein Stück weit hängen geblieben - vielleicht kann man heute auch recht einfach eine iOS-App zusammenkloppen, die einen Bot macht - aber die läuft dann auch nicht dauerhaft auf einem Server. 

Ich liebe Serveranwendungen mit einer super einfachen Benutzerschnittstelle, die unabhängig vom Endsystem ist - ich arbeite mit Mac, Windows, Linux und iOS - da bietet sich ein Web-Frontend nunmal an.

Dieser Bot hier hat einfach nur eine Ausgabe, sonst hat der nix um irgendwelche Parameter zu verändert .... das noch hinzu zu packen, geht ganz fix.

 

... und nun ja - Matlab ist mit absoluter Sicherheit weit leistungsfähiger, das bezweifel ich nicht. Für künstliche INtelligenz und Verarbeitung großer Datenmengen sicher die erste Wahl. Ebenso für HighFrequencyTrading möglicherweise besser geeignet, da PHP nicht wirklich parallele Tasks abarbeiten kann. Mit ein paar Kniffen hab ich das dennoch bei mir umgesetzt, dass PHP mehrere Jobs parallel abarbeiten kann - aber das ist nicht Thema hier.

Und auch angemerkt: Python ist ebenso eine gute Wahl - das muss jeder für sich entscheiden.

ABER: Was man mit PHP lernt, kann man auch für alle anderen Sprachen adaptieren.

 

  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

Ja, genau - den Div/0-Fehler hatte ich auch schon, sollte man aufpassen.

 ... und wenn ein Coin extrem ungleich gewichtet ist, dann wird er übersprungen, das ist das eingebaute Netz und der doppelte Boden falls mal ein Coin extrem im Kurs abkackt. Das passiert, wenn man einen Coin drin hat, der gedelistet werden soll. Alle andere verkaufen das Ding schnellstmöglich. Nur der Balancebot sieht in dem Kursverlust eine "tolle Chance" und kauft den - im schlimmsten Fall ballert er dann das gesamte Kapital da rein und der Coin wird gedelistet ... so nullt man seinen Account sehr zuverlässig über die Balance-Strategie.

Daher wird der Coin dann übersprungen, bzw. ignoriert. Da gibt's dann auch die Fehlermeldung dazu.

.... irgendwo hatte ich das bestimmt auch in einer Lektion so dokumentiert. Is schon sooo lange her :D 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 26 Minuten schrieb Adriana Monk:

Ich wundere mich bei diesen Statements, wie wenig Übersicht und Verständnis Jokin eigentlich über den Prozess eine profitablem Strategieentwicklung hat, deswegen hier nochmal in Kürze, damit man aufhört Äpfel mit Birnen zu vergleichen.

Grundsätzlich ist es so, dass eine profitable Strategie 4 Punkte beantworten muss. Welches Instrument, wann rein, wann raus und wieviel riskiere ich. Auch muss ich eine gewissen Testphase haben, um zu sehen, wie das System life funktioniert und wie stabil das ganze ist. Alles andere wird Geld kosten. Das kann man in mehrere Phasen aufteilen.

Korrekt - da stimmen wir vollkommen überein!

-> welches Instrument: Dazu muss man selber feststellen, was das Instrument leisten muss.

-> wann rein, wann raus: Das ist Kern der Strategie und ebenso muss die Frage "welche Art und Weise" beantwortet werden - entweder per Limit-Order oder per Marketorder oder auch mit verbundener Stop-Loss-Order oder dies auch noch kaskadiert oder getrailt. Dies kann dann auch "eskalierend" nach einander erfolgen.
Und besonders wichtig: In Abhängigkeit vom Orderbuch oder nicht?
Und auch wichtig: Soll die Limitorder wie eine Angel ausgeworfen werden und für alle sichtbar sein? Oder will ich vermeiden, dass andere auf meine Order reagieren und mich unterbieten? Dann stelle ich die Order exakt so ein, dass sie gerade nicht als Marketorder angenommen wird - oder ich nehme direkt spezifische Order aus dem Orderbuch an.

Genau diese "Art und Weise" bestimmt wie eng ich an die Exchange angebunden sein muss. Eventuell muss ich per Websocket-API jegliche Aktivitäten in dem angepeilten Orderbuch untersuchen und ganz gezielt neu eingestellte Order annehmen oder selber in letzter Sekunde meine Order setzen.

Und genau an der Stelle ist es eben nicht mehr möglich mit PHP solche Bots zu programmieren.

... geht es aber nur darum stündlich die Kurse zu checken um diese durchzurechnen und danach meine Order einzustellen, dann ist das doch total egal was ich für eine Programmiersprache nehme - das könnte ich auch noch manuell mit dem Taschenrechner ausrechnen und die Order manuell setzen.
Aber genau da hilft mir ein Bot - er schaut für mich nach, er rechnet für mich und er stellt die Order füpr mich ein. Fertig.

PHP oder Python reicht dafür absolut aus.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 50 Minuten schrieb Adriana Monk:

Man muss immer den Gesamtprozess betrachten und da ist PHP nicht geeignet.

Erklärst Du bitte was Du mit "Gesamtprozess" meinst?

Für mich ist das der Gesamtprozess:

Bot startet, holt aktuelle Daten, berechnet was zu tun ist, setzt/löscht Order und fertig.

Warum reicht PHP dafür nicht?

(und wieso reicht mir das seit über zwei Jahren?)

Bearbeitet von Jokin
Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...

Wichtige Information

Wir haben Cookies auf Deinem Gerät platziert. Das hilft uns diese Webseite zu verbessern. Du kannst die Cookie-Einstellungen anpassen, andernfalls gehen wir davon aus, dass Du damit einverstanden bist, weiterzumachen.