Oli Garch Posted June 19, 2018 · Edited June 19, 2018 by Oli Garch @BondFan Vielen Dank für deine Erweiterungen, werden hier sicherlich dankbar aufgenommen. Analog zu den EUWAX-Kursen müsste aber auch Frankfurt Zertifikate möglich sein: If Boerse = "FRZ" Then TextPos = InStr(KursString, "Frankfurt Zertifikate</a>") (auf die Schnelle nur einmal mit einem Wert getestet) Share this post Link to post
BondFan Posted June 19, 2018 Funktioniert wunderbar. Ich war davon ausgegangen, dass in der Abfrage kein Leerschritt enthalten sein darf, dabei war die Lösung ja so einfach. Dann könnte man auch die Rohstoffabfrage weiter präzisieren, da es dort eine ganze Hand voll Indikationen geben kann. Share this post Link to post
Oli Garch Posted June 19, 2018 @Bondfan Deine Ergebnisse mit den Rohstoffabfragen kannst du ja mal hier dokumentieren. Da bin ich eher ahnungslos. Share this post Link to post
BondFan Posted June 19, 2018 Zu früh gefreut in Sachen Rohstoffe. Ich bekomme mit meiner zuvor geposteten Grundabfrage bei Öl und Gold den Kurs vom ersten Handelsplatz "Rohstoffe Indikation". Für die anderen Handelsplätze bekomme ich keine Abfrage erzeugt. https://www.ariva.de/oelpreis-brent_crude-kurs/kurs https://www.ariva.de/goldpreis-gold-kurs/kurs Share this post Link to post
Oli Garch Posted June 20, 2018 @BondFan nach einer Nacht intensiver Recherche ist für den Ariva-Börsenplatz DB Rohstoffe ("DBR") folgende Ergänzung für das Makro herausgekommen: If Boerse = "DBR" Then KursString = Mid(KursString, InStr(KursString, "boerse_id=33")) TextPos = InStr(KursString, "DB Indikation Rohstoffe") End If Wie bedeutend dieser Wert als Kurslieferant ist, kann ich allerdings nicht einschätzen (Wer ist schon Deutsche Bank?). Ich selbst beziehe meine Rohstoffe überwiegend bei Aldi (Börsenplatz: "ALD"). Da werden die Kurse einmal wöchentlich durch den Prospekteverteiler geliefert. Übrigens: Gold lässt sich bei Ariva aber auch über Forex auslesen (Börse "FRX") Share this post Link to post
BondFan Posted June 20, 2018 Oha, die Nacht hättest Du Dir dafür aber nicht extra um die Ohren schlagen müssen. Die Abfrage funktioniert auf jeden Fall. Über den Wert oder die Genauigkeit der einzelnen Indikationen kann man sich sicher streiten. Für eine automatische Kursabfrage nehmen ich eine gewisse Ungenauigkeit gerne in Kauf. Und für meine Zwecke reicht das aus. Der Handelsplatz ALD hat hier unverständlicherweise permanent geschlossen, aber es gibt ja noch die alternativen EDK und LDL Share this post Link to post
Gekko1964 Posted June 26, 2018 Habe auf der Seite von DY Investor eine Anleitung gefunden, wie man Aktienkurse nach Excel importiert: https://diyinvestor.de/web-scraping-mit-vba-aktuelle-aktienkurse-nach-excel-importieren/ Share this post Link to post
Hol Posted June 30, 2018 On 15.06.2018 at 9:27 PM, Oli Garch said: Kursabruf-Makro mit alternativer URL von Yahoo Mit der nunmehr verwendeten URL ist es wie es früher bei Yahoo mal mit der Finance-API funktionierte möglich, alle Wertpapiere mit allen gewünschten Daten mit einem Abruf herunterzuladen. Da spielen Laufzeitprobleme keine Rolle mehr. Die Wertpapiersymbole kann man sich bei Yahoo zusammensuchen. Beim Aufbau der Tabelle sind allerdings einige wenige Regeln zu befolgen, die dem Makro als Kommentar vorangestellt sind. Die Beispieltabelle funktioniert mit verschiedenen Wertpapierarten, auch Währungen und allen erlaubten Börsenplätzen. @Hol In der Beispieltabelle sind auch die Kurse für Kenia-Schilling (EURKES=x) und Ruanda Franc (EURRWF=x) enthalten und funktionieren. ISIN oder WKN gibt es wohl dafür nicht. Wen es interessiert: hier mal die URL zum Abruf eines Wertpapiers:https://query1.finance.yahoo.com/v7/finance/quote?symbols=SAP.DE Tolle Seite! Im Anhang Makrotext und Beispieldatei yKurs1806.xlsm 18 32.4 kB yKurs1806.txt 15 5.11 kB Funktioniert super bei mir, danke! Mir ist aufgefallen dass Abruf von Ariva mit Börsenplatz "FRX" am Wochenende nicht möglich ist, da gibt es bei mir immer nur 0 als Wert. Share this post Link to post
Oli Garch Posted June 30, 2018 · Edited July 2, 2018 by Oli Garch @ Hol Ich war sowieso schon dabei, das Makro mit den letzten Änderungen zu ergänzen (Hinzufügen von FRZ (Frankfurt Zertifikate), DBR (Deutsche Bank Rohstoffe) und alles noch etwas effektiver zu programmieren. Ich hoffe es klappt jetzt auch wieder mit Forex und hoffentlich auch noch nach dem Wochenende. ArivaQuotes.V2.2.xlsm ArivaQuotes.V2.2.txt Share this post Link to post
Oli Garch Posted July 2, 2018 Sorry, leider zu früh gefreut. Das Makro aus #434 hat nur am Wochenende funktioniert. Die Kursseite von Ariva sieht zwar auf den ersten Blick genau so aus wie am Wochenende, aber die Struktur des Quellcodes hat sich geändert. Das Makro ist jetzt so geändert, dass es wieder funktioniert. Mögliche Änderungen, die am Wochenende auftreten können, sollten abgefangen werden. Ob es so dauerhaft funktioniert, werden wir erst in einer Woche feststellen können. Die angehängten Dateien aus #434 sind ausgetauscht (02.07.2018, 11:30). Share this post Link to post
Oli Garch Posted July 2, 2018 ...und geich wieder einen Fehler entdeckt: Im Makro für Kursaktualisierungen über Ariva wurden Währungskurse nur zweistellig ausgegeben. Fehlerbehaftetes Makro im Beitrag #434 durch neue Version ausgetauscht. Share this post Link to post
Oli Garch Posted July 14, 2018 Kursimport von Yahoo, mal ohne VBA-Makro (ab Excel 2013) Möglich ist das mit der Excel-Funktion "Webdienst" (erst ab Excel-Version 2013 verfügbar!). Das Ergebnis dieser Funktion ist ein String, wie ihn auch der VBA-Befehl "GET" liefert. Dieser String lässt sich in Kombination mit weiteren Excelfunktionen so weit zerlegen, dass am Ende z.B. nur noch der Aktienkurs in der Zelle steht. Allerdings hat "Webdienst" eine erhebliche Einschränkung. Der String darf nicht länger als 32767 Zeichen sein. Damit fallen schon einmal fast alle sonst üblichen Kursseiten weg. Beim Experimentieren mit dem Link zum Abholen von Yahoo-Daten, wie ich es im Beitrag #423 beschrieben habe (https://query1.finance.yahoo.com/v7/finance/quote?symbols=), ist mir aufgefallen, dass die Bedingung für die Stringlänge für die Funktion "Webdienst" mit dieser URL erfüllt wird. Wer es probieren möchte (liefert den Kurs eines Wertpapiers, dessen Yahoo-Symbol in Zelle A1 steht): =WERT(WECHSELN(TEIL(WEBDIENST("https://query1.finance.yahoo.com/v7/finance/quote?symbols="&$A1);SUCHEN("regularMarketPrice";WEBDIENST("https://query1.finance.yahoo.com/v7/finance/quote?symbols="&$A1))+20;SUCHEN(",";TEIL(WEBDIENST("https://query1.finance.yahoo.com/v7/finance/quote?symbols="&$A1);SUCHEN("regularMarketPrice";WEBDIENST("https://query1.finance.yahoo.com/v7/finance/quote?symbols="&$A1))+20;18))-1);".";",")) Steht das Yahoo-Symbol in dem obigen Beispiel in einer anderen Zelle als A1, muss dieser Bezug 4mal! geändert werden. In der Excel-Beispieltabelle ist aus Gründen der Übersicht die URL, die sich 4-mal im Funktionsaufruf wiederholt, in eine Zelle (E2) oberhalb der Tabelle ausgegliedert. Diese Zelle wurde als benannter Bereich "Adresse" festgelegt. Die Funktion enthält deshalb statt der langen URL nur noch den Namen des Bereiches, also "Adresse". Der Bereich lässt sich auch woanders ablegen (auch in einem anderen Tabellenblatt), wenn der Ort (Bereich) wieder als Adresse bezeichnet wird (funktioniert auch mit ausschneiden und einfügen). In der Beispieltabelle werden neben dem Kurs auch Vortageskurs, Kursänderung, Kursänderung %, Kursdatum/Uhrzeit und Umsatz (Stück) auf diese Art (mit angepassten Funktionen) abgerufen. Aktualisiert wird die Tabelle (praktisch ohne Wartezeit) mit Strg-Alt-F9 (GrAlt-F9) oder bequemer dann doch wieder mit Klickbutton und Makro (Application.CalculateFull). Viel Spaß beim probieren. YahooKurs.ohneMakro.V1.xlsx Share this post Link to post
Ramstein Posted July 14, 2018 vor 26 Minuten schrieb Oli Garch: Kursimport von Yahoo, mal ohne VBA-Makro (ab Excel 2013) Möglich ist das mit der Excel-Funktion "Webdienst" (erst ab Excel-Version 2013 verfügbar!). Interessant. Funktioniert auch in LibreOffice auf dem Mac. Share this post Link to post
Kapuzenpullimann Posted July 16, 2018 Am 14.7.2018 um 18:18 schrieb Oli Garch: Kursimport von Yahoo, mal ohne VBA-Makro (ab Excel 2013) Möglich ist das mit der Excel-Funktion "Webdienst" (erst ab Excel-Version 2013 verfügbar!). Vielen Dank für Deine Mühe, das funktioniert wunderbar bei mir! Hatte vorher zur Kursaktualisierung zig Webabfragen als eigene Tabs in Excel, da hat sich Excel bei der Abfrage immer aufgehängt... Diese Abfrage ist jetzt sehr effizient, da sie kaum Ressourcen braucht. Hoffen wir, dass Yahoo als Datenlieferant konstant bleibt. Share this post Link to post
Oli Garch Posted July 16, 2018 @Ramstein @Kapuzenpullimann Vielen Dank für die Rückmeldungen. Manchmal ist es doch durchaus auch mal angenehm zu wissen, dass es nicht nur funktioniert, sondern auch genutzt wird. Nach dem Hinweis auf LibreOffice habe ich die Funktion auch mit LO unter Windows positiv getestet. Share this post Link to post
Siddi Posted July 20, 2018 Ich habe mal kurz eine Excel zusammengebaut. Hier werden alle Aktien aus USA und Deutschland upgedatet. Sowie die wichtigsten Währungen der Welt. ( Ca 6500 Aktien) Einfach die Mappe in deine Exel kopieren und eine Verknüpfung über die Funktion Sverweis setzen. Die Daten werden von einer Webseite heruntergeladen ohne Makro. Updaten der Daten habe ich auf manuell gesetzt. Ein Update musst du über "Alle aktualisieren" durchführen. Die Datei findest du im Anhang: Aktuelle Kurse aus den Netz.xlsx Share this post Link to post
sheierhoff Posted July 20, 2018 · Edited July 20, 2018 by sheierhoff Am 30.11.2017 um 20:13 schrieb Oli Garch: Hinter dem DiBa Direkthandel stecken ja verschiedene Handelspartner, also nicht nur Tradegate. Ich habe mal die Funktionen um den Direkthandel erweitert und alles in die Textdatei "DiBa-Stocks-Bonds-Fonds.txt gepackt. Ich hoffe es funktioniert. Nachdem es mir nach einiger Knobelei gelungen ist, die richtige URL herauszufinden (Weiterleitungen sind ja auf Kursseiten sehr beliebt), habe ich es jetzt geschafft, eine Funktion für den Abruf über ARD-Börse zu realisieren. Sehr kompakt, da nur eine Fuktion für alle Wertpapiere, WKN oder ISIN ist egal. Weitere Börsenplätze sind XTF (Xetra-ETF) und TRG (Tradegate). Kurze Erläuterung auch in der Datei ARDQuotes.txt, in der die Funktion zum kopieren steht. Weiterhin angehängt die Datei ARDTest1.xlsm zum ausprobieren der Funktion und als Beispiel, wie man die Kursaktualisierung mit einem Steuerelement-Button lösen kann. ARDQuotes.txt 111 2 kB DiBa-Stocks-Bonds-Fonds.txt 176 9 kB ARDTest1.xlsm 107 27 kB Hallo, @Oli Garch: Danke für die DiBa-Funktionen! Ich habe die Funktion DiBaFondsInfo noch etwas erweitert, so dass man nun Kategorie, sowie Sparplan (Ja/ Nein) und Nulltarif (Ja/ Nein) abrufen kann. Dazu einfach =DiBafonds(ISIN, "kategorie"), etc. nutzen. Ggfs. hilft es ja dem ein oder anderen. Public Function DiBaFondsInfo(Isin As String, Text As String) As Variant Dim InfoString As String Dim TextPos As Double Dim SeitenNummer As Integer Dim XML On Error GoTo Fehler Set XML = CreateObject("MSXML2.ServerXMLHTTP") XML.Open "GET", "https://wertpapiere.ing-diba.de/DE/Showpage.aspx?pageID=30&" & "&Isin=" & Isin, False XML.send InfoString = XML.responsetext If Text = "name" Then TextPos = InStr(InfoString, "div class=""sh-title""") InfoString = Mid(InfoString, TextPos + 24, 100) TextPos = InStr(InfoString, "<") InfoString = Left(InfoString, TextPos - 3) DiBaFondsInfo = InfoString End If If Text = "kategorie" Then TextPos = InStr(InfoString, "Kategorie") InfoString = Mid(InfoString, TextPos) TextPos = InStr(InfoString, """>") InfoString = Mid(InfoString, TextPos + 2) TextPos = InStr(InfoString, "</a>") InfoString = Left(InfoString, TextPos - 1) DiBaFondsInfo = Replace(InfoString, " ", " ") End If If Text = "sparplan" Then TextPos = InStr(InfoString, "Sparplan möglich</td>") InfoString = Mid(InfoString, TextPos + 38, 100) TextPos = InStr(InfoString, "<") InfoString = Left(InfoString, TextPos - 1) DiBaFondsInfo = InfoString End If If Text = "nulltarif" Then If InStr(InfoString, "Nulltarif") = 0 Then DiBaFondsInfo = "Nein" Else DiBaFondsInfo = "Ja" End If End If Set XML = Nothing Exit Function Fehler: DiBaFondsInfo = "" Set XML = Nothing End Function Viele Grüße Share this post Link to post
Oli Garch Posted July 20, 2018 @sheierhoff Willkommen im Forum. Deine Ergänzung ermöglicht durchaus brauchbare Informationen für den Fondssparer, die sich ja auch schnell mal ändern können. Und DiBa-Makros sind ja hier für den Kursabruf mit am Beliebtesten (wenn ich die Downloadzahlen vergleiche). Von daher ist die Ergänzung sicher nicht umsonst. Außerdem freue ich mich, das jemand den Code auch verstanden hat, den ich da zusammengeschrieben habe, sonst hätte ja die Erweiterung wohl nicht geklappt. Grüße Share this post Link to post
Oli Garch Posted July 31, 2018 Kurse von Yahoo mit der Funktion Webdienst ohne Makro mit LibreOffice Bei intensiverer Beschäftigung mit dieser Funktion unter LibreOffice habe ich festgestellt, dass es ein Problem bei der Kursaktualisierung gibt. Grundsätzlich funktioniert die Aktualisierung mit der Tastenkombination STRG-SHIFT-F9 (unter Excel: STRG-ALT-F9). Allerdings nur einmal. Schließt man die Datei und öffnet sie, greift die Tastenkombination wieder. Ohne Schließen und Öffnen geht es etwas umständlicher über das Menü: BEARBEITEN-VERKNÜPFUNGEN ZU EXTERNEN DATEIEN...- alle Verknüpfungen markieren und auf Aktualisieren klicken. Aber wer will das schon so umständlich handhaben. Abhilfe schafft da ein kleine Makro. Den letztgenannten Dialog mit dem Makrorecorder vollständig aufzuzeichnen ist mir allerdings nicht gelungen. Durch einiges Herumprobieren fand ich dann doch eine Lösung. Vielleicht gibt es hier im Forum Experten, die sich mit LibreOffice besser auskennen und eine elegantere Lösung finden (Makro oder Tastenkombination), aber immerhin es funktioniert. Angehängt ist eine Beispieldatei für LibreOffice (Endung .ods) mit Makro für die Kursaktualisierung. YahooKurs.V1.ods Share this post Link to post
Oli Garch Posted August 13, 2018 Kursabruf über Ariva seit ca. einer Woche funktioniert der Kursabruf von Ariva mit dem unter #434 vorgestellten Makro nicht mehr. An der Internetseite sind kleine Veränderungen vorgenommen worden. Mit dem angehängten Makro sollte es wieder laufen. (Mit Alt+F11 das VB-Modul aufrufen, den Text aus der angehängten Datei mit dem vorhandene Makro (normalerweise in Modul1) ersetzen.) ArivaQuotes.V2.3.txt Share this post Link to post
Oli Garch Posted August 13, 2018 · Edited September 18, 2020 by Oli Garch Vorversion hat nicht mehr funktioniert Historische Kurse von Ariva beim Aufräumen in meinem Ariva-Ordner ausgegraben: Excel-Datei zum Download historischer Kurse von Ariva. Funktioniert, wie die Datei, die ich unter #364 zum Download von historischen Kursen von Yahoo vorgestellt habe: Eingabemaske für die Eingabe von Downloadzeitraum, ISIN und Börsenplatz. Speicherung der Daten auf einem separaten Tabellenblatt und wahlweise in eine .csv-Datei im Ordner Download. Im Gegensatz zu Yahoo hier die Verwendung von ISIN oder WKN, wodurch das Downloaduniversum größer und damit für deutsche Anwender interessanter ist. ArivaKursHistoDownLoad.v.2.0.xlsm Share this post Link to post
akista Posted August 14, 2018 Am 14.7.2018 um 18:18 schrieb Oli Garch: Kursimport von Yahoo, mal ohne VBA-Makro (ab Excel 2013) Viel Spaß beim probieren. YahooKurs.ohneMakro.V1.xlsx 43 16 kB Vielen Dank, Oli. Das ist wirklich eine sehr nützliche Tabelle. Möge sie lange funktionieren. Share this post Link to post
Oli Garch Posted August 14, 2018 @akista Möge dein Wunsch in Erfüllung gehen! Share this post Link to post
akista Posted August 17, 2018 Eine Frage mal: Findet ihr bei YahooFinance einen Kurs für den MSCIWorld, analog zu ^DJI für den Dow oder ^GDAXI für den Dax? Share this post Link to post