lurklurk September 14, 2014 · bearbeitet September 16, 2014 von lurklurk MSCI bietet Indexdaten nur über die Webseite und ein spezielles Downloadmenü an, das man für jeden Download auf's Neue von Hand bedienen muss. Für sporadische Nutzer völlig okay. Aber schlecht, wenn man für Auswertungen aller Art öfter aktuelle Index-Zeitreihen haben möchte und/oder viele Indizes benötigt. Mit Automatisierung sieht es dann mau aus. Höchstens über Drittanbieter wie Onvista (Druckversionen der Webseite einlesen). Dort fehlen allerdings gerne die frühen Jahrzehnte der Indizes oder es geht gar überhaupt nur 5-10 Jahre zurück. Zufällig bin ich nun auf eine bequeme Alternative gestoßen - bequem zumindest nach einmaligem Heraussuchen der Index-ID. Kurzfassung: Diese URL http://www.msci.com/webapp/indexperf/charts?indices=2591,C,36|73667,V,41|106,C,36|114,C,36|13,C,36|89303,C,36|73,C,30|104,C,30|98278,D,36|94632,R,36&startDate=29%20Jan,%201960&priceLevel=40currency=15&frequency=Y&scope=R&format=XLS&baseValue=true&site=gimi liefert ganz ohne Webseitenbesuch diese Exceldatei, sogar mit mehr als 6 Indizes gleichzeitig (normalerweise das Limit der MSCI-Webseite): Längere Fassung: Beim Stöbern im Hilfebereich der Quandl.com-Seite bin ich auf ein Ruby-Skript gestoßen. Quandl läuft wohl intern (auch?) mit Ruby und man kann dort selbst Daten einpflegen (private oder öffentliche) und dann mit speziellen Quandl-Plugins/Libraries/Packages oder per API in diverse Programme einlesen. Statt händischem Einpflegen kann man auch solche Ruby-Skripte hochladen und von Quandl automatisch ausführen lassen. Jedenfalls liest besagtes Ruby-Skript die Daten des MSCI-Far-East-Index im XML-Format, konvertiert dann von XML in ein Zweispalten-Layout und gibt das Ganze am Bildschirm aus (bzw. STDOUT, Piping/Datei etc). Die relevante Stelle im Skript lautet index = 114 # Far East Index frequency = 'M' # monthly ccy = 15 # USD url = "http://www.msci.com/webapp/indexperf/charts?indices=#{index},C,36&startDate=29%20Jan,%201960&endDate=29%20Jan,%202024&priceLevel=0¤cy=#{ccy}&frequency=#{frequency}&scope=&format=XML&baseValue=false&site=gimi" Wir sehen dort als URL-Basis http://www.msci.com/webapp/indexperf/charts? gefolgt von diversen Parametern der Form name=X die durch ein & voneinander getrennt sind. Zuerst habe ich probiert, ob als Format XLS (Excel) statt XML möglich ist - ja, ebenso CSV. Das hat mich darauf gebracht zu schauen, was passiert, wenn man im MSCI-Downloadmenü diverse Optionen ändert (gross/net/price, Währung, Index X, ...) und auf "Download Data" klickt. Ich hatte dafür erst eine Chromeerweiterung genommen, dann aber die Browser-eignenen Entwicklertools bemerkt. Man kann dort einen Filterbegriff eingeben, so wird nur die gewünschte Aktion angezeigt. Beim Klick auf der MSCI-Webseite sieht man so die jeweiligen URLs, die auch genauso aufgebaut sind wie die URL aus dem Ruby-Skript: Bei mir wird in den Tools zuerst immer nichts angezeigt, erst nach einem Druck auf die Taste F5 (Reload) klappt es. Läuft bei anderen Browsern und Betriebssystemen sicher ähnlich ab. Bisher habe ich testweise ein paar Indizes durchprobiert. Weitere können wir ja bei Interesse hier im Thread mit der Zeit zusammentragen (die Codes). Die Parameter, soweit ich sie verstehe: indices= 2591,C,36 für ACWI 73667,V,41 für ACWI IMI Value 114,C,36 für Far East 73,C,30 für Germany 98278,D,36 für BRIC GDP 94632,R,36 für BARRA Factor Europe Momentum leider muss man diese Kennung für jeden einzelnen Index abfragen, den man haben will. Die erste Zahl (wie 2591 oder 73667) ist immer anders, auch für Subindizes wie MSCI World --> World Value oder World Small Growth. Der Aufbau scheint scheint zwar einem Schema zu folgen. Und zuerst dachte ich, man könnte z.B. einfach aus dem Far East Standardindex (114,V,36) einen Far East IMI Value (114,V,41) machen. Die Spaltenbeschriftung in der Exceldatei lautet dann auch wie gewünscht (Far East IMI Value, aber die Renditen bleiben die des Far East Standardindex. Funktioniert also nicht. Danke an User abseits für den Hinweis - schade. mehrere Indizes gleichzeitig werden mit dem Zeichen | getrennt (Taste links unten auf der Tastatur, gleiche wie für <>) die Reihenfolge der Spalten/Indizes in der Downloaddatei ist leider nicht diesselbe wie in der URL angegeben. Sie bleibt aber von Download zu Download gleich. startDate= 31%20May,%202010 im US-Datums-Kurzformat, %20 steht für ein Leerzeichen vor Ultimo 1969 gibt es bei keinem MSCI-Index Daten. Es bietet sich an, irgendein Datum aus den 1960ern als "Dummy" für das frühestmögliche Datum nehmen. endDate= wie vor, kann weggelassen werden, dann gibt's Daten bis heute. Parameter darf aber, wenn vorhanden, nach dem = nicht leer sein. priceLevel= 0 für price return 41 für net return 40 für gross return currency= 15 für USD 119 für Euro 0 für local currency frequency= D für daily M für monthly Y für yearly scope= R ????format= XLS für eine Exceldatei XML CSV baseValue= true für Start bei 100 (ändert nur etwas, wenn Startdatum der angeforderten Zeitreihe nach Indexauflage) false site= gimi ???? darf aber nicht fehlen Ein komplettes Beispiel zum Schluss. Wir wollen eine Exceldatei mit dem MSCI ACWI IMI und dem MSCI Germany. Das Ganze gross return in USD, mit Monatsrenditen, Start bei 100 und Zeitraum Ultimo 2010 bis Ultimo 2013. Ergibt http://www.msci.com/webapp/indexperf/charts?indices=2591,C,36|73,C,30&startDate=31%20Dec,%202010&endDate=31%20Dec,%202013&priceLevel=40¤cy=15&frequency=M&scope=R&format=XLS&baseValue=true&site=gimi Besonders komfortabel ist es natürlich, sich die gewünschten URLs mit Excel-Formeln/-funktionen (wie "Verketten", ...) oder gleich mittels einer Programmiersprache zusammensetzen zu lassen. Diesen Beitrag teilen Link zum Beitrag
lurklurk September 15, 2014 · bearbeitet September 16, 2014 von lurklurk # Info hat sich als falsch herausgestellt # Diesen Beitrag teilen Link zum Beitrag
wertpapiertiger September 16, 2014 Eine gute Nachricht zu den Indexkennungen. Das MSCI-Downloadmenü generiert zwar für jede Indexabart eine individuelle Kennung. Es funktioniert aber auch, für alle Abarten (GDP, Smallcap Growth, ...) einfach die ID des jeweiligen Mutter-/Hauptindex zu nehmen (Word, ACWI, Germany, ...). Und diese dann mit Angaben zur gewünschten Abart zu ergänzen. D.h. es reicht, sich einmalig die IDs dieser Hauptindizes (Regionen, Länder) zu holen. Ich habe das oben eingearbeitet. wehe wenn er sich mal festgebissen hat ! Nice find lurklurk Hab mal die IndexIDs für EM, DM, CHINA und ALL CAPs aus dem Quelltext geschnappschusst und angehängt Grüsse Diesen Beitrag teilen Link zum Beitrag
lurklurk September 16, 2014 · bearbeitet September 16, 2014 von lurklurk Hab mal die IndexIDs für EM, DM, CHINA und ALL CAPs aus dem Quelltext geschnappschusst und angehängt Danke für die Mitarbeit. Leider klappt es doch nicht so einfach, wie ich nach einem dankenswerten Hinweis von User abseits gemerkt habe. Man muss die gesamte Kennung für jeden einzelnen Index abfragen, den man haben will. Die Spaltenbeschriftung in der Exceldatei lautet zwar nach "Standardindex + Schema" wie gewünscht (z.B. Far East IMI Value), aber die Renditen bleiben die des Far East Standardindex. Naja, immerhin nur einmalig Arbeit. Diesen Beitrag teilen Link zum Beitrag
Maciej Dezember 18, 2014 Mittlerweile haben vermutlich ein paar Leute zuviel die Daten aus der oben genannten Quelle abgegriffen. Jedenfalls funktioniert der Abruf der täglichen Daten mittlerweile nicht mehr für längere Zeiträume, sondern nur noch (wie über das Web-Tool) für die letzten vier Jahre. Daten davor gibt es dann nur noch monatlich. Diesen Beitrag teilen Link zum Beitrag