2010-07-08 16 views
8

Necesito una forma desde el lado del cliente Javascript para buscar una completa nombre de la compañía dado un símbolo de cotización. Soy consciente de la interfaz de Yahoo Finanzas en:Necesito una API para encontrar el nombre completo de una empresa dado un símbolo de cotización

http://finance.yahoo.com/d/quotes.csv?s=TKR&f=n

y soy capaz de acceder a esa vía YQL (ya que es a través del dominio). Sin embargo, eso no quiere devolver el nombre completo de la empresa, sin embargo, Yahoo Finanzas tiene como porque aparece en sus cartas para la empresa y en sus páginas sobre la empresa.

No necesito para que la solución sea por Yahoo Finanzas ... acaba de mencionar aquí como ya sé sobre él (y soy el acceso para otros datos).

+0

Parece que esta pregunta se hizo aquí: http://stackoverflow.com/questions/885456/stock-ticker-symbol-lookup-api – Icemanind

+0

Esa publicación consideraba encontrar Tickers para el nombre de una empresa. Quiero ir en la otra dirección: obtener el nombre * completo dado un ticker. – Zhami

Respuesta

7

Una de las mesas YQL proporcionado por la comunidad parece que va a trabajar para usted: yahoo.finance.stocks.

Ejemplo YQL consulta: select CompanyName from yahoo.finance.stocks where symbol="TKR"

Actualización 2012-02-10: Como firebush señala en los comentarios, no parece que esta mesa de la comunidad (YQL) yahoo.finance.stocks estar funcionando correctamente más, probablemente porque las estructuras de página HTML en finance.yahoo.com han cambiado. Este es un buen ejemplo de la desventaja de cualquier tabla YQL que se base en el raspado HTML en lugar de una verdadera API. (Que para las finanzas de Yahoo no existe, por desgracia.)

Parece que la mesa de la comunidad de Google Finanzas está trabajando, por lo que esta puede ser una alternativa para tratar: select * from google.igoogle.stock where stock='TRK';

+0

Agradable. ¡Gracias por proporcionar un enlace a la consola YQL! Un poco indirecto para usar YQL para raspar una página web, pero funciona. – Zhami

+0

Esto es realmente impresionante. ¡Gracias! –

+0

Cuando hago clic en su enlace y presiono "TEST", el campo CompanyName está siempre vacío; lo he intentado también para otras acciones. Si cambio la selección a '*', aparecerán otros campos (como la fecha de inicio), pero el nombre todavía está vacío. :(Me pregunto si esto solía funcionar pero ahora no es compatible? – firebush

1

que tienen pantalla desechó esta información en el pasado, ya sea usando las finanzas de Yahoo o MSN Money. Por ejemplo, puede obtener esta información de ExxonMobil por ir a (link). En cuanto a una API, puede que necesites construir una tú mismo. Para una comprobación API Xignite.

0

Puede usar el servicio de búsqueda de Yahoo utilizando la aplicación .NET de Jonathan Christian que está disponible en NuGet en" Yahoo Stock Quotes ".

https://github.com/jchristian/yahoo_stock_quotes

//Create the quote service 
var quote_service = new QuoteService(); 

//Get a quote 
var quotes = quote_service.Quote("MSFT", "GOOG").Return(QuoteReturnParameter.Symbol, 
                QuoteReturnParameter.Name, 
                QuoteReturnParameter.LatestTradePrice, 
                QuoteReturnParameter.LatestTradeTime); 

//Get info from the quotes 
foreach (var quote in quotes) 
{ 
    Console.WriteLine("{0} - {1} - {2} - {3}", quote.Symbol, quote.Name, quote.LatestTradePrice, quote.LatestTradeTime); 
} 

EDIT: Después de la publicación de esta probé este código exacto y no estaba trabajando para mí así que en vez he utilizado la Yahoo Finance Managed Api sin embargo, no está disponible a través de NuGet. Un buen ejemplo del uso here

QuotesDownload dl = new QuotesDownload(); 
DownloadClient<QuotesResult> baseDl = dl; 

QuotesDownloadSettings settings = dl.Settings; 
settings.IDs = new string[] { "MSFT", "GOOG", "YHOO" }; 
settings.Properties = new QuoteProperty[] { QuoteProperty.Symbol, 
             QuoteProperty.Name, 
             QuoteProperty.LastTradePriceOnly 
             };    
SettingsBase baseSettings = baseDl.Settings; 
Response<QuotesResult> resp = baseDl.Download(); 

Además, si lo que desea es descargar el api cosas StockTwits tiene un enlace para descargar la simbología y las industrias de la sección "Recursos" http://stocktwits.com/developers/docs

0

También es posible utilizar Quandl.com recursos. Su base de datos contiene 3339 WIKI las acciones principales y puede ser recuperado a través de secwiki_tickers.csv archivo. Para un archivo sin formato portfolio.lst almacenar la lista de sus teletipos (acciones en los mercados de Estados Unidos), por ejemplo .:

AAPL 
IBM 
JNJ 
MSFT 
TXN 

puede escanear el archivo .csv para el nombre, dirección.g:

import pandas as pd 

df = pd.read_csv('secwiki_tickers.csv') 
dp = pd.read_csv('portfolio.lst',names=['pTicker']) 

pTickers = dp.pTicker.values # converts into a list 

tmpTickers = [] 

for i in range(len(pTickers)): 
    test = df[df.Ticker==pTickers[i]] 
    if not (test.empty): 
     print("%-10s%s" % (pTickers[i], list(test.Name.values)[0])) 

lo devuelve:

AAPL  Apple Inc. 
IBM  International Business Machines Corporation 
JNJ  Johnson & Johnson 
MSFT  Microsoft Corporation 
TXN  Texas Instruments Inc. 

Es posible combinar más acciones de otros recursos de Quandl. Vea la documentación en línea.

Cuestiones relacionadas