(ABD ve ABD dışı) hisse senetleri ve ETF'ler için hisse senedi sembollerinin bir listesine yardımcı olabilirim.
Yahoo, belirli bir gün için kazançları açıklayan tüm hisse senetlerini listeleyen bir Kazanç Takvimi sağlar. Buna ABD dışı hisse senetleri dahildir.
Örneğin, bugünün: http://biz.yahoo.com/research/earncal/20120710.html
URL'nin son kısmı, Kazanç Takvimini istediğiniz tarihtir (YYYYAAGG formatında). Birkaç gün boyunca döngü yapabilir ve o günlerde kazanç bildiren tüm hisse senetlerinin Sembollerini kazıyabilirsiniz.
Yahoo'nun kazanç bildiren tüm hisse senetleri için veriye sahip olduğunun garantisi yoktur, özellikle bazı hisse senetleri artık mevcut olmadığından (iflas, satın alma vb.), Ancak bu muhtemelen makul bir başlangıç noktasıdır.
Aşina R
iseniz, bunu yapmak için
qmao paketini kullanabilirsiniz. Yüklemede sorun yaşıyorsanız ( bu gönderiye bakın ).
ec <- getEarningsCalendar(from="2011-01-01", to="2012-07-01") #this may take a while
s <- unique(ec$Symbol)
length(s)
#[1] 12223
head(s, 20) #look at the first 20 Symbols
# [1] "CVGW" "ANGO" "CAMP" "LNDC" "MOS" "NEOG" "SONC"
# [8] "TISI" "SHLM" "FDO" "FC" "JPST.PK" "RECN" "RELL"
#[15] "RT" "UNF" "WOR" "WSCI" "ZEP" "AEHR"
Bu, herhangi bir ETF, vadeli işlem, opsiyon, tahvil, forex veya yatırım fonunu içermeyecektir.
Yahoo'dan ETF'lerin bir listesini buradan alabilirsiniz: http://finance.yahoo.com/etf/browser/mkt
Bu yalnızca ilk 20'yi gösterir. Sayfanın altındaki "Tümünü Göster" bağlantısının URL'sine ihtiyacınız var . Kaç ETF olduğunu öğrenmek için sayfayı kazıyabilir ve ardından bir URL oluşturabilirsiniz.
L <- readLines("http://finance.yahoo.com/etf/browser/mkt")
# Sorry for the ugly regex
n <- gsub("^(\\w+)\\s?(.*)$", "\\1",
gsub("(.*)(Showing 1 - 20 of )(.*)", "\\3",
L[grep("Showing 1 - 20", L)]))
URL <- paste0("http://finance.yahoo.com/etf/browser/mkt?c=0&k=5&f=0&o=d&cs=1&ce=", n)
#http://finance.yahoo.com/etf/browser/mkt?c=0&k=5&f=0&o=d&cs=1&ce=1442
Şimdi, İşaretleri o sayfadaki tablodan çıkarabilirsiniz.
library(XML)
tbl <- readHTMLTable(URL, stringsAsFactors=FALSE)
dat <- tbl[[tail(grep("Ticker", tbl), 1)]][-1, ]
colnames(dat) <- dat[1, ]
dat <- dat[-1, ]
etfs <- dat$Ticker # All ETF tickers from yahoo
length(etfs)
#[1] 1442
head(etfs)
#[1] "DGAZ" "TAGS" "GASX" "KOLD" "DWTI" "RTSA"
Bu, sunabileceğim tüm yardımlarla ilgili, ancak bu sayfaları kazıyarak sundukları vadeli işlemlerden bazılarını elde etmek için benzer bir şey yapabilirsiniz (Bunlar yalnızca ABD vadeli işlemleri)
http://finance.yahoo.com/indices?e=futures ,
http://finance.yahoo.com/futures?t=energy ,
http://finance.yahoo.com/futures?t=metals ,
http: //finance.yahoo.com/futures?t=grains ,
http://finance.yahoo.com/futures?t=livestock ,
http://finance.yahoo.com/futures?t=softs ,
http: // Finance.yahoo.com/futures?t=indices ,
ABD ve ABD dışı endeksler için bu sayfaları kazıyabilirsiniz
http://finance.yahoo.com/intlindices?e=americas ,
http://finance.yahoo.com/intlindices?e=asia ,
http://finance.yahoo.com/intlindices?e=europe ,
http: //finance.yahoo.com/intlindices?e=africa ,
http://finance.yahoo.com/indices?e=dow_jones ,
http://finance.yahoo.com/indices?e=new_york ,
http: // finans.yahoo.com/indices?e=nasdaq ,
http://finance.yahoo.com/indices?e=sp ,
http://finance.yahoo.com/indices?e=other ,
http: // finans. yahoo.com/indices?e=treasury ,
http://finance.yahoo.com/indices?e=commodities