非常に基本的なデータの質問があります。NYSE、NASDAQ、AMEXで取引されているすべての普通株のリストを取得するにはどうすればよいですか。 Telechartで入手できる普通株のおおよそのリストを取得できる必要があります…たとえば、 eoddata ではこのデータを取得できません。 ..

市場幅の指標を計算し、取引された普通株の数が4%増加または減少(ブレイクアウト/ブレイクダウン)したかどうかを調べたい(Cl-Lag(Cl)> 0.04( 4%の内訳)、Cl-Lag(Cl)< -0.04(4%の内訳))、取引された普通株の数は、四半期に25%減少/増加します。

私の最初の問題は、普通株のみ(ETFなし)のシンボルのリストを取得する方法です。

コメント

回答

NASDAQは、この情報をFTP経由で利用できるようにし、更新します。毎晩。 ftp.nasdaqtrader.comに匿名でログインします。ディレクトリSymbolDirectoryを確認します。 nasdaqlisted.txtotherlisted.txtの2つのファイルに気付くでしょう。これらの2つのファイルは、取引可能なシンボルのリスト全体を提供します。 、名前/説明、およびETFであるかどうかの指標。

毎晩取得できるこのリストがあれば、Yahooにクエリを実行して、統計を計算するために必要なデータを取得できます。

更新:これらのファイルとそのフィールドの詳細については、こちらをご覧ください。

コメント

  • とてもいいです!'これらのファイルにアクセスするにはTTRに関数を追加する必要があります。
  • Yahooは許可していますかスクリプトを実行して、サーバーに対して数千のHTMLフェッチを実行しますか?それを試みると、一部のWebサイトがIPを禁止することを知っています。
  • @pacoverflow少なくとも、最大7500のシーケンシャルを許可します。個別のリクエスト。1回のリクエストで最大200シンボルのデータをYahoo!からダウンロードすることもできます。
  • ftp.nasdaqtrader.com/SymbolDirectory ftp.nasdaqtrader.com/SymbolDirectory/nasdaqlisted.txt ftp.nasdaqtrader.com/SymbolDirectory/otherlisted.txt
  • この回答(および質問)に賛成するためだけに、このサイトにアカウントを作成しました。 'この種の情報を確実に見つけるのがどれほど難しいか信じられません。

回答

ソートされたJSON配列のやや醜いbashワンライナー:

echo "[\"$(echo -n "$(echo -en "$(curl -s --compressed "ftp://ftp.nasdaqtrader.com/SymbolDirectory/nasdaqlisted.txt" | tail -n+2 | head -n-1 | perl -pe "s/ //g" | tr "|" " " | awk "{printf $1" "} {print $4}")\n$(curl -s --compressed "ftp://ftp.nasdaqtrader.com/SymbolDirectory/otherlisted.txt" | tail -n+2 | head -n-1 | perl -pe "s/ //g" | tr "|" " " | awk "{printf $1" "} {print $7}")" | grep -v "Y$" | awk "{print $1}" | grep -v "[^a-zA-Z]" | sort)" | perl -pe "s/\n/","/g")\"]"


編集:テスト株を除外

コメント

  • テスト株リストを取得するためのオタク
  • +2がありました。
  • 了解しました:head: illegal line count -- -1 head: illegal line count -- -1 ["-n ",""]
  • @Elimination非-n-1引数の間にスペースを入れる必要があると思いますGNUユーティリティ。私のMacでは、Macportsのghead、gmail、gawkなどを使用して動作させました。

回答

Bloomberg Open Symbology にこのリストがあります。普通株の事前に用意されたファイルを調べます。これには、株式が取引される場所ごとに個別のエントリと一意のIDがあるため、おそらく必要なデータよりも少し多くのデータが含まれます。ただし、おそらくどこでも無料で入手できる最高品質のリストです。

フィルタリングに関しては、ETFは別のファイル(Equity_ETP)に分割されているため、交換でフィルタリングする必要があります。

2017年11月の更新:BSYMは廃止され、その代替ファイルには、私が知る限り、ビルド済みのファイルがありません。

コメント

  • これは素晴らしいことです。世界中にすべての証券があります-'これまでに米国以外のシンボルを取得するのは困難でした。
  • @fantabolous使用方法の例を教えてくださいこれですべてのティッカーを取得しますか? '使用方法がわかりません。
  • @Hamidam例:すべての香港普通株が必要な場合は、上のリンクの左側のパネルから、市場セクター:株式、秒タイプ:普通株、国:香港を選択します。 [送信]をクリックします。次に、右上隅にある" Excel "をクリックします。完了。
  • また、株式の場合、国(取引所ではない)を選択してからAll Exchangesの選択を解除すると'プライマリエクスチェンジのみを提供します。
  • 機能していません…

回答

質問に記載されている3つの取引所のすべての株式は、NASDAQ Webサイト http://www.nasdaq.com/screening/company-list.aspx からダウンロードできます。

「N / A」の業界でこれらのエントリを削除すると、ETFやその他のファンドがリストから削除されるようです。

コメント

  • このリンクは' NASDAQがウェブページに新しいアップデートをプッシュすることを決定したため、機能しなくなりました。
  • @ troymyname00改訂されたURLは old.nasdaq.com/screening/company-list.aspx は機能しているようです。
  • URLが再度更新されました。現在、 nasdaq.com/market-activity/stocks/screener にあります。また、Webリクエストから返される形式がJSONに変更されました。

回答

RパッケージのstockSymbols関数 TTR は、@ bellamyjが言及したnasdaq.comからデータを取得します。また、シンボルをYahooFinanceで受け入れ可能な形式に変換しようとします。

とはいえ、このリストを普通株のみでフィルタリングする方法はわかりません。「n / a」の証券は1275件あります。セクターまたは業界、残り約5000。セクターおよび業界の残りのカテゴリは、リストをさらに絞り込むのに役立つ可能性があります。

コメント

  • この機能の使用に問題があり、実際にはぎこちないだけです。この件について[R-Sig-Finance]に投稿しました。
  • @Owe:と回答しましたR-SIG-Financeで。基本的に、ファイルが変更され、'まだ更新をCRANにプッシュしていません。 R-ForgeバージョンのTTR は機能します。混乱して申し訳ありません。
  • 問題ありません。迅速な返信とこの関数の作成に感謝します。

回答

easy2data財務セクションハングセン企業、nasdaq企業、cac 40企業、S P asia50企業など…

コメント

  • 所属を開示する必要があります。そうでない場合、これは単なる広告(そしてあまり良いものでもありません)。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です