Just wondering what kind of free finance API's are out there. I'm looking for something where I can specify the index and get a list of all the companies, by ticker symbol, that are included in that index.
Currently I'm only interested in NYSE-listed company stocks. I'd really appreciate any suggestions on API's or methods.
Other than doing the hard work, like downloading the symbols for the various exchanges from NASDAQ, then is a way to get Google Finance to display all of the stocks and/or companies listed on an exchange. Here is a sample url for obtaining the list of companies on NASDAQ:
https://www.google.com/finance?start=0&num=3000&q=%5B(exchange%20%3D%3D%20%22NASDAQ%22)%20%26%20(last_price%20%3E%200.1)%20%26%20(last_price%20%3C%201500)%5D&restype=company&noIL=1
if you notice the word 'NASDAQ' in the url, you can change that for the exchange you want. In addition, the num parameter can be changed to an amount that allows displaying all of the symbols to a single view. Finally, the last_price shown (which is also used for the criteria) has an upper limit of 1500 - that may need to be changed as well. Run it once as is, and if the view paginates and you want to display all in a single view, then increase that number accordingly.
When you use this URL, you may discover another benefit. The ability to retrieve a list of stocks from Google Finance simply as a search criteria statement. I personally have only uncovered a few of the possible fieldnames, and Google does NOT publish them anywhere that I have found. However, once you use the criteria to build the list, it is a simple matter to consolidate the pages into one view.
Google Finance API, i think, is the best free one.
I just came across this service. You can download complete listings for the popular exchanges.
http://www.eoddata.com/symbols.aspx
You must register (free plan) to download.
Thanks for the link driis but i'm not sure you can get complete listings. I looked at that before and it seems that it is just for managing your Google Finance portfolio.