Seite 1 von 1

Historische Börsendaten von Website laden

Verfasst: Samstag 25. September 2021, 16:19
von earloop
Hallo,

ich würde gerne automatisch historische Kursdaten aus dem Internet laden.

Dazu gibt es z.B. investpy, das die Daten von www.investing.com lädt, funktioniert nur leider nicht (mit allen Fonds):

Code: Alles auswählen

import investpy
df = investpy.funds.get_fund_historical_data('LU0061928585', 'luxembourg', '01/01/2020', '01/01/2021', as_json = False, order = 'ascending', interval = 'Daily')
führt zu:

Code: Alles auswählen

RuntimeError: ERR#0019: fund lu0061928585 not found, check if it is correct.

Eine andere Option ist yfinance, auch das funktioniert nicht:

Code: Alles auswählen

import yfinance as yf

msft = yf.Ticker("OE7A.F")
hist = msft.history(period="1y")
hist hat nur einen Kurs, statt alle Kurse eines Jahres mit Tagesauflösung.


Noch eine andere Möglichkeit ist das Webscraping von www.boerse.de mit Pandas:

Code: Alles auswählen

df = pd.read_html('https://www.boerse.de/historische-kurse/OekoWorld-OekoVision-Classic-C/LU0061928585_seite,1,anzahl,20')[3]
Das lädt die Kurse der letzten 21 Tage. Damit könnte ich eine Schleife bauen, die den Seitenzähler immer um 1 erhöht und so beliebig weit in die Vergangenheit alle Kursdaten abruft.
Leider funktioniert auch das nicht, ich vermute weil die Seite sich durch ein captcha vor zu vielen Seitenaufrufen schützt.

Hat noch jemand eine andere Idee?

Re: Historische Börsendaten von Website laden

Verfasst: Sonntag 26. September 2021, 11:45
von rogerb
@earloop,

investpy erwartet den tatsächlichen Namen und nicht die ISIN:

Code: Alles auswählen

df = investpy.funds.get_fund_historical_data('ökoworld ökovision Classic C', 'luxembourg', '01/01/2020', '01/01/2021', as_json = False, order = 'ascending', interval = 'Daily')
Die Dokumentation ist da vielleicht nicht ideal:
https://investpy.readthedocs.io/_api/fu ... rical_data

Im Source Code findet man das Problem dann irgend wann:
https://github.com/alvarobartt/investpy ... y/funds.py

Da werden noch zusätzliche Informationen zu jedem Symbol aus einer csv Tabelle geladen. Die müssen passen:
https://github.com/alvarobartt/investpy ... /funds.csv

Re: Historische Börsendaten von Website laden

Verfasst: Montag 27. September 2021, 20:11
von earloop
Danke, jetzt bin ich was das angeht schonmal schlauer. In dieser Liste kann ich dann ja nach der ISIN suchen:
https://raw.githubusercontent.com/alvar ... /funds.csv
Leider ist die Liste unvollständig, diesen gibt es z.B. nicht: AT0000705678, obwohl es den auf investing.com schon gibt: https://www.investing.com/funds/at0000705678

Inzwischen bin ich auf https://marketstack.com/ und https://www.alphavantage.co/, die bieten APIs zur Datenabfrage an. Aber auch da gibt es leider nicht alle Fonds, die ich brauche.

Scheint wohl kein einfaches Unterfangen zu sein...