Vorhersage von Krypto-Kursen mittels Monte-Carlo-Simulation – inkl. Tool

Wie wird sich der Preis einer Kryptowährung in der Zukunft entwickeln? Natürlich haben wir alle keine Glaskugel, aber auf Basis statistischer Modelle lässt sich abschätzen, in welchem Rahmen Preisänderungen zu erwarten sind. Die Monte-Carlo-Simulation soll hier als eines dieser Modelle vorgestellt werden.

Dr. Philipp Giese
Teilen

Wie wird sich Bitcoin im Jahr 2018 verhalten? Eine Frage, die sich viele stellen und die auch oft an BTC-ECHO gerichtet wird. Ebenso ist das Internet voll von Prognosen, wie sich Bitcoin und andere Kryptowährungen innerhalb einer bestimmten Zeit verhalten sollen. Die Spannweite reicht im Fall von Bitcoin von Null bis zu einer Million Euro.

Die ernüchternde Wahrheit ist jedoch, um es mit den Worten von Mark Hanna auszudrücken: Nobody knows if a stock is going to go up, down, sideways or in circles. Niemand kann mit 100-%-iger Sicherheit sagen, wo der Kurs morgen, in der nächsten Woche oder in einem Jahr stehen wird.

Einschätzungen sind natürlich ein anderes Thema. Wie jüngst erklärt wurde, ist es das Ziel der technischen Analyse, auf der Basis der vergangenen Kursbewegungen zu einer begründeten Einschätzung der weiteren Entwicklung und einer Handelsstrategie zu kommen – nicht, den Kurs vorherzusagen.

Gerade für langfristige Kursentwicklungen existieren in der Finanzwelt Methoden, die weitere Kursentwicklung abzuschätzen. Mit diesen soll auch abgeschätzt werden, mit welcher Wahrscheinlichkeit eine Preisvorhersage zutrifft. Das geschieht mit Hilfsmitteln aus der Statistik, die in diesem Artikel vorgestellt werden sollen. Auch ich selbst habe eine kleine Web-Applikation entwickelt, auf die ich später noch einmal genauer eingehen werde.

Brownsche Bewegung: Wie man zukünftige Kursentwicklungen simuliert

Neben der fundamentalen Analyse, die den realen Wert eines Assets unabhängig vom Marktwert finden will, und der technischen Analyse, deren Ziel die Bestimmung der zukünftigen Marktstimmung ist, existiert eine dritte Position zur Bewertung der Marktpreise. Im Rahmen der Effizienzmarkthypothese wird davon ausgegangen, dass der aktuelle Marktpreis einer Anlage immer der korrekte ist, dass der fundamentale Wert oder eine etwaige Stimmung auf dem Markt also schon eingepreist sei. Eine radikale Auslegung der Effizienzmarkthypothese vertritt deshalb die Position, dass der Markt unschlagbar ist.

Auch wenn diese dritte Position von verschiedenen Seiten kritisiert wurde, ist sie eine gute Basis für die Abschätzung langfristiger Entwicklungen – hier gilt nämlich, dass der Markt nicht wirklich derart langfristig eingeschätzt werden kann.  Man greift deshalb zu statistischen Methoden. Dabei ist die Basis der Betrachtung ein sogenanntes Random-Walk-Modell. Dabei wird ein zufälliger Verlauf des Kurses berechnet. Für Bitcoin und andere Altcoins wurden derartige Ansätze schon getestet. Ebenfalls diente es als Inspirationshilfe für die oben angesprochene, eigens entwickelte Applikation.

Für eine sinnvolle Abschätzung wird betrachtet, wie hoch die Volatilität in der Vergangenheit war und wohin sich der Markt insgesamt bewegt hat. Oft wird dazu die sogenannte geometrische Brownsche Bewegung genutzt, die in folgendem Satz umschrieben werden kann: In einer Brownschen Bewegung ist ein nächster Schritt in einem Zufallsprozess nur von den jüngsten vorherigen Werten abhängig.

Formelfreunde würden den Satz wie folgt ausdrücken:

ΔP = P* (µΔt + σϵ(Δt)^0.5)

Dabei ist P der Preis, µ ein erwarteter Anstieg (der sogenannte Return), σ dessen Volatilität (die der Standardabweichung des Returns entspricht), ϵ eine reine Zufallsvariable und Δt Zeit.  Eine Preisänderung ΔP ist also von der Zeit, vom alten Preis, einem Drift und einer Volatilität abhängig.

Das ist erstmal genug Theorie, beginnen wir diese anzuwenden! Wir betrachten als klassisches Beispiel die Kursentwicklung von Bitcoin:

Dargestellt ist die Bitcoin-Kursentwicklung zwischen 2012 und 2018. Damit man möglichst viel von der Entwicklung studieren kann, wurde eine logarithmische Auftragung gewählt. Aus dieser Kursbewegung können einige wichtige Größen ermittelt werden:

Return = log (Kurs(t)/Kurs(t-1))
Close = Kurs(heute)
σ(Tag) = Standardabweichung(Return)
Täglicher Drift = Mittelwert(Return)

Return ist der Gewinn, der täglich erzielt wurde. Close ist der heutige Kurs von Bitcoin, der auch die Basis der weiteren Simulationen sein wird. Die Standardabweichung ist die Streuung des Gewinns und ein Maß für die Volatilität dieser Anlage. Der Drift schließlich ist der Mittelwert der täglich erzielten Gewinne. Mithilfe dieser Größen und der weiter oben angegebenen Formel lässt sich die Kursbewegung von Bitoin über ein Jahr simulieren. Da mit ϵ eine Zufallsvariable vorkommt (woher der Begriff Random Walk stammt), wird bei jeder Simulation eine andere mögliche Zukunft berechnet. Um das zu veranschaulichen, seien drei simulierte Kursverläufe dargestellt:

Wir sehen, dass dieselbe Formel durch das Zufallselement ϵ extrem unterschiedliche Kursverläufe erzeugen kann. Das Durchlaufen einer Simulation wird anscheinend wenig über die zukünftige Preisentwicklung sagen. Kann man vielleicht aussagen, wie sich ein Großteil der Simulationen verhält?

Monte Carlo – es muss nicht nur eine Simulation sein

Zugunsten einer guten Statistik sind wir etwas wahnsinnig und führen eine Million Simulationen durch. Dabei orientieren wir uns an Monte-Carlo-Prozessen. Zugegebenermaßen sind diese nicht vollständig wie die obigen Kursverläufe, da uns nur die Frage beschäftigt, wie sich Bitcoin in einem Jahr entwickeln wird. Um dies zu berechnen, werden wir die Größen Drift und Volatilität auf 365 Tage hochskalieren:

Drift pro Jahr = Täglicher Drift * 365
Volatilität pro Jahr = σ(Tag)*365^0,5

Mit diesem jährlichen Drift und der Volatilität kann nun folgende Formel angesetzt werden:

P(Jahr) = Close*exp((Drift pro Jahr-0.5*Volatilität pro Jahr^2)+Volatilität pro Jahr*ϵ)

Wenn diese nun mehrfach durchgerechnet wird, kann uns ein Histogramm Informationen darüber geben, wie häufig welche Preise am Ende eines Jahres errechnet wurden. Eine logarithmische Darstellung des Histogrammes wurde gewählt, damit man die große Spannbreite von errechneten Endpreisen betrachten kann:

Wir sehen, dass die meisten Simulationen nach einem Jahr einen Preis von 17.078 US-Dollar errechnen. Wir sehen außerdem, dass die Verteilung bei einer logarithmischen Darstellung normalverteilt ist. Das lässt uns noch etwas mehr sagen: Wir können uns die Standardabweichung um diesen Mittelwert anschauen. Das ist ein recht interessantes Maß, ist doch bekannt, dass 68 % der durch eine Normalverteilung beschriebenen Ergebnisse innerhalb dieser Standardabweichung liegen.

So lässt sich dann sagen, dass gemäß dieser Simulation der Bitcoin-Kurs mit 68 % Wahrscheinlichkeit zwischen 4.854 Euro und 60.087 US-Dollar liegen wird – was nicht weit weg von den bekannten Preisprognosen à la “Bitcoin wird zwischen 5.000 und 60.000 US-Dollar liegen” entfernt ist!

In Messunsicherheitsbetrachtungen wird oft die doppelte oder dreifache Standardabweichung als sogenanntes Fehlerintervall betrachtet, da 95 % beziehungsweise 99 % der Normalverteilung innerhalb dieser liegt. Ob jedoch eine Angabe wie “Der Kurs von Bitcoin wird mit 99-%-iger Wahrscheinlichkeit zwischen 392 US-Dollar und 743.796 US-Dollar liegen” helfen, sei dahin gestellt – es soll eher eine sinnvolle Begründung für die aus verschiedenen Quellen gehörte Preisprognose genannt und die Grenzen derselben aufgezeigt werden.

Ihr seid am Zug!

Das war ein komplexer Artikel. Wie wäre es, das Wissen selbst etwas anzuwenden? Wenn man einen Artikel so lange durchhält, hat man auch was zum Spielen verdient! In der oben angesprochenen selbstentwickelten Web-App kann jeder die Preisprognosen für verschiedene Wertepaare auf Exchanges berechnen (wenn auch zugunsten der Zeiteffizienz nur tausend Simulationen durchgeführt werden).

Unter “Exchanges” kann man als Basis die Börse wählen, von der die Kurswerte übernommen werden sollen. Currency 1 ist die Zielwährung, Currency 2 die Quellwährung. Unter “Vergangene Tage” wird betrachtet, wie weit die Daten in die Vergangenheit gehen sollen, die für die Drift- und Volatilitätsberechnung genutzt werden. Schließlich kann über “Simulationsdauer” berechnet werden, wie viele Tage in die Zukunft die Preisprognose gehen soll.

Das Tool wurde in R geschrieben und war ein kleines Samstagsprojekt. Es verfügt über erhebliches Verbesserungspotenzial, aber zum Herumexperimentieren taugt das Tool allemal. Sollte es also Probleme beim Aufrufen des unter Shinyapps gespeicherten Tools geben, sollte jemand den Code betrachten und verbessern wollen oder etwas R und Shiny lernen: Für all jene kann das Projekt auch offline unter Rstudio gestartet werden.

Viel Spaß beim Herumexperimentieren!

BTC-ECHO

Du willst Verasity (VRA) kaufen oder verkaufen?
Wir zeigen dir in unserem Leitfaden, wie und wo du einfach und seriös echte Verasity (VRA) kaufen kannst.
Verasity kaufen