Erhalten historischer und Echtzeit-Kryptodaten mit sehr einfacher Webprogrammierung PlatoBlockchain Data Intelligence. Vertikale Suche. Ai.

Erhalten von historischen und Echtzeit-Kryptodaten mit sehr einfacher Webprogrammierung

Luciano Abriata

Während ich etwas über Kryptowährungen lernte, brauchte ich dringend Daten, die ich selbst manipulieren konnte, um meine eigenen Plots und Analysen durchzuführen. Hier zeige ich Ihnen, wie Sie mit minimalen Programmierkenntnissen ganz einfach Echtzeit- und historische Kryptodaten direkt in Ihren Webbrowser abrufen können. Quellcode, Links und einige grundlegende Diagramme und Analysen enthalten.

Haftungsausschluss: Sie finden keine Finanzberatungce hier und ich bin kein Experte für Kryptowährung, Kryptokunst, NFTs, deren Handel usw. Ich gebe nur kostenlosen HTML+JavaScript-Code weiter, um Daten über API-Aufrufe an CryptoCompare.com zu erhalten; und ich zeige einige von diesen Daten abgeleitete Diagramme mit einigen meiner eigenen subjektiven Meinungen an.

Ich habe mich vor kurzem für Kryptowährungen, Kryptokunst, NFTs usw. interessiert. Als Wissenschaftler, der die ganze Zeit mit Daten arbeitet, wollte ich natürlich selbst mit Kryptowährungsdaten spielen. Ich habe überall Plots in Websites, Nachrichten und Apps gesehen; aber wie könnte ich die tatsächlichen Daten in die Finger bekommen, um damit zu spielen und meine eigenen Pläne und Untersuchungen durchzuführen? Und vor allem, wie kann ich sicher sein, dass es jedes Mal auf dem neuesten Stand ist, wenn ich es angefordert habe?

Konkret wollte ich als erstes die Wechselkurse zwischen verschiedenen Krypto- und Fiat-Währungen in die Finger bekommen. Ich habe festgestellt, dass die Website CryptoCompare.com eine nette API bietet, die für eine kleine Anzahl von Aufrufen kostenlos ist und den programmgesteuerten Zugriff auf Daten von ihrer Basis aus ermöglicht. Ich fand auch online verschiedene Teile von JavaScript-Code, die ich in zwei sehr einfache Web-Apps zusammengestellt habe: eine, um alle 10 Sekunden Updates der BTC-USD-Wechselkurse zu erhalten; und eine andere, um historische BTC-USD-Wechselkurse jede Minute, Stunde oder Tag während der gesamten Geschichte von Bitcoin abzurufen. Fühlen Sie sich frei, den von mir vorgestellten Code zu kopieren und an Ihre eigenen Ziele anzupassen.

Web-App 1: Erhalten Sie jeden Austausch in Echtzeit

Natürlich können Sie jede Kryptowährungs-Website oder -App öffnen und diese Nummer von dort abrufen, aber nehmen Sie an, Sie möchten sie immer zur Hand haben und automatisch aktualisieren, oder Sie möchten sie möglicherweise automatisch in ein von Ihnen entwickeltes Berechnungssystem einspeisen.

Der einfache Zugriff auf diesen Link über die API von CryptoCompare gibt den Wechselkurs von Bitcoin (BTC) in USD direkt in dem Moment zurück, in dem Sie den Anruf tätigen:

https://min-api.cryptocompare.com/data/price?fsym=BTC&tsyms=USD

Ebenso gibt Ihnen dieses andere Beispiel den Wechselkurs von Ethereum (ETH) in EUR zum Zeitpunkt des Anrufs:

https://min-api.cryptocompare.com/data/price?fsym=ETH&tsyms=EUR

Einfach, nicht wahr? Darauf aufbauend gibt der folgende Code alle 10 Sekunden die von Ihnen gewünschte Umrechnung (in diesem Beispiel BTC in USD) auf einer kleinen Webseite zurück, die Sie privat machen können, um Ihre Lieblingskurse auf Ihrer eigenen Website zu verfolgen:

Sie können diesen Code kopieren und in eine .html-Datei einfügen und ihn dann mit Ihrem Browser laden, um zu sehen, wie er ausgeführt wird. Oder wenn Sie sich faul fühlen, öffnen Sie einfach dieses Demo-Beispiel auf meiner Website:

https://lucianoabriata.altervista.org/tests/cryptogames/getBTC-realtime.html

Das lässt sich problemlos zu einer Web-App weiterentwickeln, die ständig alle Wechselkurse verfolgt, sogar in einem Diagramm zur Visualisierung unterwegs oder in einer Variablen zum Download abspeichert.

Web-App 2: Verlaufsdaten abrufen

Aber was ist, wenn Sie Daten abrufen möchten, bevor die Webseite gestartet wird? Nun, Sie könnten auf spezialisierte Websites gehen und diese Daten herunterladen; Ich habe jedoch festgestellt, dass benutzerfreundliche Websites nur Teildaten liefern. Zum Beispiel beginnen BTC-Daten bei Yahoo Finances am 17. September 2014 und ihre Aufzeichnungen sind monatlich, wöchentlich oder täglich, aber nicht stündlich oder pro Minute. Außerdem, wenn Sie ein System entwickeln, das automatisch aktualisiert werden muss, ist ein manueller Datendownload nicht in der Diskussion… Sie benötigen einen programmatischen Zugriff.

Glücklicherweise bietet die API von CryptoCompare Möglichkeiten, historische Daten in Minuten, Stunden oder Tagen abzurufen. Nicht nur Wechselkurse, sondern auch andere Metriken wie das Wechselkursvolumen. Um mehr über die zu erfahren API siehe Dokumentation und lesen Sie das Folgende.

Ein API-Aufruf wie in diesem Beispiel liefert Ihnen Daten für die letzten 20 Stunden, Stunde für Stunde:

https://min-api.cryptocompare.com/data/v2/histohour?fsym=ETH&tsym=USD&limit=20&toTs=-1&api_key=YOURKEYHERE

Die Ausgabe kann im JSON-Format geparst werden. Es sieht aus wie das:

Beachten Sie in der URL für den API-Aufruf (den wir als nächstes in einer fetch()-Javascript-Funktion verwenden werden):

  1. toTs=-1 bedeutet, dass Sie Daten bis zum Zeitpunkt der Ausführung des Anrufs benötigen.
  2. begrenzen ist die gewünschte Zeilenanzahl.
  3. Sie müssen einen API-Schlüssel bereitstellen.

Mit dem kostenlosen API-Schlüssel (erhalten Sie ihn beim Dokumentationsseite; und ja, Sie können Schlüssel mit erweiterten Funktionen erwerben) Sie sind in der Gesamtzahl der Anrufe, die Sie tätigen können, begrenzt und bei jedem Anruf erhalten Sie nur bis zu 2000 Einträge. Wenn Sie beispielsweise nach den stündlichen Wechselkursen für BTC in USD fragen, erhalten Sie maximal 2000 Minuten von der angegebenen Zeit zurück, was etwa 33 Stunden bedeutet, dh etwas mehr als ein Tag. Oder wenn Sie stündliche Daten anfordern, erhalten Sie höchstens Daten für 83.33 aufeinanderfolgende Tage, also knapp 3 Monate. Dies ist jedoch nicht wirklich ein großes Problem, da Sie die API zeitlich so oft wiederholen können, wie Sie möchten, um die Zeitlücke zu schließen, an der Sie interessiert sind. Zum Beispiel, um tägliche BTC-Daten bis zu ihren Ursprüngen zurückzubekommen, die Sie benötigen etwas mehr als 4000 Punkte (Tage) ab August 2021, als diese Geschichte geschrieben wurde. Dies bedeutet, dass Sie nur 3 aufeinanderfolgende Anrufe benötigen. Und wenn Sie stündliche Daten für den gleichen Zeitraum wünschen, sind Sie bei rund 98400 Punkten, die durch 50 aufeinanderfolgende Anrufe abgedeckt werden.

Lassen Sie mich Ihnen diese Web-App zeigen, mit der Sie tägliche historische Daten für jeden Wechselkurs zu USD abfragen können:

Der Code sieht vielleicht etwas kompliziert aus, könnte aber viel einfacher sein. Die Sache hier ist, dass ich eine ganze Schnittstelle erstellt habe, damit der Benutzer auswählen kann, in welchem ​​Zeitbereich er die Daten abrufen möchte, und dann die Ergebnisse von nachfolgenden Aufrufen in einem Textfeld zum einfachen Kopieren verkettet:

Beachten Sie, dass Sie die API zweimal aufrufen müssen: einmal innerhalb der Funktion, die eine Liste der Dateneinträge bis zum Zeitpunkt der Ausführung aufruft (getBtcData, ausgeführt, wenn der Benutzer auf "Neueste Daten abrufen" klickt und auch automatisch beim Laden) und ein weiteres für die Funktion, die Daten vor einem bestimmten Zeitpunkt zurückgibt (getBtcDataPrevious). Beachten Sie auch, dass die Funktionen automatisch die Von- und Bis-Zeiten aktualisieren, die im rohen seriellen Format angezeigt und durch die Funktion serialDateToNiceDate auch in eine menschenlesbare Form umgewandelt werden.

Nach dem Laden der Seite oder dem Klicken auf „Neueste Daten abrufen“ wird das Textfeld rechts mit den letzten 2000 stündlichen Einträgen gefüllt und die Von- und Bis-Zeiten werden aktualisiert. Anschließend können Sie über „Vorperiode holen“ 2000 Zeilenblöcke mit Daten aus den Vorperioden anfordern. Die eingehenden Zeilen werden dem Textfeld hinzugefügt, wobei die historische Reihenfolge beibehalten wird.

Blick auf einige historische Daten

Wie ich in der Einleitung sagte, war ich sehr begierig darauf, Daten über die zeitliche Entwicklung der BTC:USD-Börsen seit der Schaffung von Bitcoin zu erhalten. Mit einer kleinen Änderung an der oben gezeigten Web-App (einfach „histohour“ durch „histoday“ ändern), erhalten Sie eine App, die tägliche Aufzeichnungen zurückgibt. Dann erhalten Sie mit drei Klicks auf „Vorherige Periode abrufen“ die gesamten täglichen Daten für Bitcoin, beginnend im Juli 2010 bis jetzt.

Lassen Sie uns ein paar Diagramme dieser Daten erstellen. Zuerst einfach der Wechselkurs im Laufe der Zeit, ein Diagramm, das Sie in den meisten Apps, Websites und Nachrichten sehen:

Das Diagramm zeigt fünf wichtige Betriebszeiten: eine gegen Ende 2013, eine stärkere gegen Ende 2017 – Anfang 2018, gefolgt von einer weiteren im Jahr 2019, und dann eine stärkere während der ersten Hälfte des Jahres 2021, gefolgt von einem erneuten schnellen Anstieg, der gerade jetzt stattfindet.

Es ist interessant, wie die in diesem Diagramm beobachteten Maxima ungefähr mit dem von Google Trends gemessenen Interesse im Zeitverlauf übereinstimmen:

Ein weiteres Diagramm unserer abgerufenen BTC:USD-Börsendaten, das interessanter ist als das oben beschriebene, ist dieses, in dem der Preis in logarithmischer Form (hier loggen Sie sich in Basis 10 einloggen) behandelt wird:

Diese Log-Transformation erkennt die Aufwärtsphasen deutlicher. Überprüfen Sie, ob die relativen Peakhöhen von der Basis zur Spitze ziemlich unterschiedlich sind und langsam abzuschwächen scheinen: Der erste Hauptpeak bringt eine Zunahme von ungefähr 1.5 Größenordnungen (etwa 30X) mit sich; die zweite, dritte und vierte sind etwa 1 Größenordnung (etwa 10X) und die letzte nur etwa 0.5 Größenordnungen (etwa 3.2X). Obwohl die historischen Maxima sehr hoch werden, sinken die Chancen auf riesige Gewinne für Leute, die später investieren, allmählich. Obwohl es dann zu spät ist, um mit Bitcoin reich zu werden, scheint der Gesamttrend des BTC:USD-Wechselkurses darauf hinzudeuten, dass er noch einige Zeit wachsen könnte (ohne dass Sie hier kaufen sollen, sondern nur naiv aus der Handlung extrapoliert):

Diese Log-Plots enthalten viel mehr Daten, die andere in den folgenden Blog-Artikeln analysiert haben. Da ich kein Experte bin, kann ich sie nicht beurteilen, aber sie sind auf jeden Fall sehr interessant:

Fazit und ausgewählte weiterführende Literatur

Ich hoffe, Sie werden Spaß daran haben, diese und abgeleitete Skripte zu verwenden, um Kryptodaten zu erhalten und mit ihnen zu spielen. Dieses ganze Gebiet ist sehr interessant, und bei meinen Recherchen über Kryptowährungen in den letzten zwei Jahren habe ich Tonnen von Papieren, Geschichten und Beiträgen gelesen, von denen ich diese für Sie destilliert habe, um von hier aus weiterzumachen, hauptsächlich aus Medium und die dazugehörigen Veröffentlichungen:

Quelle: https://towardsdatascience.com/obtaining-historical-and-real-time-crypto-data-with-very-simple-web-programming-7b481f153630?source=rss——-8—————–cryptocurrency

Zeitstempel:

Mehr von Medium