単純なシンボルルックアップサービスを提供するだけの種類のAPIはありますか?つまり、会社名を入力すると、ティッカーシンボルが表示されますか?Google Financeのスクリーンスクレイピングを試しましたが、しばらくするとレートが制限され、CAPTCHAを入力する必要があります。約2000のティッカーシンボルをバッチルックアップしようとしています。何か案は?
11 に答える
次のようにyahooのシンボルルックアップを使用できます。
ここで、 queryは会社名です。
見返りに次のようなものが得られます。
YAHOO.Finance.SymbolSuggest.ssCallback(
{
"ResultSet": {
"Query": "ya",
"Result": [
{
"symbol": "YHOO",
"name": "Yahoo! Inc.",
"exch": "NMS",
"type": "S",
"exchDisp": "NASDAQ"
},
{
"symbol": "AUY",
"name": "Yamana Gold, Inc.",
"exch": "NYQ",
"type": "S",
"exchDisp": "NYSE"
},
{
"symbol": "YZC",
"name": "Yanzhou Coal Mining Co. Ltd.",
"exch": "NYQ",
"type": "S",
"exchDisp": "NYSE"
},
{
"symbol": "YRI.TO",
"name": "YAMANA GOLD INC COM NPV",
"exch": "TOR",
"type": "S",
"exchDisp": "Toronto"
},
{
"symbol": "8046.TW",
"name": "NAN YA PRINTED CIR TWD10",
"exch": "TAI",
"type": "S",
"exchDisp": "Taiwan"
},
{
"symbol": "600319.SS",
"name": "WEIFANG YAXING CHE 'A'CNY1",
"exch": "SHH",
"type": "S",
"exchDisp": "Shanghai"
},
{
"symbol": "1991.HK",
"name": "TA YANG GROUP",
"exch": "HKG",
"type": "S",
"exchDisp": "Hong Kong"
},
{
"symbol": "1303.TW",
"name": "NAN YA PLASTIC TWD10",
"exch": "TAI",
"type": "S",
"exchDisp": "Taiwan"
},
{
"symbol": "0294.HK",
"name": "YANGTZEKIANG",
"exch": "HKG",
"type": "S",
"exchDisp": "Hong Kong"
},
{
"symbol": "YAVY",
"name": "Yadkin Valley Financial Corp.",
"exch": "NMS",
"type": "S",
"exchDisp": "NASDAQ"
}
]
}
}
)
これはJSONであり、操作が非常に簡単です。
静けさ...誰にも言わないで。
Google Financeでは、次のURLを使用して一度に最大100の株価を取得できます。
www.google.com/finance/info?infotype=infoquoteall&q= [ticker1]、[ticker2]、...、[tickern]
例えば:
www.google.com/finance/info?infotype=infoquoteall&q=C,JPM,AIG
誰かがここで利用可能なフィールドを解読しました:
http://qsb-mac.googlecode.com/svn/trunk/Vermilion/Modules/StockQuoter/StockQuoter.py
現在の価格( "l")はリアルタイムであり、遅延はYahooFinanceと同等です。知っておくべきいくつかの癖があります。少数の株式には交換プレフィックスが必要です。たとえば、「BTIM」をクエリすると、「Bad Request」エラーが発生しますが、「AMEX:BTIM」は機能します。いくつかの株は、交換プレフィックスがあっても機能しません。たとえば、「FTWRD」と「NASDAQ:FTWRD」をクエリすると、Google FinanceにこのNASDAQ株の情報がある場合でも、「不正なリクエスト」エラーが生成されます。
「el」フィールドが存在する場合は、現在の市販前または営業時間外の価格を示します。
記号、名前、引用符、およびその他のあらゆる種類のデータを要求するHTTP要求をhttp://finance.yahoo.comに送信できます。データは.CSVとして返されるため、1つのクエリで複数のシンボルをリクエストできます。
したがって、送信する場合:
http://finance.yahoo.com/d/quotes.csv?s=MSFT+F+ATT&f=sn
次のようなものが返されます。
"MSFT","Microsoft Corp"
"F","FORD MOTOR CO"
"ATT","AT&T"
これは、データを要求するために使用されるさまざまなタグを含むYahooデータのダウンロードと呼ばれる記事です。
NASDAQサイトは、各証券取引所(NYSE、AMEX、NASDAQ)のティッカーシンボル用に個別のCSVリストをホストしています。キャプチャを完了して、CSVダンプを取得する必要があります。
サービスにサインアップしたくない場合は、おそらく取引所自体に戻ります。それらのほとんどはまだCAPTCHAされていません...
次のシンボル検索ページ:
- NYSEはhttp://www.nyse.com/interface/html/SymbolLookup.htmlにあります
- NASDAQはhttp://www.nasdaq.com/asp/NasdaqSymLookup2.asp?mode=stockにあります
- ロンドン証券取引所はhttp://www.londonstockexchange.com/en-gb/pricesnews/prices/Trigger/genericsearch.htmにあります
- ASXはhttp://www.asx.com.au/asx/research/codeLookup.doにあります
等...
YQLを使用すれば、心配する必要はありません。これはYahooによるクエリ言語であり、ティッカーの会社名を含むすべての株式データを取得できます。これはRESTAPIであり、XMLまたはJSONを介して結果を返します。私のサイトには完全なチュートリアルとソースコードがあります:http ://www.jarloo.com/yahoo-stock-symbol-lookup/
現在、NASDAQ Webサイトでは、一括リストを含むCSVファイルが公開されています。最初の文字で分割されています。
http://www.nasdaq.com/screening/companies-by-name.aspx?letter=A&render=download
Google FinanceにはAPIがあります。おそらく開発者キーを申請する必要がありますが、少なくとも画面スクレイピングの手間を省くことができます:http ://code.google.com/apis/finance/reference.html
あなたの最善の策は、おそらく他のルックアップサービスの1つ(まだ画面スクレイピング)を使用して、CAPTCHAを必要としないかどうかを確認することです。
最後のものは、どの時点でもCAPTCHAを必要とする可能性が最も低いように見えますが、3つすべてをチェックする価値があります。
YQLを使用する:SQLのような言語でパブリックAPIからデータを取得する: YQLコンソール(外部リンク)
それはあなたに素晴らしいXMLファイルを提供します!
Company Fundamentals APIの「CompanySearch」操作は、次の場所で使用できます:http ://www.mergent.com/servius/