Einen Crypto-Trading Bot programmieren

BTC zu USDT Chart: Hoch verkaufen tief kaufen

Ich will einen Crypto Trading Bot entwickeln, der automatisch Crypto-Währungen kauft und (hoffentlich) gewinnbringend verkauft. In dieser Artikelserie dokumentiere ich, wie ich vorgehe und ob das überhaupt funktionieren kann.

Meine ersten 5 Bitcoins habe ich vor etwa 10 Jahren gekauft: 5 Stück zu einem erschreckend lächerlichen Preis. Ich erinnere mich nicht mehr an die Gesamtsumme, aber es waren ganz bestimmt nicht mehr als 10 Euro. Die Geschichte könnte schön sein, hätte ich die Dinger nicht vor einigen Jahren für knapp 600 € verkauft. Irre: 600 Euro für ein paar virtuelle Zahlen in einem digitalen Wallet. Doch die Freude darüber währte nicht lange, denn schon kurz nach meinem Verkauf kletterte der Bitcoin Kurs auf rund 8.000 €. Hätte ich also ein paar Wochen gewartet hätte ich statt 600 € ganze 40.000 € in der Tasche gehabt.

Doch es kam noch krasser: beim aktuellen Bitcoin Kurs von rund 39.000 € wären es schon 195.000 € gewesen. Puh! Egal: Fehlentscheidungen soll man nicht nachtrauern und eine Rendite ist eine Rendite.

An dieser Stelle ein Warnhinweis: Ich bin kein professioneller Trader. Das hier ist ein Hobby-Projekt um mehr über Crypto-Währungen, Programmieren und Machine-Learning zu lernen. Hierbei kann allerhand schiefgehen was vor allem sicherlich auch ein Totalverlust des investierten Geldes bedeuten kann.

Was ist eigentlich ein Trading-Bot?

Und was genau ist eigentlich Crypto-Trading? Das ist einfach: Crypto-Trading ist der Handel mit Crypto-Währungen, also Bitcoin, Etherum, Monero, etc. Es gibt mittlerweile unzählige Crypto-Währungen und der Bitcoin ist hier nur die bekannteste. Man kann Euros gegen Bitcoins tauschen, Bitcoins gegen Monero, Modero gegen Euro, Ethereum gegen Bitcoin, Bitcoin zu US-Dollar und so weiter.

Und ein Crypto-Trading-Bot ist ein Roboter, der das automatisch macht. Ein klassischer Roboter ist es aber gar nicht: eigentlich nur ein Programm, was auf einem Rechner oder Server läuft.

Wie kann man damit Gewinne erzielen?

Die Theorie ist simpel: ich will Bitcoins zu einem günstigen Preis einkaufen, dann warten bis sie im Preis steigen um sie dann teurer zu verkaufen. Die Differenz ist dann mein Gewinn.

Ein Beispiel:

Aktuell notiert der Bitcoin bei rund 42.500 €. Ich muss also 42.500 € bezahlen um einen Bitcoin zu bekommen. Ziemlich viel Geld für ein solches Experiment. Glücklicherweise ist der Bitcoin teilbar: er hat 8 Nachkommastellen. Wenn ich also 100 € investieren möchte, bekomme ich genau 0,00235294 Bitcoin oder kurz BTC.

Wie andere Währungen auch ist der Bitcoin mehr oder weniger starken Schwankungen unterlegen. Innerhalb von Sekunden wird ein neuer Preis ermittelt, der dann entweder höher oder niedriger liegt, als noch einige Sekunden zuvor.

BTC zu USDT Kurs: Günstig kaufen und teuer verkaufen
Kursverlauf BTC/UDST: Die weißen Linien zeigen wann ich Bitcoins kaufen sollte. Die gelben zeigen wann ich sie verkaufen sollte.

Steigt jetzt der Bitcoin Preis auf 42.750 € kann ich meine 0,00235294 BTC für 100,59 € verkaufen. Ein Gewinn von 59 Cent.

Ziemlich ernüchternd, oder? Ja.... aber: Angenommen das Trading passiert automatisch? Und das im Minutentakt? Und hier kommt der Trading-Roboter ins Spiel. Und der Umstand dass diese Kursschwankungen im Sekundentakt passieren.

Was braucht man dafür?

1. Einen Handelsplatz

Um Cryptos überhaupt kaufen und verkaufen zu können, braucht man zunächst einen Zugang zu einem Crypto Handelsplatz. Ich mache es an dieser Stelle kurz: ich habe mich für Binance.com entschieden. Laut Wikipedia ist es der größte Crypto-Handelsplatz der Welt. Ob nun an aktiven Tradern oder am Umsatz gemessen, weiß ich nicht. Wahrscheinlich trifft beides zu.

Viel wichtiger als die Größe ist etwas anderes: Binance hat eine API (API = Advanced Programming Interface). Das ist eine Schnittstelle über die man auf den Crypto-Marktplatz zugreifen kann um automatisch Bitcoins zu kaufen oder zu verkaufen.

2. Eine Strategie

Zu günstigen Kursen kaufen und zu höheren wiederverkaufen. Eigentlich recht simpel, dennoch gar nicht so einfach zu realisieren. Woher weiß ich, ob das gerade der niedrigste Kurs ist? Vielleicht steigt er gleich wieder und ich ärgere mich, dass ich nicht früher zugeschlagen habe? Oder andersherum: ich kaufe und der Kurs fällt danach noch weiter - auch das wäre ärgerlich.

Woher weiß ich also ob der Kurs gleich steigen oder fallen wird?

Ganz einfach: ich weiß es nicht. Und das ist für mich auch nicht relevant. Ich will mir kurzfristige Kurssprünge zu nutzen machen, und die passieren beinahe unvorhersehbar. Meine Strategie ist also vorerst recht simpel:

BTC USDT Chart Ticker
Kursänderung des Bitcoin in Echtzeit.

Ich ermittle zunächst den aktuellen Preis und platziere dann eine Kauf- und eine Verkauf-Order je 0,5 % vom Kurs entfernt.

Beispiel: Angenommen der BTC Kurs liegt bei 38.000 €. Ich platziere dann eine Verkauf-Order bei 38.190 € und eine Kauf-Order bei 37.811 €. Eine Order platzieren bedeutet, dass ich meinem Handelsplatz (Binance) mitteile, dass ich Bitcoins verkaufen möchte, wenn der Kurs über 38.190 € steigt und welche kaufen möchte, wenn der Kurs unter 37.811 € sinkt.

Nun halte ich den Kurs im Blick: steigt oder sinkt er nur leicht, ohne eine Order auszulösen ziehe ich ggf. die Orders nach.

Diese absolut simple Strategie (ich weiß nicht mal, ob man überhaupt von Strategie sprechen kann), soll nun im ersten Schritt ein Programm für mich erledigen.

Meine Ziele in diesem Projekt

  1. Mehr über Crypto-Währungen erfahren
  2. Einen Crypto-Bot betreiben, der selbstständig handelt
  3. Eine erste Strategie implementieren und testen
  4. Erfahrungen der Test aufgreifen und die Strategie verbessern
  5. Ein Machine-Learning System entwickeln das selbstständig zwischen mehreren Strategien wechselt

Dieser Beitrag ist Teil einer Serie. Im nächsten Teil geht es um die Einrichtung eines Trading-Bots und die Implementierung der ersten Strategie.

Kommentare

Lass uns ein paar Gedanken teilen!

Schließe Dich einer wachsenden Gemeinschaft von freundlichen Lesern an. Jeden Sonntag teile ich meine Gedanken über rationales Denken, Produktivität und das Leben.