2010-07-08 9 views
8

Ho bisogno di un modo dall'interno del client Javascript per trovare un completo nome della società dato un simbolo ticker. Sono a conoscenza di interfaccia di Yahoo Finanza presso:Necessità di un'API per trovare un nome completo dell'azienda con un simbolo ticker

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

e sono in grado di accedere a tale via YQL (poiché questo è cross-domain). Tuttavia, questo non restituisce il nome completo della società, eppure Yahoo Finance ha tale perché appare nei loro grafici per l'azienda e sulle loro pagine sulla società.

Non ho bisogno che la soluzione sia via Yahoo Finance ... basta citarlo qui come già so (e sto accedendo per altri dati).

+0

Questa domanda sembra essere stata posta qui: http://stackoverflow.com/questions/885456/stock-ticker-symbol-lookup-api – Icemanind

+0

Questa pubblicazione ha riguardato la ricerca di Ticker per il nome di una società. Voglio andare nella direzione opposta: ottenere il nome * completo * dato un ticker. – Zhami

risposta

7

Una delle tabelle YQL fornite dalla comunità sembra funzionare per voi: yahoo.finance.stocks. interrogazione

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

Aggiornamento 2012-02-10: Come Firebush sottolinea nei commenti, questa tabella comunità YQL (yahoo.finance.stocks) non sembra funzionare correttamente altro, probabilmente perché le strutture delle pagine HTML su finance.yahoo.com sono cambiate. Questo è un buon esempio del lato negativo di qualsiasi tabella YQL che si basa su scraping HTML piuttosto che su una vera API. (Che per Yahoo Finance non esiste, purtroppo.)

Sembra che il tavolo della comunità per Google Finance sta ancora lavorando, quindi questo potrebbe essere un'alternativa da provare: select * from google.igoogle.stock where stock='TRK';

+0

Bello. Grazie per aver fornito un collegamento alla console YQL !! Un po 'indiretto per usare YQL per raschiare una pagina Web, ma funziona. – Zhami

+0

Questo è davvero impressionante. Grazie! –

+0

Quando faccio clic sul tuo link e clicco su "TEST", il campo CompanyName è sempre vuoto - Ho provato anche per altri titoli. Se cambio la selezione in "*", vengono visualizzati altri campi (come la data di inizio), ma il nome è ancora vuoto. :(Mi chiedo se questo funzionasse ma ora non è supportato? – firebush

1

Ho schermato queste informazioni in passato utilizzando Yahoo Finance o MSN Money. Ad esempio è possibile ottenere queste informazioni per ExxonMobil andando a (link). Per quanto riguarda un'API, potrebbe essere necessario crearne una tu stesso. Per una verifica API Xignite.

0

È possibile utilizzare il servizio di ricerca di Yahoo utilizzando .NET API di Jonathan Christian, disponibile su NuGet in" 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: Dopo aver postato questo ho provato questo codice esatto e non lavoravo per me così invece ho usato il Yahoo Finance Managed Api tuttavia non è disponibile tramite NuGet. Un buon esempio di utilizzo 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(); 

Anche se si desidera solo scaricare l'API roba StockTwits ha un link di download per la simbologia e le industrie sotto "Risorse" http://stocktwits.com/developers/docs

0

E 'anche possibile utilizzare Quandl.com risorse. Il loro database WIKI contiene 3339 titoli principali e può essere recuperato tramite il file secwiki_tickers.csv. Per un normale file portfolio.lst memorizzare la lista dei vostri ticker (scorte nei mercati degli Stati Uniti), per es .:

AAPL 
IBM 
JNJ 
MSFT 
TXN 

è possibile eseguire la scansione del file .csv per il nome, e.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])) 

ciò che restituisce:

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

E 'possibile combinare più scorte da altre risorse di quandl. Vedi la documentazione online.