ras*_*som 93 stocks yahoo-finance
我已经无休止地搜索了通过http://finance.yahoo.com获取所有雅虎股票代码的完整(并且每日更新)列表的方法.
雅虎拥有全球许多交易所的股票,期货等信息,我想要通过它们获得的所有股票代码的综合列表.我已经尝试过YQL,但是他们有一个"where symbol =(或in)"子句限制,所以我不能从符号中选择*.
所以基本上,一次获取单个符号或几个符号的详细信息很容易,但我似乎无法找到如何获得所有可用代码的列表.
有人可以帮忙吗?
Ian*_*Ooi 45
我有类似的问题.雅虎不提供它,但你可以通过查看nyse.com列表上的document.write语句找到.js文件,它们恰好存储了以给定字母开头的公司列表作为js数组文字.你也可以从nasdaq.com获得漂亮整洁的csv文件:http://www.nasdaq.com/screening/companies-by-name.aspx? letter =0&exchange=nasdaq& render = download (用exchange = nyse 替换exchange = nasdaq对于纽约符号).
小智 44
我设法通过使用此URL做了类似的事情:
http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.industry%20 where%20id%20in%20(选择%20industry.id%20from%20yahoo.finance .sectors)的env =商店%3A%2F%2Fdatatables.org%2Falltableswithkeys
它使用Yahoo YQL API下载完整的股票代码列表,包括股票名称,股票代码和行业ID.它似乎没有任何种类的股票代码修饰符.例如,罗杰斯通信公司,它只下载RCI,而不是RCI-A.TO,RCI-B.TO等.我还没有找到该信息的来源 - 如果有人知道自动下载的方法,我我想听听.此外,很高兴找到一种方法来下载股票代码和交易所交易的某种关系,因为有些交易在多个交易所交易,或者我可能只想查看TSX上的东西或其他东西.
tr4*_*nc3 21
纳斯达克股票代表 ftp://ftp.nasdaqtrader.com/symboldirectory
2个文件nasdaqlisted.txt和otherlisted.txt是| 管道分开.这应该给你一个很好的所有股票清单.
GSe*_*See 14
我或许可以帮助(美国和非美国)股票和ETF的股票代码清单.
雅虎提供了一个收益日历,其中列出了宣布某一天收益的所有股票.这包括非美国股票.
例如,今天是:http://biz.yahoo.com/research/earncal/20120710.html
URL的最后一部分是您希望收入日历的日期(YYYYMMDD格式).您可以循环几天并刮掉当时报告收益的所有股票的符号.
无法保证雅虎拥有报告收益的所有股票的数据,特别是因为一些股票不再存在(破产,收购等),但这可能是一个不错的起点.
如果您熟悉R,可以使用
qmao包执行此操作.(如果您在安装时遇到问题,请参阅此帖子).
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"
Run Code Online (Sandbox Code Playgroud)
这不包括任何ETF,期货,期权,债券,外汇或共同基金.
你可以在这里从雅虎获得ETF列表:http://finance.yahoo.com/etf/browser/mkt 只显示前20个.你需要在该页面底部显示"全部显示"链接的URL .您可以抓取页面以找出有多少ETF,然后构建一个URL.
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
Run Code Online (Sandbox Code Playgroud)
现在,您可以从该页面上的表中提取代码
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"
Run Code Online (Sandbox Code Playgroud)
这是关于我可以提供的所有帮助,但你可以做类似的事情,通过抓取这些页面来获得他们提供的一些期货(这些只是美国期货)
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 ,
而且,对于美国和非美国指数,你可以抓住这些页面
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:// finance.yahoo.com/indices?e=nasdaq, http://finance.yahoo.com/indices?e=sp, http://finance.yahoo.com/indices?e=other, HTTP://融资. yahoo.com/indices?e=treasury, http://finance.yahoo.com/indices?e=commodities
小智 12
Yahoo!Finance API有一个不错的C#包装器,可以在http://code.google.com/p/yahoo-finance-managed/找到它.遗憾的是,没有直接下载股票代码列表的方法,但以下内容通过迭代字母组来创建列表:
AlphabeticIDIndexDownload dl1 = new AlphabeticIDIndexDownload();
dl1.Settings.TopIndex = null;
Response<AlphabeticIDIndexResult> resp1 = dl1.Download();
writeStream.WriteLine("Id|Isin|Name|Exchange|Type|Industry");
foreach (var alphabeticalIndex in resp1.Result.Items)
{
AlphabeticalTopIndex topIndex = (AlphabeticalTopIndex) alphabeticalIndex;
dl1.Settings.TopIndex = topIndex;
Response<AlphabeticIDIndexResult> resp2 = dl1.Download();
foreach (var index in resp2.Result.Items)
{
IDSearchDownload dl2 = new IDSearchDownload();
Response<IDSearchResult> resp3 = dl2.Download(index);
int i = 0;
foreach (var item in resp3.Result.Items)
{
writeStream.WriteLine(item.ID + "|" + item.ISIN + "|" + item.Name + "|" + item.Exchange + "|" + item.Type + "|" + item.Industry);
}
}
}
Run Code Online (Sandbox Code Playgroud)
它在约4分钟内给了我一份约75,000份证券的清单.
小智 8
我已经研究了几天,跟随无尽的线索,接近但不完全是我追求的.
我需要一个简单的"符号,部门,行业"清单.我在Java工作,不想使用任何平台本机代码.
似乎大多数其他数据,如报价等,都很容易获得.
最后,按照建议来看看'finviz.com'.看起来就像票.尝试使用以下内容:
http://finviz.com/export.ashx?v=111&t=aapl,cat&o=ticker 这是以线条,csv样式返回的,带有标题行,以股票代码排序.你可以继续添加代码.在代码中,您可以阅读流.或者您可以让浏览器询问您是打开还是保存文件.
http://finviz.com/export.ashx?v=111&&o=ticker 相同的csv样式,但是拉出所有可用的符号(很多,跨越全球交易所)
将'export'替换为'screener',数据将显示在浏览器中.
您可以使用更多选项,一个用于网站上的每个筛选元素.
到目前为止,这是获取我无法轻易获得的少量数据的最强大,最方便的编程方式.并且,看起来这个网站很可能只是您可能需要的大部分内容,而不是实时或接近实时的报价.
小智 5
雅虎符号/代码/股票的完整列表可在以下网站下载(excel格式).http://www.myinvestorshub.com/yahoo_stock_list.php
清单更新至2016年1月:http: //investexcel.net/all-yahoo-finance-stock-tickers/
| 归档时间: |
|
| 查看次数: |
159173 次 |
| 最近记录: |