web-dev-qa-db-fra.com

Yahoo! Le fichier CSV Finance ne renverra pas Dow Jones (^ DJI)

J'essaie de récupérer les données du marché à partir de Yahoo! la finance et le script ont bien fonctionné pendant des années, mais récemment, il a cessé de montrer les données du Dow Jones. Voici l'URL:

http://download.finance.yahoo.com/d/quotes.csv?s=^DJI,^IXIC,^GSPC,^TNX&f=snl1d1t1c1ohg

L'URL doit renvoyer des données sur:

  • Dow Jones
  • NASDAQ
  • S&P
  • Obligations à 10 ans

En fait, il n'est pas retourné dans le CSV pour moi, j'ai essayé tout ce que je peux penser, mais en vain, et je n'ai vu personne avoir le même problème en ligne.

Des idées et quelqu'un a-t-il les mêmes problèmes?

Merci.

41
Jake

Remplacez ^ DJI par INDU (c'est l'un des tickers pour le Dow) - cela fonctionnera.

Je ne sais pas pourquoi ^ DJI a cessé de travailler le week-end dernier - quelqu'un a fait une 'amélioration négative'.

Cheerio

GT

32
GT.

Selon Yahoo à:

http://developer.yahoo.net/forum/index.php?showtopic=694

Merci d'avoir écrit à Yahoo! La finance. Je comprends que vous signalez que vous ne pouvez pas télécharger les données CSV pour ^ DJI. Je peux certainement vous donner plus d'informations à ce sujet. La limitation que vous rencontrez est due aux restrictions de l'indice Dow Jones. Yahoo! n'est plus en mesure de fournir les données de l'indice Dow Jones de cette manière. Je m'excuse pour la gêne occasionnée. Veuillez me faire savoir si je peux vous aider davantage. Merci encore d'avoir contacté Yahoo! La finance. Cordialement, Brett Yahoo! Finance Customer Care

L'autre article qui suggère d'utiliser INDU semble fonctionner! ... Je me demande si Yahoo (ou Dow Jones) vient de manquer celui-ci et il finira par disparaître ...

26
JJ Jameson

Je sais qu'il a été répondu à cette question il y a quelque temps mais j'ai récemment rencontré ce ^ DJI et Yahoo! problème de cotations à nouveau en raison d'un autre changement chez Yahoo! et ont trouvé une solution qui pourrait aider le PO et toute autre personne qui accède à cette page à la suite d'une recherche.

À titre d'information, veuillez noter qu'il existe plusieurs URL qui peuvent éventuellement être utilisées pour télécharger des données de devis historiques à partir de Yahoo. Elles sont:

1) http://download.finance.yahoo.com/d/quotes.csv

2) http://ichart.finance.yahoo.com/table.csv

3) http://finance.yahoo.com/q/hp

1) est celui indiqué par l'OP, 2) est en fait le lien de "téléchargement" que vous obtenez sous l'affichage des devis sur la page Web et 3) est l'URL de la page Web de devis historique normal.

Il s'avère que même si 1) a été bloqué pour ^ DJI et quelques autres depuis août 2011, comme l'a mentionné Mario Fernandez, 2) fonctionnait encore jusqu'à l'autre jour. Je le sais parce que je l'ai utilisé et il a cessé de fonctionner (comme il s'est avéré) il y a environ une semaine. Soit dit en passant, 2) avait l'avantage que cela vous permettrait en fait de récupérer plus de données que ce qui était apparemment disponible via 1) ou 3), par exemple, vous pouviez récupérer des données jusqu'en 1928 en utilisant la méthode 2), mais je m'égare. Quoi qu'il en soit, comme je l'ai dit, 2) a également cessé de fonctionner récemment, ce qui m'a laissé la frustration de ne pas pouvoir mettre à jour mes ensembles de données/modèles automatiquement.

Étant donné que j'utilise en fait les données ^ DJI pour certains de mes modèles, etc., j'ai finalement passé une heure ou deux aujourd'hui à écrire un grattoir de page pour la page de citations normale (par exemple, n ° 3) qui va maintenant directement récupérer les citations du site Web de citations HTML page. Ceci est dans le contexte d'une application de téléchargement de ligne de commande open source écrite en Python sur laquelle j'ai effectué quelques travaux mineurs au cours des deux derniers mois. C'est ce que j'utilise actuellement pour rafraîchir mon Avec le dernier patch, l'OP et toute autre personne qui souhaite télécharger ^ DJI a une autre solution possible pour télécharger ^ DJI si nécessaire.

Si vous souhaitez l'essayer, vous devrez d'abord télécharger et installer Python (sous Windows. Linux et Mac ont Python intégré). ) Je suggère la distribution Python d'ActiveState, disponible ici:

http://www.activestate.com/activepython/downloads

Notez qu'ils demandent les détails de l'inscription mais ce n'est pas obligatoire. Vous pouvez simplement ignorer la page d'inscription que vous obtenez après avoir cliqué sur l'un des liens de téléchargement.

Ensuite, vous avez besoin de la source du programme pyQ. Vous pouvez l'obtenir sur la page du projet ici:

http://Bazaar.launchpad.net/~wprins/python-pyq/trunk/view/head:/pyq.py

Edit 2016-10-20: Le code est maintenant disponible sur github et fonctionnera également sous Python 3 également: https://github.com/ByteJuggler/pyq

Cliquez sur le lien "télécharger" et enregistrez le script dans un endroit approprié. Ouvrez ensuite une invite de commande, "cd" dans le dossier dans lequel vous avez téléchargé le script, et essayez d'exécuter le script avec "pyq". En supposant que Python a été installé, vous devriez être présenté avec un résumé de l'utilisation. Dans sa forme la plus simple, une commande comme:

pyq IBM

récupérera une ligne de devis en direct pour IBM.

Quelque chose comme:

pyq 20120601 20120701 IBM

... récupérera les devis pour IBM de la date 20120601 à la date 20120701. Etc. La sortie est effectivement CSV. Si vous souhaitez enregistrer la sortie dans un fichier, redirigez ensuite la sortie comme d'habitude:

pyq 20120601 20120701 IBM> ibm.csv

Quoi qu'il en soit, j'espère que cela aide quelqu'un. (Je suis tombé sur cette page plus tôt dans la journée en essayant de comprendre pourquoi mon ensemble de données ^ DJI était obsolète depuis environ une semaine et j'ai décidé de poster ici si/quand je suis arrivé avec une solution.)

Edit: Veuillez noter pour ^ DJI vous devez citer le ticker, par exemple:

pyq 20120601 20120701 "^ DJI"> "^ DJI.csv"

8
W.Prins

Je pense que vous feriez mieux de contacter Yahoo! Finance . Comme ils connaissent leur système et seront très probablement en mesure d'aider.

5
Brad F Jacobs

maintenant que Yahoo a bloqué INDU, vous pouvez utiliser un ETF qui suit l'index à la place. Je ne pense pas qu'ils bloqueraient cela.

4
Leon

J'utilise Google Finance pour obtenir les données depuis Y! La finance a cessé de fonctionner. Bien que Google puisse également changer sa politique à l'avenir. Jusqu'à ce que cela se produise, j'accède

http://finance.google.com/finance/info?lient=ig&q=INDEXDJX:.DJI&callback= ?

qui renverra un document JSONP.

2
Steffen Roller

Le lien suivant: http://finance.yahoo.com/q/hp?s=^DJI vous donnera certaines des informations qui vous intéressent (comme Open, DaysHigh et DaysLow) .

En outre, le code non fonctionnel suivant:

wget -qO ^DJI.csv "http://ichart.finance.yahoo.com/table.csv?s=^DJI"

peut être remplacé par le hack suivant:

(echo "Date,Open,High,Low,Close,Volume,Adj Close"
for y in {0..7603..66}; do # increase 7603 if necessary
  wget -qO- "http://finance.yahoo.com/q/hp?s=^DJI&y=$y" |
    sed 's/<\/\(td\|a\)>/\n/g' |
    grep yfnc_tabledata1 |
    sed -e 's/<.*>//g' -e 's/\([0-9]\),\([0-9]\)/\1\2/g' |
    grep -v ^$ |
    awk 'BEGIN {m["Jan"]=1; m["Feb"]=2; m["Mar"]=3;
    m["Apr"]=4; m["May"]=5; m["Jun"]=6;
    m["Jul"]=7; m["Aug"]=8; m["Sep"]=9;
    m["Oct"]=10; m["Nov"]=11; m["Dec"]=12}
    NR%7==1 {printf "%d-%02d-%02d,",$3,m[$1],$2}
    NR%7>1 {printf "%s,",$0} NR%7==0'
done) > ^DJI.csv

qui générera un tableau avec des données historiques quotidiennes pour le ^ DJI à partir du 29 janvier 1985.

1
freeseek

J'ai vu ça la semaine dernière ...

http://webdesignsnow.com/forums/about125.html qui décrit une modification ainsi que le message vu dans le fichier csv.

1
EA Webmaster