2012-07-05 39 views
13

Tôi đang chuyển sang tomorow luận án của mình và tôi nhận được một thông báo lỗi rất bizzare với quantmod mà tôi chưa bao giờ có trong những tuần qua trong khi làm việc với gói này. Tôi không thể quản lý để nhập dữ liệu cụ thể của chỉ số Dow Jones (^ DJI). Tôi nhận được thông báo lỗi sau:Chức năng đơn giản của quantmod không hoạt động nữa

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' 

Tôi gần như cảm thấy được đặt ra để hỏi một câu hỏi đơn giản như vậy. Tôi thực sự không hiểu vấn đề ở đâu .. những ví dụ này chỉ hoạt động tốt

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

Vậy vấn đề ở đâu? cảm ơn bạn rất nhiều vì sự giúp đỡ của bạn, tôi thực sự đánh giá cao nó!

+1

Và khó hiểu về phương pháp ngày trước khi một luận án được bật là ...? –

+0

@GSee cảm ơn nhận xét, tôi mới tham gia trang web này và đã bỏ lỡ điều đó! chắc chắn sẽ đi chính xác rằng :) Chỉnh sửa: chỉ cần nhận thấy bạn là một trong đó đã làm cho tôi rằng mã tuyệt vời để tính toán lợi tức cổ tức! cảm ơn bạn! –

Trả lời

18

Vì một số lý do, yahoo hiện không cung cấp dữ liệu đó. Bạn có thể xem on the yahoo website hiện tại cho biết "Dữ liệu trích dẫn lịch sử không khả dụng trong phạm vi ngày được chỉ định".

Tôi không biết ifthis là tạm thời hay vĩnh viễn, nhưng tôi đoán rằng đó là tạm thời vì bạn đã lưu ý, "^ NDX" vẫn hoạt động. Kể từ hôm nay là một kỳ nghỉ ở Hoa Kỳ, có thể là Yahoo đang thực hiện bảo trì.

Nếu nó trở nên có sẵn trước khi nó là quá muộn cho bạn, tôi sẽ đề nghị lưu dữ liệu hoặc với save hoặc với FinancialInstrument:::saveSymbols.common để bạn có thể tải nó về sử dụng getSymbols(*, src='FI')

Nếu nó không lên do thời gian bạn cần nó, bạn có một vài lựa chọn thay thế mà có thể hoặc có thể không phù hợp với nhu cầu của bạn. Bạn có thể sử dụng getSymbols.FRED để có được những giá trị đóng cửa của chỉ số từ 1886

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

Hoặc, bạn có thể sử dụng các ETF DIA mà thực sự là có thể giao dịch và là một proxy khá cho chỉ số

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

câu trả lời tuyệt vời! cảm ơn bạn ! –

+0

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

Các vấn đề liên quan