このページは機械翻訳です。英語版がソースであり、より正確または最新の場合があります。 英語で表示

高度なクエリの構築

finlight.me API を使うと、高度なクエリ構築テクニックによって必要なデータを正確に取得できます。このガイドでは、データ取得プロセスを最適化するための、複雑なフィルタリング、並べ替え、ページネーションの方法を順を追って説明します。

ダッシュボード - API テスターを使って、API にすばやくアクセスし、クエリをテストできます。


言語と多言語カバレッジ

finlight は多くの言語のニュースを索引化しますが、各リクエストは1 つの言語にフィルタリングされます。language パラメータの既定は en なので、設定しなければ英語の記事のみを受信し、他の言語のコンテンツは黙って除外されます。

重要: language の既定は en です。language なしのリクエストは英語のみの結果を返します。他の言語で公開された記事(例:多くの中国語メディア、zh)は、その言語を明示的にリクエストしない限り返されません

仕組み

  • 記事レベル、完全一致。 language は各記事の ISO 639-1 コードを完全一致でフィルタリングします。language=enen の記事のみを返し、dezh などは決して返しません。
  • リクエストごとに 1 言語。 language単一の値を取ります — 配列やカンマ区切りリストはサポートされておらず、「すべての言語」オプションはありません。複数の言語をカバーするには、言語ごとに 1 リクエストを送り、結果をマージしてください。
  • ソースは多言語の場合があります。 単一のソースが複数の言語で公開することがあります。フィルターはソースではなく記事の言語で選択します。あるメディアの非英語記事は、その言語をリクエストしたときにのみ表示されます。

既定(英語のみ)— 等価:

query=Alibaba
query=Alibaba&language=en

中国語のカバレッジ:

query=Alibaba&language=zh

英語 + 中国語をカバー — 2 リクエスト後にマージ:

query=Alibaba&language=en
query=Alibaba&language=zh

ヒント: ISO 639-1 コード(endefrzh など)を使用してください。finlight の既定のソースセットは多くの言語にまたがります — 英語は既定のフィルターにすぎず、カバレッジの限界ではありません。


クエリフィルタリング

query パラメータは、柔軟なキーワードベースのロジックとフィールドレベルの精度を可能にします。tickerexchangeisinsourceopenfigi などの特定のフィールドを対象にできるようになりました。

基本的なキーワードの使い方

単一キーワード:

query=Nvidia stock

完全フレーズ: フレーズを二重引用符で囲むと完全一致を検索します。

query="Elon Musk"

演算子による包含 / 除外

包含 (+) と除外 (-) の強制:

+必須/包含し、- で用語またはフィールド固有の値を除外します。

query=stock +market -google

これは「stock」と「market」を含む記事を返しますが、「google」に言及する記事は除外します。


フィールドレベルのフィルタリング

注: これは、query パラメータ内で直接、特定のフィールドに基づいて結果をフィルタリングできる強力な新機能です。

query パラメータ上でも field:value 構文を使って特定のフィールドを直接クエリできるようになりました。これにより、より精密で複雑なクエリが可能になり、ティッカーシンボル、取引所、ISIN、ソースなどの特定の属性に基づいて結果をフィルタリングできます。

✨ 新機能: sourcetickerexchange フィールドでワイルドカード * を使うと、すべての値に一致します(例:source:*ticker:*exchange:*)。

サポートされるフィールド

  • ticker(ワイルドカード * をサポート)

  • isin

  • title

  • summary

  • content

  • openfigi

  • exchange(ワイルドカード * をサポート)

    • すべての取引所は MIC(市場識別コード)標準です。サポートされるコードは次のとおりです:ASEXBVCABVMFDSMDHSTCXSTCMISXNEOEPFTSROCOXADSXAMMXAMSXASXXBAHXBELXBEYXBKKXBOGXBOMXBOTXBRAXBRUXBSEXBUDXBUEXBULXCASXCNQXCOLXCSEXCYSXDARXDFMXDHAXDUSXETRXFKAXFRAXGHAXHAMXHELXHKGXICEXIDXXISTXJAMXJSEXKARXKAZXKLSXKORXKUWXLIMXLISXLITXLJSXLUSXLUXXMALXMAUXMEXXMILXMSWXMUNXNAIXNAMXNASXNGMXNGOXNSAXNSEXNYSXASEXOSLXPARXPHSXPRAXRISXSAPXSAUXSESXSCAXSGOXSHEXSHGXKRXXSTUXSWXXTAEXTAIXTALXTSEXTSXXTUNXUBSXUGAXWARXWBOXZAGXZIMXSTOOTCMBMEXXDUBXJPXBCXEXPAEXLONXMUSXNZEXCAIXBRV
  • country

    • ISO 3166-1 alpha-2 国コードを使って企業の国でフィルタリングします(例:USGBDEJPCNFRCAAUINBR など)
  • category

    • 記事カテゴリでフィルタリングします。可能な値:marketseconomybusinesspoliticsgeopoliticsregulationtechnologyenergycommoditiescryptohealthclimatesecurity
  • source(ワイルドカード * をサポート)

ワイルドカードのサポート

ワイルドカード * を使うと、クエリにすべてのソース、ティッカー、または取引所を明示的に含められます。これは、広範なカバレッジを確保したい場合や、他のフィルターと組み合わせる場合に特に便利です。

例:

query=source:*

利用可能なすべてのソースの記事を返します。

query=ticker:* country:US

米国企業の任意のティッカーに関する記事を返します。

query=exchange:* -crypto

すべての取引所の記事を返し、暗号資産のコンテンツを除外します。

フィールドフィルターの例

API テスターで試して、仕組みを確認し、独自の複雑なクエリを簡単に作成しましょう。

正確なソースでフィルタリング:

query=source:www.some-source.de

ソースを除外:

query=-source:www.some-source.de

特定のティッカーを必須にして、あるソースを除外:

query=ticker:AAPL -source:www.some-source.de

コンテンツが「earnings」に言及し、取引所が NASDAQ である結果を見つける:

query=content:earnings exchange:nasdaq

特定の国の企業でフィルタリング:

query=country:US

ドイツ企業に関するニュースを見つけ、Schulden を除外:

query=country:DE -Schulden

国とティッカーのフィルタリングを組み合わせる:

query=country:US ticker:NVD

フィールドフィルタリングと一般検索を組み合わせる:

query="quarterly report" source:www.some-source.com -crypto

ブール演算子

注:単語は既定で AND で結合されます。OR や NOT と組み合わせたい場合を除き、明示的に AND を使う必要はありません。

AND / OR / NOT ロジックは完全にサポートされています:

query=stock AND google
query=amazon OR google
query=market AND NOT bitcoin

グループ化には括弧を使用: 高度なフィルタリングのために論理式を組み合わせます。

query=("Elon Musk") AND (twitter OR tesla)

ワイルドカードと組み合わせて強力なクエリを:

query=ticker:* AND (country:US OR country:GB) -crypto
query=source:* exchange:XNAS

💡 上級ユーザー向けのヒント

  • フィールドフィルターは、必須値と除外値に +- をサポートします。
  • ワイルドカード *sourcetickerexchange フィールドで使用して、すべての値に一致させられます。
  • 高度に的を絞ったクエリのために、複数のフィールドとキーワードを組み合わせることができます。
  • ANDORNOT などのブール演算子は大文字・小文字を区別しません
  • 括弧 () は、複雑なクエリで優先順位の制御に役立ちます。
  • 部分一致を避けるために、複数語のフレーズは二重引用符 " で囲んでください。

まとめ - すべてを組み合わせる

例:信頼できるソースからの、暗号資産以外のテスラ(ticker:TSLA)に関するニュースが欲しい?

query=+ticker:TSLA -crypto AND (+source:www.bloomberg.com OR +source:www.reuters.com)

例:Bloomberg からのテスラ(ticker:TSLA)またはアップル(ticker:AAPL)に関するニュースが欲しい?

query=source:www.bloomberg.com AND ticker:TSLA OR source:www.bloomberg.com AND ticker:APPL

例:NASDAQ に上場する米国企業に関するニュースで、暗号資産のコンテンツを除外したい?

query=country:US exchange:XNAS -crypto

例:欧州のテック企業(ドイツ、フランス、または英国)で、決算への言及があるニュースが欲しい?

query=earnings AND (country:DE OR country:FR OR country:GB)

例:すべてのソースから、暗号資産を除いた、ティッカー関連のすべてのニュースが欲しい?

query=ticker:* source:* -crypto

API テスターで試して、仕組みを確認し、独自の複雑なクエリを簡単に作成しましょう。


Raw WebSocket のクエリフィールド

Raw WebSocket は、その簡素化されたデータモデルに合わせたフィールドレベルフィルターのサブセットをサポートします。エンリッチ WebSocket や REST API と異なり、Raw WebSocket はティッカー、取引所、または企業関連のフィールドフィルターをサポートしません。

サポートされるフィールド

  • source - 記事のソースドメインでフィルタリング
  • title - 記事タイトルの内容でフィルタリング
  • summary - 記事要約の内容でフィルタリング

タイトルの内容でフィルタリング:

query=title:Nvidia

タイトルと要約のフィルターを組み合わせる:

query=summary:earnings +title:Tesla

ソースでフィルタリングし、キーワードを除外:

query=source:www.reuters.com -crypto

複数のフィールドフィルターをブール演算子で組み合わせる:

query=title:Apple AND summary:revenue

注: 標準のクエリ演算子(+-ANDORNOT、括弧、二重引用符)はすべて Raw WebSocket のフィールドフィルターで機能します。


ヘルプが必要ですか?

行き詰まったり、質問があったり、改善の余地に気づいたりした場合は、いつでもお気軽にご連絡ください。皆さまからのご連絡をお待ちしており、finlight.me API でのご成功をサポートいたします。