Zum Inhalt springen

Workshop: Wir basteln uns einen Tradingbot (Lektion 3)


Empfohlene Beiträge

vor 22 Minuten schrieb fbueller76:

drwxrwsrwx 3 www-data www-data 4,0K Jun 23 20:06 .
drwxr-xr-x 3 www-data www-data 4,0K Jun 22 21:17 ..
-rwxrwxrwx 1 www-data www-data  488 Jun 23 08:46 config.php
-rwxrwxrwx 1 www-data www-data 3,7K Jun 23 20:20 index.php
drwxr-sr-x 2 www-data www-data 4,0K Jun 23 17:54 old
-rwxrwxrwx 1 www-data www-data  81K Jun 23 10:14 php-binance-api.php
-rwxrwxrwx 1 www-data www-data 1,3K Jun 23 07:10 show_messages.php

ich hab den besitzt auf "www-data" und zum testen "sudo chmod 777"
habe ich noch etwas übersehen?

fehler gefunden 🙂

sudo apt-get install curl
sudo apt-get install php7-curl
sudo service apache2 restart

verbindung wird aufgebaut und die "ca.pem" wird erzeugt
 

  • Thanks 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 4 Minuten schrieb fbueller76:

fehler gefunden 🙂

sudo apt-get install curl
sudo apt-get install php7-curl
sudo service apache2 restart

verbindung wird aufgebaut und die "ca.pem" wird erzeugt
 

Jippieh! Sehr gut gemacht!

... ich war auch gerade schon am Überlegen woran das liegen könnte.

An dieser Stelle nochmal ein ganz fetter Risikohinweis: Sollte der BalanceBot mit BTC oder ETH als Basiswährung betrieben werden, kann das zu zwei üblen Szenarien führen:

a) Bitcoin folgt dem Kursverlauf wie er es auch nach den anderen Halvings tat -> der Kurs geht durch die Decke, die Alts bleiben zurück -> der Portfoliowert in BTC gemessen wird immer geringer.

b) Ether steigt im Kurs weil ETH-2.0 in den AStartlöchern steht -> auch hier fällt der Portfoliowert dann massiv.

c) Die Alt-Season kommt zurück ... dann wäre der Bot natürlich sehr profitabel.

Ich rate daher DRINGEND sich der Risiken bewusst zu werden - insbesondere in der aktuellen "scheinbar toten" Zeit mit Seitwärtskursen.

Zur Sicherheit sollte man dem Bot nur einen sehr kleinen Teil seines Portfolios geben - der Großteil gehört meiner Meinung nach gehodlt.

  • Love it 1
  • Thanks 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 4 Monate später...

Moin,

ich hab versucht den Bot nach zubauen bevor ich ihn meinen Vorstellungen anpasse.

Leider liefert mir Binance nicht die selben Account Daten über die API wie in dieser Artikel.

Ich bekomme so etwas:

Array
(
    [makerCommission] => 10
    [takerCommission] => 10
    [buyerCommission] => 0
    [sellerCommission] => 0
    [canTrade] => 1
    [canWithdraw] => 1
    [canDeposit] => 1
    [updateTime] => 1596284302235
    [accountType] => SPOT
    [balances] => Array
        (
        )

    [permissions] => Array
        (
            [0] => SPOT
        )
)

Muss ich da in meinem Binance Account noch was einstellen damit ich auch die Liste der Coins bekomme oder hat sich die API geändert.

Hab noch nicht so viele Erfahrungen Binance war bisher meist bei Bitcoin.de unterwegs.

  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 12 Minuten schrieb bjew:

vllt. ein paar coins anlegen ?

Die API sollte nicht nur die Coins ausgeben die ich besitze.

Schließlich funktioniert Jokins Bot ja auch wenn ich in der config.php einen neuen Coin eintrage für den ich noch keine Coins besitze. 

Und ich glaube irgend wie nicht das die Coins nur angezeigt werden wenn man sie schon mal gehandelt hat. das würde ja bedeuten das Jokin hier nach ja bereits 158 verschiedene Coins ausprobiert hat.

[balances] => Array
        (
            [0] => Array
                (
                    [asset] => BTC
                    [free] => 0.00558100
                    [locked] => 0.00000000
                )

            [1] => Array
                (
                    [asset] => LTC
                    [free] => 0.00000000
                    [locked] => 0.00000000

                )

[...]

            [158] => Array
                (
                    [asset] => REN
                    [free] => 0.00000000
                    [locked] => 0.00000000
                )

        )

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 2 Stunden schrieb Jokin:

Schmeiß mal Deinen Code der index.php bei pastebin.com rein und hier den Link dazu. Ich schau es mir mal an. 

https://pastebin.com/QSXKxEjh

Eigentlich ist es noch dein Code ich wollte ihn erst mal mit selltest() und buytest() zum laufen bekommen bevor ich meinem Feenstaub drüber streue und ihn auf OOP und GUI umbaue.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 16 Minuten schrieb bjew:

es ist sein Code, wenn du ihn nicht aus dem Forum herauskopiert hast, sondern den Link auf den sauberen Code genommen hast.

Natürlich hätte ich den Code von github nehmen können da der Code aber an sich funktioniert hielt ich das nicht für nötig. 

Das Problem ist das der Binance Api Client beim ersten Schritt etwas abweichendes zurück gibt als erwartet. Darum dachte ich das an meinem Binance Account noch eine Einstellung fehlt. Oder meine abweichende PHP Version dafür sorgt das der Binance Api Client nicht richtig arbeitet. 

Ich hoffte das jemand in der Community über das selbe Problem gestolpert ist und weiß woran es liegt. 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 9 Stunden schrieb Daigakusei:

Und ich glaube irgend wie nicht das die Coins nur angezeigt werden wenn man sie schon mal gehandelt hat. das würde ja bedeuten das Jokin hier nach ja bereits 158 verschiedene Coins ausprobiert hat.

Ähm, doch - das stimmt soweit.

Wenn Du noch keine Coins bei Dir im Account hast, werden auch keine Balances ausgegeben.

Und ja, ich hatte mit dem Account früher den ProfitTrailer laufen, dem waren die Coins egal, der hat einfach alles genommen was so ging.

  • Like 1
Link zu diesem Kommentar
Auf anderen Seiten teilen

H

vor 5 Minuten schrieb Jokin:

Ähm, doch - das stimmt soweit.

Wenn Du noch keine Coins bei Dir im Account hast, werden auch keine Balances ausgegeben.

Und ja, ich hatte mit dem Account früher den ProfitTrailer laufen, dem waren die Coins egal, der hat einfach alles genommen was so ging.

Ok dann werde ich mal händisch ein paar Coins kaufen und dann noch mal berichten ob es daran lag. Danke für den Tipp. Ich hab die Zahl halt für zu hoch gehalten und da auch welche mit dem Wert 0.0 stehen dachte ich der zeigt einfach alle verfügbaren nicht nur die bereits benutzten. 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ach so - dann ist es klar 🙂

Pack mal irgendwas in den Account.

Der Bot tradet ja nur wenn Du ihn das auch machen lässt. Das ist ja das Schöne an diesem Workshop, Du bekommst quasi nur das Werkzeug und wie man damit etwas macht.

Das "Machen" an sich darfst Du selber 🙂

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 1 Minute schrieb Jokin:

Ach so - dann ist es klar 🙂

Pack mal irgendwas in den Account.

Der Bot tradet ja nur wenn Du ihn das auch machen lässt. Das ist ja das Schöne an diesem Workshop, Du bekommst quasi nur das Werkzeug und wie man damit etwas macht.

Das "Machen" an sich darfst Du selber 🙂

Ok, das ganze ist halt wohl noch keinem aufgefallen weil alke sich an deinen Rat gehalten haben erstmal Erfahrungen mit Binance zu sammeln mit ein paar trades von Hand wie du am Anfang dieses Kapitels empfiehlst. Das gab ich halt nicht beachtet. 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 1 Minute schrieb bjew:

na, wenn du aus dem Forum kopiert hast, könnte dir noch die eine oder andere Überraschung blühen. Da sind ein paar falsch codierte Zeichen drin, die auf github korrigiert sind. - Nur so als Hinweis

Hab inzwischen die github Version kopiert da tritt das selbe phänomen auf wie bei meiner zusammen kopierten Version. 

Ich hoffe das es wirklich nur an dem fehlenden trades liegt und das er danach funktioniert. 

Die falsche Codierungs Bugs hab ich mir aus den Kommentaren der einzelnen Kapitel zusammen gelesen. 

Da ich den bot sowie auf OOP, Unittests und php-cli um schreibe werde ich fast jede Zeile nochmal anfassen dürfen. 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 12 Stunden schrieb Daigakusei:

Da ich den bot sowie auf OOP, Unittests und php-cli um schreibe werde ich fast jede Zeile nochmal anfassen dürfen. 

Das dürfte recht leicht sein, ich hab ja das Projekt in viele Teile geteilt und jeder Abschnitt für sich wird ja schon eine Teilfunktion in Deinem umgeschriebenen Projekt erfüllen 🙂 

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 4 Monate später...

So, ich bin jetzt auch bei Lektion 3 angekommen.

 

Wer genauso wie ich mit Google Bauchschmerzen hat, und der Firma ganz besonders bei Geldgeschäften nicht traut:

Das Ding bei Binance heisst zwar Google Authenticator, aber es ist de facto ein ganz normales OTP, ich nutze OTP Manager, eine kleine App die oben in der Menüleiste sitzt und den 2FA einfach bei Bedarf in die Zwischenablage kopiert.

Bearbeitet von 24unix
typos
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 15 Stunden schrieb 24unix:

Wer genauso wie ich mit Google Bauchschmerzen hat, und der Firma ganz besonders bei Geldgeschäften nicht traut:

Was hat der "Google-Authenticator" jetzt mit Geldgeschäften zu tun? Da gibts nichts zu vertrauen. GA macht genau das was es soll, nicht mehr und nicht weniger 

Warum hast du Bauchschmerzen mit Google? 

 

Bearbeitet von o0dy
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 8 Stunden schrieb o0dy:

Warum hast du Bauchschmerzen mit Google? 

 

Weil es eine Datenkrake ist. Ich nutze nicht von denen ausser der Suche, da gibt es leider keine brauchbaren Alternativen.

Es geht Google aber ganz und gar nichts an, auf welchen Seiten ich mich anmelde, welche Dienste ich nutze.

Ist aber nicht der entscheidende Punkt, sondern, dass man jedes OTP Tool verwenden kann, man muss also nicht jedesmal das Handy rauskramen wenn man ein PW braucht.

Bearbeitet von 24unix
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 7 Stunden schrieb 24unix:

Es geht Google aber ganz und gar nichts an, auf welchen Seiten ich mich anmelde, welche Dienste ich nutze.

Das tut der Google Authentikator auch nicht. Der braucht nicht mal ne Internet Verbindung. 

 

vor 7 Stunden schrieb 24unix:

Weil es eine Datenkrake ist. Ich nutze nicht von denen ausser der Suche, da gibt es leider keine brauchbaren Alternativen

Dann gibst du Google schon alles was er von dir braucht/will 🙈

Verwendest du Android oder Apple Smartphones? 

Bearbeitet von o0dy
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 23 Minuten schrieb o0dy:

Das tut der Google Authentikator auch nicht. Der braucht nicht mal ne Internet Verbindung. 

 

Der weiß aber, für welche Seite Du ihn benutzt. Das ist schon zu viel.

 

vor 23 Minuten schrieb o0dy:

Verwendest du Android oder Apple Smartphones? 

Apple.

 

Zurück zum Thema: Nachdem ich nun Guthaben  in der Wallet habe bekomme ich auch die balance angezeigt.

Edit: Coins habe ich noch keine, aber sobald EUR da waren wurde das array befüllt.

Lustigerweise kann man auch mit ungültigem API key Kurse abfragen 🙂 

 

Das doch recht komplizierte Konstrukt mit dem foreach über das array kann man kürzer lösen.

$usdt = array_search('USDT', array_column($this->binanceAccount['balances'], 'asset'));
		$value = $this->binanceAccount['balances'][$usdt];
		print_r($value);

https://y.24unix.net/92z8z

Noch ein Edit: Habe einen Screenshot vom Bot-Dialog gemacht, KEY und Secret sind optional, wenn nicht eingegeben wird, wird der aus der Config genommen (Menü Setup).

Bearbeitet von 24unix
im Text markiert
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 2 Minuten schrieb verado:

Zur Abfrage von Kursen braucht man gar keinen Key, falls du doch einen schickst wird er ignoriert. 

Ah OK. Ich wollte eigentlich testen, wie ich sauber herausfinden kann, ob ich angemeldet bin. Wenn ich einen ungültigen Key nehme schmeisst die API eine Fehlermeldung, aber direkt als Text, keine Exception oder so. Würde das irgendwie gerne sauberer lösen.

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 1 Minute schrieb bjew:

es gibt eine ganze Reihe von Diensten, die die Google-Suche anonymisieren - und die funktionieren ganz gut und blenden sogar die Werbung aus

Werbung stört mich nicht, das mit dem anonymisieren (startpage.com) hat halt auch Nachteile, wenn man gezielt personalisierte Ergebnisse will.

 

Es ist nicht einfach 🙂

 

Aber ich wollte hier wirklich keinen Glaubenskrieg für oder wider Google anfangen. Ich finde es halt nur praktisch, dass ich mein Menüleistentool statt dem Handy für das OTP nehmen kann. Ach ja, hatte auf der letzen Seite noch einen Screenshot verlinkt, viel sieht man noch nicht, aber mir gefällt es :)

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.