2012-07-05 10 views
13

Sto girando la mia tesi di domani e ricevo un messaggio di errore molto bizzarro con quantmod che non ho mai avuto durante le ultime settimane mentre lavoravo con questo pacchetto. Non riesco a importare i dati in modo specifico dall'indice Dow Jones (^ DJI). Viene visualizzato il seguente messaggio di errore:Semplice funzione di quantmod non funziona più

getSymbols("^DJI",src="yahoo", from='2005-6-01', to='2012-6-21') 

Error in download.file(paste(yahoo.URL, "s=", Symbols.name, "&a=", from.m, : 
impossible to open the URL 'http://chart.yahoo.com/table.csv?s=^DJI&a=5&b=01&c=2005&d=5&e=21&f=2012&g=d&q=q&y=0&z=^DJI&x=.csv' 
Also : Message d'avis : 
In download.file(paste(yahoo.URL, "s=", Symbols.name, "&a=", from.m, : 
impossible to open : the status HTTP was '404 Not Found' 

Mi sento quasi imbarazzato per fare una domanda così semplice. Io davvero non capisco dove sia il problema .. questi per esempio funzionano bene

getSymbols("AAPL",src="yahoo", from='2005-6-01', to='2012-6-21') 
getSymbols("^NDX",src="yahoo", from='2005-6-01', to='2012-6-21') 

Quindi dov'è il problema? grazie mille per il tuo aiuto lo apprezzo davvero!

+1

E sconcertante sui metodi il giorno prima che una tesi venga consegnata è ...? –

+0

@GSee grazie per il commento, sono nuovo di questo sito e mi sono perso! sicuramente andrò a correggerlo :) Modifica: ho appena notato che tu sei quello che ha fatto per me quel grande codice per calcolare il rendimento dei dividendi! grazie! –

risposta

18

Per qualche motivo, Yahoo non fornisce attualmente tali dati. È possibile vedere on the yahoo website che attualmente dice "I dati di quotazione storica non sono disponibili per l'intervallo di date specificato."

Non so se questo è temporaneo o permanente, ma suppongo che sia il temparario perché come hai notato, "^ NDX" funziona ancora. Poiché oggi è una festa negli Stati Uniti, è possibile che Yahoo stia facendo manutenzione.

Se diventa disponibile prima che sia troppo tardi per voi, vorrei suggerire il salvataggio dei dati sia con save o con FinancialInstrument:::saveSymbols.common in modo che è possibile caricare nuovamente usando getSymbols(*, src='FI')

Se non è su per il momento ne hai bisogno, hai un paio di alternative che potrebbero o meno soddisfare le tue esigenze. Si potrebbe utilizzare getSymbols.FRED per ottenere i valori di chiusura dell'Indice dal 1886

getSymbols("DJIA", src='FRED') 

In alternativa, è possibile utilizzare l'ETF DIA che in realtà è negoziabile ed è un proxy decente per l'indice

getSymbols("DIA", src='yahoo') 
+0

ottima risposta! grazie ! –

+0

Vedere http://stackoverflow.com/a/11368535/967840. – GSee

Problemi correlati