Hallo! Ich bin leider noch ganz am Anfang was das programmieren betrifft. Ich hätte gerne ein Programm, dass mich anruft, wenn eine Aktien einen bestimmten Kurs erreicht. Jemand hat mir dieses Skript empfohlen:
https://www.twilio.com/docs/voice/make-calls
Ich müsste dann halt noch irgendwie die Kurse bekommen, am besten direkt von der Börse. Das läuft ja heute auch alles übers Netz. Könnt ihr mir in etwa sagen, wie ihr das anstellen würdet? Ich frage nicht, um es dann selbst zu versuchen, sondern um eine grobe Vorstellung zu bekommen was ich brauchen würde, da ein Verwandter von mir mal einen Arbeitskollegen fragen möchte, der Programmierer ist. Also geht es nur darum den ein bisschen aufzuklären, was benötigt wäre. Könnt ihr mir in etwa sagen, wie das funktionieren würde?
Aktienkurse abfragen und per Anruf benachrichtigt werden
Wenn man das mal googelt, findet sich zB https://diyinvestor.de/daten-tools/
Was dein avisierter Programmierer dann daraus macht, kann hier natuerlich keiner wissen. Und ggf. musst du je nach Aktualitaet der Daten auch bezahlen, was dann wiederum bestimmt, wie man genau an die Daten kommt.
Was dein avisierter Programmierer dann daraus macht, kann hier natuerlich keiner wissen. Und ggf. musst du je nach Aktualitaet der Daten auch bezahlen, was dann wiederum bestimmt, wie man genau an die Daten kommt.
und Nachdem du das gedacht hast, hast du mal auf die Seiten der Börse geschaut oder sie angeschrieben? Ob und was die anbieten erzählen die dir doch gerne. Du musst schließlich bezahlen, wenn du das benuzten willst. Wir hier können auch nur googeln.
Schau mal hier:
https://www.quandl.com
und speziell z. B. hier:
https://www.quandl.com/data/SSE-Boerse-Stuttgart
Früher hättest Du (bzw. der programmierende Arbeitskollege Deines Verwandten) mittels pandas_datareader auf Google Finance bzw. Yahoo! Finance zugreifen können. Wenn ich das richtig mitbekommen habe, dann sind diese Quellen aber versiegt oder zumindest sehr unzuverlässig/buggy geworden. Du müsstest mal schauen, was pandas_datareader noch anbietet:
https://pandas-datareader.readthedocs.io/en/latest/
Also für mich ließt sich dein erster Beitrag nicht sehr erfolgsversprechend. Falls Du Dich selbst mit Python befassen und es selbst programmieren möchtest, dann findest Du bei mir im Fußbereich das deutschsprachige Python Tutorial, das von Leuten hier aus dem Forum bereitgestellt wird. Mich würde es wundern, wenn Deine Benachrichtigung-bei-Preis-Lösung Dein Projekt abschließt.
https://www.quandl.com
und speziell z. B. hier:
https://www.quandl.com/data/SSE-Boerse-Stuttgart
Früher hättest Du (bzw. der programmierende Arbeitskollege Deines Verwandten) mittels pandas_datareader auf Google Finance bzw. Yahoo! Finance zugreifen können. Wenn ich das richtig mitbekommen habe, dann sind diese Quellen aber versiegt oder zumindest sehr unzuverlässig/buggy geworden. Du müsstest mal schauen, was pandas_datareader noch anbietet:
https://pandas-datareader.readthedocs.io/en/latest/
Also für mich ließt sich dein erster Beitrag nicht sehr erfolgsversprechend. Falls Du Dich selbst mit Python befassen und es selbst programmieren möchtest, dann findest Du bei mir im Fußbereich das deutschsprachige Python Tutorial, das von Leuten hier aus dem Forum bereitgestellt wird. Mich würde es wundern, wenn Deine Benachrichtigung-bei-Preis-Lösung Dein Projekt abschließt.
Hallo! Danke für euer Feedback!
@deets: Doch ich habe den Support bereits kontaktiert, das dauert bei denen nur leider immer ewig!
@pixewakb: danke, sehr interessant, werde ich mir näher anschauen. Ich habe wie gesagt (erstmal) nicht vor, es selbst zu probieren, das hätte wahrscheinlich wenig Erfolgschancen
@deets: Doch ich habe den Support bereits kontaktiert, das dauert bei denen nur leider immer ewig!
@pixewakb: danke, sehr interessant, werde ich mir näher anschauen. Ich habe wie gesagt (erstmal) nicht vor, es selbst zu probieren, das hätte wahrscheinlich wenig Erfolgschancen
Hallo noch mal! Angenommen man wollte den BTC Preis von coinmarketcap (allgemeine Kurs-Seite für Kryptowährungen die kostenlos zugänglich ist):
https://api.coinmarketcap.com/v1/ticker/bitcoin/
Könnte man das einfach mit einer Python Funktion verbinden, die den aktuellen BTC Preis quasi in einer while Schleife printed und bei verschiedenen Bedingungen ein Alarm auslöst?
https://api.coinmarketcap.com/v1/ticker/bitcoin/
Könnte man das einfach mit einer Python Funktion verbinden, die den aktuellen BTC Preis quasi in einer while Schleife printed und bei verschiedenen Bedingungen ein Alarm auslöst?
Ja, ich wär schon glücklich, wenn ich eine Python Funktion erstellen könnte, die mir den aktuellen BTC Kurs aus einer Seite ausliest. Ich habe dazu auch ein älteres Skript gefunden:
https://markets.businessinsider.com/currencies/btc-usd
Dort wird der Kurs sekündlich geupdatet. Wie würde man denn nun das Skript anpassen oder geht das überhaupt? Ich hab leider immer noch sehr wenig Ahnung von Programmieren, bin noch am Anfang des Python Tutorials. Kann mir jemand erklären, wie man diesen Ticker anzapft? Schaut man in Chrome im Quellcode der Seite und bezieht daraus die entsprechende Adresse?
Allerdings gibt es die website nicht mehr. Angenommen man würde die hier als Quelle nehmen:import requests
url = 'http://data.mtgox.com/api/2/BTCUSD/money/ticker'
r = requests.get(url, headers={'Accept': 'application/json'})
print r.json()['data']['avg']['display_short']
https://markets.businessinsider.com/currencies/btc-usd
Dort wird der Kurs sekündlich geupdatet. Wie würde man denn nun das Skript anpassen oder geht das überhaupt? Ich hab leider immer noch sehr wenig Ahnung von Programmieren, bin noch am Anfang des Python Tutorials. Kann mir jemand erklären, wie man diesen Ticker anzapft? Schaut man in Chrome im Quellcode der Seite und bezieht daraus die entsprechende Adresse?
Du hast doch erklaert, du willst einen Programmierer beauftragen? Willst du das jetzt doch selbst machen?
Wie dem auch sei: warum benutzt du denn jetzt schon wieder eine neue Webseite? mtgox ist doch schon lange tot, oder nicht? Du hast doch oben schon eine Seite angegeben, die eine JSON-Ausgabe eines BTC Kurses ausliefert. Warum benutzt du die nicht? Und fuer Python web-scraping bzw. REST-API Abfrage finden sich millionen Quellen. Auch hier wird das regelmaessig diskutiert, das ist ja bei trading nicht anders als anderswo.
Wie dem auch sei: warum benutzt du denn jetzt schon wieder eine neue Webseite? mtgox ist doch schon lange tot, oder nicht? Du hast doch oben schon eine Seite angegeben, die eine JSON-Ausgabe eines BTC Kurses ausliefert. Warum benutzt du die nicht? Und fuer Python web-scraping bzw. REST-API Abfrage finden sich millionen Quellen. Auch hier wird das regelmaessig diskutiert, das ist ja bei trading nicht anders als anderswo.
Mein Verwandter wollte mal seinen Kollegen fragen, das ist alles sehr unverbindlich und ich will da auch nichts in Auftrag geben. Selber machen würde ich es gerne, traue es mir aber schlicht nicht zu, da ich mit meinen Programmier Kenntnissen noch ganz am Anfang stehe.
Es interessiert mich aber trotzdem, wie in etwa es geht und es scheint wohl keine große Sache zu sein, den Ticker von soner Seite auszulesen, daher würde es mich interessieren, wie man das macht. Ja MTGOX ist tot, deshalb funtkioniert das Skript nicht mehr. Ist es kompliziert den Ticker von:
https://markets.businessinsider.com/currencies/btc-usd
anzuzapfen und auslesen zu lassen? Wie würde man denn da vorgehen?
Es interessiert mich aber trotzdem, wie in etwa es geht und es scheint wohl keine große Sache zu sein, den Ticker von soner Seite auszulesen, daher würde es mich interessieren, wie man das macht. Ja MTGOX ist tot, deshalb funtkioniert das Skript nicht mehr. Ist es kompliziert den Ticker von:
https://markets.businessinsider.com/currencies/btc-usd
anzuzapfen und auslesen zu lassen? Wie würde man denn da vorgehen?
- __blackjack__
- User
- Beiträge: 13077
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@MuMPiTz: Man würde schauen ob die Daten direkt in der Seite mitgeliefert werden. Falls ja kann man die Seite herunterladen und die Daten da rauskratzen, falls nein, müsste man schauen wie die Daten dann auf die angezeigte Seite kommen. Zum Herunterladen bietet sich `requests` an, zum verarbeiten des HTML zum Beispiel BeautifulSoup. Dazu muss man sich mit HTML und CSS beschäftigen.
Ich würde aber die Frage von __deets__ gerne noch mal wiederholen: Warum aus einer Webseite kratzen wenn Du schon eine API hast die das als JSON liefert?
Ich würde aber die Frage von __deets__ gerne noch mal wiederholen: Warum aus einer Webseite kratzen wenn Du schon eine API hast die das als JSON liefert?
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Das ist eine Lösung zu:
Du müsstest Dich m. E. mit selenium befassen und es damit probieren, wenn Du tatsächlich aktuelle Daten brauchst. Ohne das Durcharbeiten eines Tutorials wird es nicht gehen; vielleicht findest Du eine andere Quelle, wo Du Deine Daten ohne viel JavaScript ziehen kannst. Es würde mich wundern, wenn es dazu noch keine fertigen und erprobten Python-Lösungen gäbe.
Orientiere Dich an dem Hinweis von __blackjack__ , das ist weiterführend.
Wenn Du mal diesen Quellcode versuchst, stellst Du fest, dass Du die Aktualisierung so nicht bekommen kannst:Falls ja kann man die Seite herunterladen und die Daten da rauskratzen
Code: Alles auswählen
import requests
from bs4 import BeautifulSoup
web = requests.get("https://markets.businessinsider.com/currencies/btc-usd").content
soup = BeautifulSoup(web, "html5lib")
# Abruf der Daten
web = requests.get("https://markets.businessinsider.com/currencies/btc-usd").content
soup = BeautifulSoup(web, "html5lib")
# Ausgabe der Daten
print(soup.find_all("span", attrs={"class": "push-data"})[-1].text)
print(soup.find("span", attrs={"class": "push-data"}).text)
Orientiere Dich an dem Hinweis von __blackjack__ , das ist weiterführend.
Zuletzt geändert von pixewakb am Donnerstag 16. August 2018, 14:46, insgesamt 1-mal geändert.
@__blackjack__ : Falls Du mal anhand der Seite zeigen könntest, wie Du die Datenquelle im JS-Wust findest und ggf. direkt anfragen würdest, würde mich das interessieren. Am Thema hier bin ich selbst nicht interessiert. Eine Lösung zu einer vergleichbaren Problemstellung wäre auch interessant. (Momentan ist das bei mir nicht aktuell, eher ein grundsätzliches Interesse, weil ich mit vergleichbaren Problemen auch immer mal wieder zu tun habe...)
Im Prinzip weiß ich, dass aller JS-Code auf der Seite stehen muss, allerdings ist es mir noch nie wirklich gelungen, eine spezifische Funktion aufzufinden...
Im Prinzip weiß ich, dass aller JS-Code auf der Seite stehen muss, allerdings ist es mir noch nie wirklich gelungen, eine spezifische Funktion aufzufinden...
- __blackjack__
- User
- Beiträge: 13077
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
Ich habe mir da mal den Netzwerk-Reiter im Browser angeschaut und es wird ein Websocket zu https://mdsngpush.finanzen.net/socket.i ... 338bec9ec4 aufgemacht. Ich vermute darüber kommen die Daten rein und werden dann per JavaScript verarbeitet/aktualisiert.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Danke allerseits! Tut mir leid, dass vieles von dem was ich sage, nicht besonders sinnvoll ist, ich wollte eigentlich erst das Tutorial durcharbeiten, war aber zeitlich nun gezwungen, mich selbst mit der Sache ein wenig zu beschäftigen, einfach damit der Kollege meines Onkels weiß, worum es geht. Naja, wie dem auch sei...
@pixewakb:
Danke auch dir, ich schätze da bin ich noch weit von entfernt, also wenn du es nicht hin bekommst, brauch ich es gar nicht erst versuchen, aber vielleicht werde ich mich zu gegebener Zeit damit beschäftigen
Ich hab nur einfach null Ahnung von der Materie, das ist alles. Offenbar ist es mit JSON (ich weiß nicht mal was das ist ) sehr viel leichter!Ich würde aber die Frage von __deets__ gerne noch mal wiederholen: Warum aus einer Webseite kratzen wenn Du schon eine API hast die das als JSON liefert?
Der code funktioniert immerhin schon mal, allerdings updated das nur 1x pro Minute, da brauch ich wohl etwas anderes, aber immerhin schon mal ein Anfangimport requests
url = 'https://api.coindesk.com/v1/bpi/currentprice.json'
r = requests.get(url, headers={'Accept': 'application/json'})
print(r.json()['bpi']['USD']['rate'])
@pixewakb:
Danke auch dir, ich schätze da bin ich noch weit von entfernt, also wenn du es nicht hin bekommst, brauch ich es gar nicht erst versuchen, aber vielleicht werde ich mich zu gegebener Zeit damit beschäftigen
Wenn du Kurse schneller als einmal pro Minute benötigst, bist du im Lande der kommerziellen Möglichkeiten. Da wirst du Geld für in die Hand nehmen müssen. Zumindest für normale Kurse. Bei Crypto funktioniert ja sogar noch arbitrage zwischen verschiedenen Börsen, da spielt Zeit doch keine Rolle.
ich hab noch ne API gefunden die den Kurs als JSON liefert und alle 5 Sekunden updated, also kostenlos. Ich suche gerade nach Möglichkeiten, per SMS oder Anruf kontaktiert zu werden, wobei SMS wohl billiger ist und das würde es auch tun. Twilio wird oft genannt, müsste da aber erst meine Identität verifizieren lassen und so Zeug. Kennt jemand ne gute Alternative?__deets__ hat geschrieben: ↑Donnerstag 16. August 2018, 21:30 Wenn du Kurse schneller als einmal pro Minute benötigst, bist du im Lande der kommerziellen Möglichkeiten. Da wirst du Geld für in die Hand nehmen müssen. Zumindest für normale Kurse. Bei Crypto funktioniert ja sogar noch arbitrage zwischen verschiedenen Börsen, da spielt Zeit doch keine Rolle.
E-Mail? Mit der entsprechenden Bibliothek kannst du das kostenlos realisieren und mit einer entsprechenden App auf dem Handy siehst du die Nachricht auch auf dem Handy? Eine Benachrichtigung per SMS oder Anruf erscheint mir da um einiges komplizierter. Für die E-Mail-Lösung findest du zu hauf online Anleitungen...
BTW: @BlackJack: Ich konnte es noch nicht nachvollziehen, aber für meine Seiten werde ich das mit der Entwickler-Konsole mal testen. Ich habe einmal durch Zufall bei einer Seite bei deaktiviertem JS die Quellseite gefunden, die Daten liefert. In den meisten anderen Fällen scrape ich einfache HTML-Tabellen, die Rohdaten bereitstellen. Mit Deinem Beitrag weiß ich nun, wo ich da mal gucken kann.
BTW: @BlackJack: Ich konnte es noch nicht nachvollziehen, aber für meine Seiten werde ich das mit der Entwickler-Konsole mal testen. Ich habe einmal durch Zufall bei einer Seite bei deaktiviertem JS die Quellseite gefunden, die Daten liefert. In den meisten anderen Fällen scrape ich einfache HTML-Tabellen, die Rohdaten bereitstellen. Mit Deinem Beitrag weiß ich nun, wo ich da mal gucken kann.